--- # yamllint disable truthy name: GitHub Docker Registry Build on: schedule: - cron: "41 1 * * *" push: branches: ["main"] workflow_dispatch: env: # Use docker.io for Docker Hub if empty REGISTRY: ghcr.io # github.repository as / IMAGE_NAME: ${{ github.repository }} jobs: BuildAndRelease: runs-on: ubuntu-latest continue-on-error: true permissions: contents: read packages: write strategy: fail-fast: false matrix: php: [php74, php80, php81, php82] arch: ['linux/amd64', 'linux/arm64'] steps: - uses: actions/checkout@v3 - name: Log in to the Container registry uses: docker/login-action@v2 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Build and Publish (${{ matrix.php }} / ${{ matrix.arch }}) uses: elgohr/Publish-Docker-Github-Action@v5 with: name: ${{ env.IMAGE_NAME }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} registry: ${{ env.REGISTRY }} tags: ${{ matrix.php }} dockerfile: Dockerfile-${{ matrix.php }} default_branch: main platforms: ${{ matrix.arch }} cache: ${{ github.event_name != 'schedule' }}