From 56109df85f4b39a93b778b3ece7885fe1b2d812a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20=C5=A0ediv=C3=BD?= Date: Sun, 15 Jan 2023 20:16:54 +0100 Subject: [PATCH] WIP. --- .github/workflows/tags-arm.yml | 1 + .github/workflows/tags-intel.yml | 109 ++++++++++++++++++++++++++++++- .github/workflows/tags.yml | 39 ++++------- 3 files changed, 119 insertions(+), 30 deletions(-) diff --git a/.github/workflows/tags-arm.yml b/.github/workflows/tags-arm.yml index ce4f1978..17f97cd2 100644 --- a/.github/workflows/tags-arm.yml +++ b/.github/workflows/tags-arm.yml @@ -117,6 +117,7 @@ jobs: uses: docker/build-push-action@v2 with: context: .docker/${{ env.TAG_NAME }} + file: .docker/${{ env.TAG_NAME }}/${{ env.DOCKERFILE }} platforms: ${{ env.PLATFORMS }} push: true tags: ${{ steps.meta.outputs.tags }} diff --git a/.github/workflows/tags-intel.yml b/.github/workflows/tags-intel.yml index ba92569d..4961b59d 100644 --- a/.github/workflows/tags-intel.yml +++ b/.github/workflows/tags-intel.yml @@ -18,7 +18,112 @@ env: jobs: build-base: - uses: ./.github/workflows/tags.yml@build-base + runs-on: ubuntu-latest + # + # do not run on forks + # + if: github.repository_owner == 'm1k1o' + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Extract metadata (tags, labels) for Docker + uses: docker/metadata-action@v3 + id: meta + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}/${{ env.TAG_PREFIX }}base + tags: | + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=sha,format=long + - + name: Log in to the Container registry + uses: docker/login-action@v1 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GHCR_ACCESS_TOKEN }} + - + name: Build and push + uses: docker/build-push-action@v2 + with: + context: ./ + file: .docker/base/${{ env.BASE_DOCKERFILE }} + platforms: ${{ env.PLATFORMS }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} build: - uses: ./.github/workflows/tags.yml@build + runs-on: ubuntu-latest + # + # do not run on forks + # + if: github.repository_owner == 'm1k1o' + needs: [ build-base ] + strategy: + # Will build all images even if some fail. + matrix: + include: + - tag: firefox + #- tag: chromium + #- tag: google-chrome + #- tag: ungoogled-chromium + #- tag: microsoft-edge + #- tag: brave + #- tag: vivaldi + #- tag: opera + #- tag: tor-browser + #- tag: remmina + #- tag: vlc + #- tag: xfce + env: + TAG_NAME: ${{ matrix.tag }} + DOCKERFILE: ${{ matrix.dockerfile }} + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Extract metadata (tags, labels) for Docker + uses: docker/metadata-action@v3 + id: meta + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}/${{ env.TAG_PREFIX }}${{ env.TAG_NAME }} + tags: | + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + type=sha,format=long + - + name: Log in to the Container registry + uses: docker/login-action@v1 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GHCR_ACCESS_TOKEN }} + - + name: Build and push + uses: docker/build-push-action@v2 + with: + context: .docker/${{ env.TAG_NAME }} + platforms: ${{ env.PLATFORMS }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + build-args: | + BASE_IMAGE=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}/${{ env.TAG_PREFIX }}base:sha-${{ github.sha }} diff --git a/.github/workflows/tags.yml b/.github/workflows/tags.yml index 2d6f860c..5f1620ac 100644 --- a/.github/workflows/tags.yml +++ b/.github/workflows/tags.yml @@ -4,10 +4,6 @@ on: push: tags: - 'v*' - # Only for testing. - pull_request: - branches: - - 'master' env: REGISTRY: ghcr.io @@ -74,32 +70,19 @@ jobs: matrix: include: - tag: firefox - dockerfile: Dockerfile - #- tag: chromium - # dockerfile: Dockerfile - #- tag: google-chrome - # dockerfile: Dockerfile - #- tag: ungoogled-chromium - # dockerfile: Dockerfile - #- tag: microsoft-edge - # dockerfile: Dockerfile - #- tag: brave - # dockerfile: Dockerfile - #- tag: vivaldi - # dockerfile: Dockerfile - #- tag: opera - # dockerfile: Dockerfile - #- tag: tor-browser - # dockerfile: Dockerfile - #- tag: remmina - # dockerfile: Dockerfile - #- tag: vlc - # dockerfile: Dockerfile - #- tag: xfce - # dockerfile: Dockerfile + - tag: chromium + - tag: google-chrome + - tag: ungoogled-chromium + - tag: microsoft-edge + - tag: brave + - tag: vivaldi + - tag: opera + - tag: tor-browser + - tag: remmina + - tag: vlc + - tag: xfce env: TAG_NAME: ${{ matrix.tag }} - DOCKERFILE: ${{ matrix.dockerfile }} steps: - name: Checkout