CLOUD-727: pin envtest version for unit tests #7159
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: reviewdog | |
| permissions: | |
| contents: read | |
| on: [pull_request] | |
| jobs: | |
| golangci-lint: | |
| name: runner / suggester / golangci-lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: golangci-lint | |
| uses: golangci/golangci-lint-action@v9 | |
| with: | |
| version: latest | |
| only-new-issues: true | |
| args: --timeout 5m | |
| gofmt: | |
| name: runner / suggester / gofmt | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - run: gofmt -w -s $(find . -not -path "*/vendor/*" -name "*.go") | |
| - uses: reviewdog/action-suggester@v1.24.0 | |
| with: | |
| tool_name: gofmt | |
| goimports-reviser: | |
| name: runner / suggester / goimports-reviser | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| go-version: '^1.26' | |
| - run: go install -v github.com/incu6us/goimports-reviser/v3@latest | |
| - run: $(go env GOPATH)/bin/goimports-reviser -imports-order "std,general,company,project" -company-prefixes "github.com/percona" ./... | |
| - uses: reviewdog/action-suggester@v1.24.0 | |
| with: | |
| tool_name: goimports-reviser | |
| shfmt: | |
| name: runner / suggester / shfmt | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| go-version: '^1.26' | |
| - run: go install mvdan.cc/sh/v3/cmd/shfmt@latest | |
| - run: $(go env GOPATH)/bin/shfmt -f . | grep -v 'vendor' | xargs $(go env GOPATH)/bin/shfmt -bn -ci -s -w | |
| - name: suggester / shfmt | |
| uses: reviewdog/action-suggester@v1.24.0 | |
| with: | |
| tool_name: shfmt | |
| shellcheck: | |
| if: github.event_name == 'pull_request' | |
| name: runner / shellcheck | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: reviewdog/action-shellcheck@v1 | |
| with: | |
| github_token: ${{ secrets.github_token }} | |
| reporter: github-pr-check | |
| exclude: "./vendor/*" | |
| misspell: | |
| name: runner / misspell | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: reviewdog/action-misspell@v1 | |
| with: | |
| github_token: ${{ secrets.github_token }} | |
| locale: "US" | |
| reporter: github-pr-check | |
| exclude: "./vendor/*" | |
| alex: | |
| name: runner / alex | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: reviewdog/action-alex@v1 | |
| with: | |
| github_token: ${{ secrets.github_token }} | |
| reporter: github-pr-review | |
| level: info | |
| exclude: "./vendor/*" | |
| manifests: | |
| name: runner / manifests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: check on release branch | |
| if: ${{ contains(github.base_ref, 'release-') }} | |
| run: | | |
| make generate manifests VERSION="$(grep -Eo "[0-9]+\.[0-9]+\.[0-9]+" pkg/version/version.txt)" IMAGE_TAG_BASE="percona/percona-server-mongodb-operator" | |
| git diff --exit-code | |
| - name: check on non release branches | |
| if: ${{ ! contains(github.base_ref, 'release-') }} | |
| run: | | |
| make generate manifests VERSION=main | |
| git diff --exit-code | |
| e2e-release-versions-images: | |
| name: e2e-tests release_versions image availability | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Check if e2e-tests/release_versions changed | |
| id: changed | |
| run: | | |
| git fetch origin ${{ github.base_ref }} | |
| if git diff --name-only origin/${{ github.base_ref }}...HEAD -- e2e-tests/release_versions | grep -q .; then | |
| echo "changed=true" >> "$GITHUB_OUTPUT" | |
| else | |
| echo "changed=false" >> "$GITHUB_OUTPUT" | |
| fi | |
| - name: Verify release_versions images exist (docker manifest inspect) | |
| if: steps.changed.outputs.changed == 'true' | |
| run: | | |
| set -e | |
| # All IMAGE_*=value lines, exclude operator image (percona/percona-server-mongodb-operator) | |
| images=$(grep -E '^IMAGE_[^=]+=' e2e-tests/release_versions | cut -d= -f2 | grep -v '^$' | grep -v 'percona/percona-server-mongodb-operator' | sort -u) | |
| if [ -z "$images" ]; then | |
| echo "No non-operator images found in e2e-tests/release_versions" | |
| exit 0 | |
| fi | |
| failed="" | |
| for img in $images; do | |
| echo "Checking image $img" | |
| if ! docker manifest inspect "$img"; then | |
| echo "::error::Image not found or inaccessible: $img" | |
| failed="${failed} ${img}" | |
| fi | |
| done | |
| if [ -n "$failed" ]; then | |
| echo "::error::The following images failed docker manifest inspect:$failed" | |
| exit 1 | |
| fi | |
| echo "All images are available." |