-
Notifications
You must be signed in to change notification settings - Fork 106
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Alexei Dodon <[email protected]>
- Loading branch information
Showing
10 changed files
with
274 additions
and
104 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
name: 'Check disk space' | ||
description: 'Show available disk space' | ||
runs: | ||
using: "composite" | ||
steps: | ||
- shell: bash | ||
if: always() | ||
run: | | ||
cd $GITHUB_WORKSPACE | ||
set -x | ||
df -h | ||
sudo ls -lRh /tmp/* || true | ||
sudo du -sh /tmp || true | ||
sudo du -sh /tmp/* || true | ||
sudo find /tmp/ -size +5M | sudo xargs ls -lh | ||
du -sh ./* || true | ||
find ./ -size +5M | xargs ls -lh | ||
sudo du -sh /var/ | ||
sudo du -sh /var/lib/docker/ | ||
du -sh /home/runner/work/ | ||
set +x |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
name: 'Setup localstack service' | ||
description: 'Download & run localstack container' | ||
runs: | ||
using: "composite" | ||
steps: | ||
- shell: bash | ||
run: | | ||
pip install localstack # Install LocalStack cli | ||
docker pull localstack/localstack:1.3 # Make sure to pull the latest version of the image | ||
localstack start -d # Start LocalStack in the background | ||
echo "Waiting for LocalStack startup..." # Wait 30 seconds for the LocalStack container | ||
localstack wait -t 30 # to become ready before timing out | ||
echo "Startup complete" | ||
aws --endpoint-url=http://localhost:4566 s3api create-bucket --bucket zot-storage --region us-east-2 --create-bucket-configuration="{\"LocationConstraint\": \"us-east-2\"}" | ||
aws dynamodb --endpoint-url http://localhost:4566 --region "us-east-2" create-table --table-name BlobTable --attribute-definitions AttributeName=Digest,AttributeType=S --key-schema AttributeName=Digest,KeyType=HASH --provisioned-throughput ReadCapacityUnits=10,WriteCapacityUnits=5 | ||
env: | ||
AWS_ACCESS_KEY_ID: fake | ||
AWS_SECRET_ACCESS_KEY: fake |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
name: 'Stop localstack' | ||
description: 'Stop localstack container' | ||
runs: | ||
using: "composite" | ||
steps: | ||
- shell: bash | ||
if: always() | ||
run: localstack stop |
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -56,9 +56,6 @@ jobs: | |
cd $GITHUB_WORKSPACE | ||
go install github.com/swaggo/swag/cmd/[email protected] | ||
go mod download | ||
go install github.com/wadey/gocovmerge@latest | ||
go get -u github.com/swaggo/swag/cmd/swag | ||
go mod download | ||
# Initializes the CodeQL tools for scanning. | ||
- name: Initialize CodeQL | ||
|
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,165 @@ | ||
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-22.04 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: ./.github/actions/clean-runner | ||
- name: Install go | ||
uses: actions/setup-go@v4 | ||
with: | ||
cache: false | ||
go-version: 1.20.x | ||
- name: Cache go dependencies | ||
id: cache-go-dependencies | ||
uses: actions/cache@v3 | ||
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 | ||
- uses: ./.github/actions/check-diskspace | ||
- 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@v3 | ||
with: | ||
name: coverage-minimal | ||
path: coverage-minimal.txt | ||
- uses: ./.github/actions/check-diskspace | ||
- uses: ./.github/actions/teardown-localstack | ||
test-run-extensions: | ||
name: run zot with extensions tests | ||
runs-on: ubuntu-22.04 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: ./.github/actions/clean-runner | ||
- uses: actions/setup-go@v4 | ||
with: | ||
cache: false | ||
go-version: 1.20.x | ||
- name: Cache go dependencies | ||
id: cache-go-dependencies | ||
uses: actions/cache@v3 | ||
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 | ||
- uses: ./.github/actions/check-diskspace | ||
- 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 | ||
BUILD_LABELS: imagetrust,lint,metrics,mgmt,profile,scrub,search,sync,ui,userprefs | ||
- name: upload coverage | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: coverage-extended | ||
path: coverage-extended.txt | ||
- uses: ./.github/actions/check-diskspace | ||
- uses: ./.github/actions/teardown-localstack | ||
test-run-devmode: | ||
name: Running privileged tests on Linux | ||
runs-on: ubuntu-22.04 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: ./.github/actions/clean-runner | ||
- uses: actions/setup-go@v4 | ||
with: | ||
cache: false | ||
go-version: 1.20.x | ||
- name: Cache go dependencies | ||
id: cache-go-dependencies | ||
uses: actions/cache@v3 | ||
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/check-diskspace | ||
- name: run zot development-mode unit tests (possibly using failure injection) | ||
run: make test-devmode | ||
- name: upload coverage | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: coverage-devmode | ||
path: coverage-dev-minimal.txt coverage-dev-extended.txt | ||
- name: upload coverage | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: coverage-devmode | ||
path: coverage-dev-extended.txt | ||
- name: run zot privileged tests | ||
run: sudo env "PATH=$PATH" make privileged-test | ||
- uses: ./.github/actions/check-diskspace | ||
test-coverage: | ||
name: generate test coverage | ||
runs-on: ubuntu-22.04 | ||
if: always() | ||
needs: [test-run-minimal,test-run-extensions,test-run-devmode] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-go@v4 | ||
with: | ||
cache: false | ||
go-version: 1.20.x | ||
- name: download all workflow coverage files | ||
uses: actions/download-artifact@v3 | ||
- 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@v3 | ||
with: | ||
token: ${{ secrets.CODECOV_TOKEN }} | ||
|
Oops, something went wrong.