--- name: Go test on: [push] jobs: run-go-vet: runs-on: imgbuilder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Run go vet run: go vet check-swagger-up-to-date: runs-on: imgbuilder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Run make swagger run: make swagger - name: Check diff run: | if ! git diff --exit-code; then echo "ERROR: swagger introduced uncommitted changes!" echo "Please commit generated files." git status git diff exit 1 else echo "No uncommitted changes detected. OpenAPI is up-to-date." fi run-go-test: needs: - run-go-vet - check-swagger-up-to-date runs-on: imgbuilder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Run docker compose run: make docker-quiet - name: Run go test run: make test cleanup-go-test: needs: run-go-test runs-on: imgbuilder if: always() steps: - name: Checkout repository uses: actions/checkout@v4 - name: Run make docker-clean run: make docker-clean release-image: needs: - run-go-test runs-on: imgbuilder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Build binary run: make backend - name: Build and push image uses: https://gitea.konchin.com/action/docker@main with: registry-certificate: ${{ vars.ROOTCA }} username: ${{ secrets.REGISTRY_USERNAME }} password: ${{ secrets.REGISTRY_PASSWORD }}