ci: add lint pipeline using golangci lint #683
Workflow file for this run
This file contains 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: Run tests | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: "1.21" | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/go/pkg/mod | |
~/.cache/go-build | |
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go- | |
- name: Run tests | |
run: | | |
go vet ./... | |
go test -v -race -coverprofile=coverage.txt $(go list ./... | grep -v e2e) | |
- name: Upload coverage reports to Codecov | |
uses: codecov/codecov-action@v3 | |
deploy-manifests: | |
name: Check deployment manifests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: yokawasa/[email protected] | |
with: | |
setup-tools: | | |
helm | |
helm: v3.11.2 | |
- uses: actions/checkout@v4 | |
- name: Generate manifests from helm chart | |
run: hack/update-deployment-yamls.sh | |
- name: Check for diff | |
run: git diff --exit-code -- deploy/ | |
- name: Show warning | |
if: ${{ failure() }} | |
run: echo "::error title=Deployment Manifests outdated::Please run hack/update-deployment-yamls.sh and commit the changes to deploy/" | |
helm-chart: | |
name: Verify Helm Chart | |
runs-on: ubuntu-latest | |
steps: | |
- uses: yokawasa/[email protected] | |
with: | |
setup-tools: | | |
helm | |
helm: v3.11.2 | |
- uses: actions/checkout@v4 | |
# This step also verifies that the chart builds | |
- name: Verify Snapshots | |
run: | | |
hack/update-helm-snapshots.sh | |
git diff --exit-code -- deploy/ | |
- name: Show warning | |
if: ${{ failure() }} | |
run: echo "::error title=Helm Snapshots outdated::Please run hack/update-helm-snapshots.sh and commit the changes to chart/.snapshots/" | |
- name: Helm Lint | |
run: helm lint chart/ |