name: build games on: workflow_dispatch: schedule: - cron: "0 0 * * 1" push: branches: - master paths: - games/** permissions: packages: write jobs: pushAMD64: name: "games_AMD64:${{ matrix.game }}" runs-on: ubuntu-latest strategy: fail-fast: false matrix: game: - altv - arma3 - dayz - mohaa - rust - samp - source - valheim - thebattleforwesnoth steps: - uses: actions/checkout@v4 - uses: docker/setup-buildx-action@v3 with: buildkitd-flags: --debug - id: lower-repo name: Repository to lowercase run: | echo "repository=${GITHUB_REPOSITORY_OWNER@L}" >> $GITHUB_OUTPUT - uses: docker/login-action@v3 with: registry: ghcr.io username: b3ni15 password: ${{ secrets.REGISTRY_TOKEN || secrets.GITHUB_TOKEN }} - uses: docker/build-push-action@v6 with: context: ./games/${{ matrix.game }} file: ./games/${{ matrix.game }}/Dockerfile platforms: linux/amd64 push: true tags: | ghcr.io/b3ni15/games:${{ matrix.game }} ${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/b3ni15/games:{0}', matrix.game) || '' }} pushAll: name: "games_All:${{ matrix.game }}" runs-on: ubuntu-latest strategy: fail-fast: false matrix: game: - minetest - mta steps: - uses: actions/checkout@v4 - name: Set up QEMU uses: docker/setup-qemu-action@v3 with: platforms: arm64,amd64 - uses: docker/setup-buildx-action@v3 with: buildkitd-flags: --debug - id: lower-repo name: Repository to lowercase run: | echo "repository=${GITHUB_REPOSITORY_OWNER@L}" >> $GITHUB_OUTPUT - uses: docker/login-action@v3 with: registry: ghcr.io username: b3ni15 password: ${{ secrets.REGISTRY_TOKEN || secrets.GITHUB_TOKEN }} - uses: docker/build-push-action@v6 with: context: ./games/${{ matrix.game }} file: ./games/${{ matrix.game }}/Dockerfile platforms: linux/amd64,linux/arm64 push: true tags: | ghcr.io/b3ni15/games:${{ matrix.game }} ${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/b3ni15/games:{0}', matrix.game) || '' }}