chore: fix search for 'no digests left, finished' in nightly job #8
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: "Running tests" | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: [main] | |
release: | |
types: | |
- published | |
permissions: read-all | |
jobs: | |
test-run-minimal: | |
name: Running zot without extensions tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install go | |
uses: actions/setup-go@v5 | |
with: | |
cache: false | |
go-version: 1.23.x | |
- name: Cache go dependencies | |
id: cache-go-dependencies | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/go/pkg/mod | |
key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go-mod- | |
- name: Install go dependencies | |
if: steps.cache-go-dependencies.outputs.cache-hit != 'true' | |
run: | | |
cd $GITHUB_WORKSPACE | |
go mod download | |
- uses: ./.github/actions/setup-localstack | |
- name: run zot minimal tests | |
run: | | |
cd $GITHUB_WORKSPACE | |
make test-minimal | |
env: | |
S3MOCK_ENDPOINT: localhost:4566 | |
DYNAMODBMOCK_ENDPOINT: http://localhost:4566 | |
AWS_ACCESS_KEY_ID: fake | |
AWS_SECRET_ACCESS_KEY: fake | |
- name: upload coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-minimal | |
path: coverage-minimal.txt | |
- uses: ./.github/actions/teardown-localstack | |
test-run-extensions: | |
name: Run zot with extensions tests | |
runs-on: ubuntu-latest-16-cores | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
cache: false | |
go-version: 1.23.x | |
- name: Cache go dependencies | |
id: cache-go-dependencies | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/go/pkg/mod | |
key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go-mod- | |
- name: Install go dependencies | |
if: steps.cache-go-dependencies.outputs.cache-hit != 'true' | |
run: | | |
cd $GITHUB_WORKSPACE | |
go mod download | |
- uses: ./.github/actions/setup-localstack | |
- name: run zot extended tests | |
run: | | |
cd $GITHUB_WORKSPACE | |
make test-extended | |
env: | |
S3MOCK_ENDPOINT: localhost:4566 | |
DYNAMODBMOCK_ENDPOINT: http://localhost:4566 | |
AWS_ACCESS_KEY_ID: fake | |
AWS_SECRET_ACCESS_KEY: fake | |
- name: upload coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-extended | |
path: coverage-extended.txt | |
- uses: ./.github/actions/teardown-localstack | |
test-run-devmode: | |
name: Running privileged tests on Linux | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
cache: false | |
go-version: 1.23.x | |
- name: Cache go dependencies | |
id: cache-go-dependencies | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/go/pkg/mod | |
key: ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go-mod- | |
- name: Install go dependencies | |
if: steps.cache-go-dependencies.outputs.cache-hit != 'true' | |
run: | | |
cd $GITHUB_WORKSPACE | |
go mod download | |
- name: run zot development-mode unit tests (possibly using failure injection) | |
run: make test-devmode | |
- name: run zot privileged tests | |
run: sudo env "PATH=$PATH" make privileged-test | |
- name: upload coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-devmode | |
path: coverage-dev-*.txt | |
test-coverage: | |
name: Collect all test coverage | |
runs-on: ubuntu-latest | |
if: always() | |
needs: [test-run-minimal,test-run-extensions,test-run-devmode] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
cache: false | |
go-version: 1.23.x | |
- name: download all workflow coverage files | |
uses: actions/download-artifact@v4 | |
- name: merge code coverage | |
run: | | |
cd $GITHUB_WORKSPACE | |
cp coverage-minimal/* . | |
cp coverage-extended/* . | |
cp coverage-devmode/* . | |
make covhtml | |
- name: upload code coverage | |
uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |