name: Container Publish on: push: tags: - '*' schedule: - cron: "0 12 * * *" jobs: build-image: runs-on: ubuntu-latest container: image: catthehacker/ubuntu:act-latest steps: - uses: actions/checkout@v4 with: submodules: true # Fetch Hugo themes (true OR recursive) fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker BuildX uses: docker/setup-buildx-action@v3 - name: Login to registry uses: docker/login-action@v3 with: registry: git.libreschool.org username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.REGISTRY_TOKEN }} - name: Build and publish uses: docker/build-push-action@v4 with: context: . file: ./Dockerfile platforms: | linux/amd64 # linux/arm64 load: true tags: git.libreschool.org/bglug/bglug.it:latest - name: Run Trivy vulnerability scanner id: scan uses: aquasecurity/trivy-action@master with: image-ref: "git.libreschool.org/bglug/bglug.it:latest" format: "json" output: "trivy-results.json" - name: check output run: if [ $(jq '.Results[0].Vulnerabilities|length' trivy-results.json) -ne "0" ] ; then exit 1 ; fi - name: Build and publish uses: docker/build-push-action@v4 with: context: . file: ./Dockerfile platforms: | linux/amd64 # linux/arm64 push: true tags: git.libreschool.org/bglug/bglug.it:latest