name: CI image # Builds the Arch image that ci.yml runs in, with the build dependencies preinstalled. # Rebuilt weekly to pick up Arch updates. on: push: branches: [main] paths: ['.gitea/ci-image/**', '.gitea/workflows/ci-image.yml'] schedule: - cron: '0 3 * * 1' workflow_dispatch: permissions: contents: read packages: write jobs: image: # The build runs on the runner's own Docker daemon, so the amd64 runner has the new # image locally right away. It does not re-pull tags it already has. runs-on: amd64 env: IMAGE: git.trivk.dev/tri/qtpotato-ci:latest steps: - uses: actions/checkout@v4 - name: Build run: docker build --pull -t "$IMAGE" .gitea/ci-image - name: Push run: | echo "${{ secrets.GITHUB_TOKEN }}" | docker login git.trivk.dev -u "${{ github.actor }}" --password-stdin docker push "$IMAGE"