Add Fedora as variant alongside Ubuntu defaults #981
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Automated builds | |
| on: | |
| push: | |
| branches: | |
| - master | |
| paths: | |
| - "images/**" | |
| - ".github/workflows/*" | |
| - "apps/**" | |
| pull_request: | |
| paths: | |
| - "images/**" | |
| - ".github/workflows/*" | |
| - "apps/**" | |
| # schedule: | |
| # - cron: "0 0 * * *" # nightly | |
| jobs: | |
| base: | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| base-app: | |
| needs: [ base ] | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base-app" | |
| base_image: "${{ needs.base.outputs.image_tag }}" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| base-emu: | |
| needs: [ base, base-app ] | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base-emu" | |
| base_image: "${{ needs.base.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-app.outputs.image_tag }}" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| emus: | |
| needs: [ base, base-app, base-emu ] | |
| strategy: | |
| matrix: | |
| image: | |
| - { name: pegasus, platforms: "linux/amd64" } | |
| - { name: es-de, platforms: "linux/amd64" } | |
| fail-fast: false | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "apps" | |
| image_name: "${{ matrix.image.name }}" | |
| base_image: "${{ needs.base.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-emu.outputs.image_tag }}" | |
| platforms: "${{ matrix.image.platforms }}" | |
| secrets: inherit | |
| apps: | |
| needs: [ base, base-app ] | |
| strategy: | |
| matrix: | |
| image: | |
| - { name: pulseaudio, docker_path: images, platforms: "linux/amd64" } | |
| - { name: retroarch, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: firefox, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: steam, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: lutris, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: heroic-games-launcher, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: prismlauncher, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: kodi, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: xfce, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: plex, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: emby, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: youtube, docker_path: apps, platforms: "linux/amd64" } | |
| fail-fast: false | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "${{ matrix.image.docker_path }}" | |
| image_name: "${{ matrix.image.name }}" | |
| base_image: "${{ needs.base.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-app.outputs.image_tag }}" | |
| platforms: "${{ matrix.image.platforms }}" | |
| secrets: inherit | |
| # ========== Fedora variant ========== | |
| base-fedora: | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base" | |
| variant: "fedora" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| base-app-fedora: | |
| needs: [ base-fedora ] | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base-app" | |
| variant: "fedora" | |
| base_image: "${{ needs.base-fedora.outputs.image_tag }}" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| base-emu-fedora: | |
| needs: [ base-fedora, base-app-fedora ] | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "images" | |
| image_name: "base-emu" | |
| variant: "fedora" | |
| base_image: "${{ needs.base-fedora.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-app-fedora.outputs.image_tag }}" | |
| platforms: "linux/amd64" | |
| secrets: inherit | |
| emus-fedora: | |
| needs: [ base-fedora, base-app-fedora, base-emu-fedora ] | |
| strategy: | |
| matrix: | |
| image: | |
| - { name: pegasus, platforms: "linux/amd64" } | |
| - { name: es-de, platforms: "linux/amd64" } | |
| fail-fast: false | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "apps" | |
| image_name: "${{ matrix.image.name }}" | |
| variant: "fedora" | |
| base_image: "${{ needs.base-fedora.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-emu-fedora.outputs.image_tag }}" | |
| platforms: "${{ matrix.image.platforms }}" | |
| secrets: inherit | |
| apps-fedora: | |
| needs: [ base-fedora, base-app-fedora ] | |
| strategy: | |
| matrix: | |
| image: | |
| - { name: pulseaudio, docker_path: images, platforms: "linux/amd64" } | |
| - { name: retroarch, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: firefox, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: steam, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: lutris, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: heroic-games-launcher, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: prismlauncher, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: kodi, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: xfce, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: plex, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: emby, docker_path: apps, platforms: "linux/amd64" } | |
| - { name: youtube, docker_path: apps, platforms: "linux/amd64" } | |
| fail-fast: false | |
| uses: ./.github/workflows/docker-build-and-publish.yml | |
| with: | |
| docker_path: "${{ matrix.image.docker_path }}" | |
| image_name: "${{ matrix.image.name }}" | |
| variant: "fedora" | |
| base_image: "${{ needs.base-fedora.outputs.image_tag }}" | |
| base_app_image: "${{ needs.base-app-fedora.outputs.image_tag }}" | |
| platforms: "${{ matrix.image.platforms }}" | |
| secrets: inherit | |