Tests #757
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: Tests | |
on: | |
push: | |
branches: [ 'main' ] | |
pull_request: | |
branches: [ '*' ] | |
schedule: | |
- cron: "15 1 * * *" | |
jobs: | |
unit-tests: | |
name: Unit Tests | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- uses: actions/checkout@v4 | |
- name: Run make test-unit | |
run: | | |
make test-unit | |
- name: Upload unit-test coverage reports to CodeCov # more at https://github.com/codecov/codecov-action | |
uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
flags: unit | |
fail_ci_if_error: false | |
verbose: true | |
integration-tests: | |
name: Integration Tests | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Create k8s Kind Cluster | |
uses: helm/[email protected] | |
with: | |
version: v0.22.0 | |
config: utils/kind-cluster.yaml | |
cluster_name: limitador-local | |
wait: 120s | |
- name: Check cluster info | |
run: | | |
kubectl cluster-info dump | |
- name: Run integration tests | |
run: | | |
make test-integration | |
- name: Upload integration-test coverage reports to CodeCov # more at https://github.com/codecov/codecov-action | |
uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
flags: integration | |
fail_ci_if_error: false | |
verbose: true | |
verify-manifests: | |
name: Verify manifests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- uses: actions/checkout@v4 | |
- name: Verify manifests | |
run: make verify-manifests | |
verify-bundle: | |
name: Verify bundle | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Run make verify-bundle | |
run: | | |
make verify-bundle | |
verify-fmt: | |
name: Verify fmt | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Run make verify-fmt | |
run: | | |
make verify-fmt | |
verify-tidy: | |
name: Verify tidy | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Run go mod tidy | |
run: | | |
go mod tidy | |
- name: Run make verify-tidy | |
run: | | |
make verify-tidy | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Go Lint | |
run: make run-lint | |
verify-generate: | |
name: Verify generate | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Verify generate command | |
run: | | |
make verify-generate | |
verify-go-mod: | |
name: Verify go.mod | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.21.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.21.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Verify generate command | |
run: | | |
make verify-go-mod | |
verify-helm-charts: | |
name: Verify helm charts | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up Go 1.22.x | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.22.x | |
id: go | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Run make verify-helm-charts | |
run: | | |
make verify-helm-charts |