Repository navigation
chore(repo): sync develop into next #7307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: next
Are you sure you want to change the base?
Changes from all commits
da27a34
e125d0f
25ee860
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| 1.4.2 | ||
| 1.4.4 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,137 @@ | ||
| name: CI | ||
|
|
||
| on: | ||
| pull_request: | ||
| paths: | ||
| - apps/cli-go/** | ||
| merge_group: | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟠 MAJOR · The merge resolution restores Go CI on next after its Go module and toolchain configuration were removed. Its unfiltered merge_group trigger runs jobs that reference the missing module, producing failed checks and potentially blocking a required merge-queue check. Evidence: sync-resolution.diff:4-5 records the modify/delete conflict retaining this workflow. .github/workflows/cli-go-ci.yml:7 enables merge_group without filters; lines 28 and 119 require apps/cli-go/go.mod; lines 99-100 request go and golangci-lint; lines 105-107 disable linter installation and select apps/cli-go; line 137 defaults shell steps to that directory. The checked-out apps/ directory contains no cli-go, and mise.toml:3-5 configures only jactionlint and shellcheck. Suggested fix: Preserve next's deletion of .github/workflows/cli-go-ci.yml when resolving the modify/delete conflict. |
||
| push: | ||
| branches: | ||
| - develop | ||
| paths: | ||
| - apps/cli-go/** | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| test: | ||
| name: Test | ||
| runs-on: blacksmith-8vcpu-ubuntu-2404 | ||
| steps: | ||
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 | ||
| with: | ||
| go-version-file: apps/cli-go/go.mod | ||
| cache: true | ||
|
|
||
| # Required by: internal/utils/credentials/keyring_test.go | ||
| - uses: t1m0thyj/unlock-keyring@cbcf205c879ebd86add70bab3a6abfcce59a5cae # v1.2.0 | ||
| - run: | | ||
| set -o pipefail | ||
| pkgs=$(go list ./pkg/... | grep -Ev 'pkg/api' | paste -sd ',' -) | ||
| go tool gotestsum -- -race -v -count=1 ./... \ | ||
| -coverpkg="./cmd/...,./internal/...,${pkgs}" -coverprofile=coverage.out | ||
|
|
||
| # internal/start (docker-compose/v2, buildx, moby/buildkit, k8s client-go, | ||
| # aws-sdk-go-v2, notary, secret-detector) was deleted outright as | ||
| # unreachable (CLI-1966) -- this guards against silently reintroducing | ||
| # that dependency tree via some other package, since nothing else checks | ||
| # the shipped binary's size on every change. | ||
| - name: Verify the heavy orchestration dependency tree stays out of the module | ||
| run: | | ||
| set -euo pipefail | ||
| go list -deps . > /tmp/deps.txt | ||
| ! grep -Eq \ | ||
| 'docker/compose|docker/buildx|moby/buildkit|k8s\.io/client-go|aws-sdk-go-v2' \ | ||
| /tmp/deps.txt | ||
|
|
||
| - name: Check existing coverage cache | ||
| id: coverage-cache | ||
| uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | ||
| with: | ||
| path: apps/cli-go/coverage.out | ||
| key: cli-go-coverage-${{ github.run_id }}-v1 | ||
| lookup-only: true | ||
|
|
||
| - name: Save coverage cache | ||
| if: steps.coverage-cache.outputs.cache-hit != 'true' | ||
| uses: actions/cache/save@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | ||
| with: | ||
| path: apps/cli-go/coverage.out | ||
| key: cli-go-coverage-${{ github.run_id }}-v1 | ||
|
|
||
| coverage: | ||
| name: Coverage | ||
| needs: | ||
| - test | ||
| runs-on: blacksmith-8vcpu-ubuntu-2404 | ||
| steps: | ||
| - name: Restore coverage cache | ||
| uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | ||
| with: | ||
| path: apps/cli-go/coverage.out | ||
| key: cli-go-coverage-${{ github.run_id }}-v1 | ||
| fail-on-cache-miss: true | ||
| - name: Move coverage report | ||
| run: cp apps/cli-go/coverage.out coverage.out | ||
| working-directory: . | ||
| - uses: coverallsapp/github-action@8d6379e14d29928660c4ba802d8e85393440b329 # v2.3.8 | ||
| with: | ||
| file: coverage.out | ||
| format: golang | ||
|
|
||
| lint: | ||
| name: Lint | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: jdx/mise-action@8418fedb1110381a0d3ba51a7a415d7c1b884550 # v5.2.2 | ||
| with: | ||
| version: 2026.10.17 | ||
| install_args: >- | ||
| go | ||
| golangci-lint | ||
|
|
||
| - uses: golangci/golangci-lint-action@ba0d7d2ec06a0ea1cb5fa41b2e4a3ab91d21278a # v9.3.0 | ||
| with: | ||
| args: --timeout 5m --verbose | ||
| install-mode: none | ||
| only-new-issues: true | ||
| working-directory: apps/cli-go | ||
|
|
||
| codegen: | ||
| name: Codegen | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 | ||
| with: | ||
| go-version-file: apps/cli-go/go.mod | ||
| cache: true | ||
|
|
||
| # Regenerates from the committed api/v1-openapi.yaml snapshot, so this | ||
| # check is hermetic: it fails only when a pull request leaves pkg/api out | ||
| # of sync with the snapshot it was generated from. It deliberately does | ||
| # not compare against the live upstream spec -- doing so made unrelated | ||
| # pull requests fail together whenever staging drifted ahead of the | ||
| # committed snapshot. That drift is the API Sync workflow's job. | ||
| - run: go generate | ||
| - run: | | ||
| if ! git diff --ignore-space-at-eol --exit-code --quiet pkg; then | ||
| echo "Detected uncommitted changes after codegen. See status below:" | ||
| git diff | ||
| exit 1 | ||
| fi | ||
| defaults: | ||
| run: | ||
| working-directory: apps/cli-go | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same comment as above |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| name: Tag pkg | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| inputs: | ||
| version: | ||
| description: "pkg version to tag (e.g. v1.2.2)" | ||
| required: true | ||
| type: string | ||
|
|
||
| permissions: {} | ||
|
|
||
| jobs: | ||
| tag: | ||
| name: Create pkg tag | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: write | ||
| steps: | ||
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | ||
| with: | ||
| ref: develop | ||
| fetch-depth: 0 | ||
| persist-credentials: false | ||
|
|
||
| - name: Create and push pkg tag | ||
| run: | | ||
| VERSION="${INPUTS_VERSION}" | ||
| if ! [[ "$VERSION" =~ ^v(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)$ ]]; then | ||
| echo "Error: version '$VERSION' does not match semver format (e.g. v1.2.2)" | ||
| exit 1 | ||
| fi | ||
| TAG="pkg/$VERSION" | ||
| if git rev-parse "$TAG" >/dev/null 2>&1; then | ||
| echo "Error: tag '$TAG' already exists" | ||
| exit 1 | ||
| fi | ||
| git tag "$TAG" | ||
| git push origin "$TAG" | ||
| env: | ||
| INPUTS_VERSION: ${{ inputs.version }} | ||
| defaults: | ||
| run: | ||
| working-directory: apps/cli-go |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧐 this file should be deleted — looks like this comment correctly determined that but i'm not sure how to proceed. do we delete these files ourselves or is there something we should be doing so the releaser bot handles it?