name: Build and push Almalinux container images on: push: branches: - master jobs: build: name: Build almalinux container images runs-on: ubuntu-latest container: image: ghcr.io/catthehacker/ubuntu:act-latest strategy: matrix: params: - edition: "micro" major_version: "8" major_edition: "true" version: "8.10" - edition: "minimal" major_version: "8" major_edition: "true" version: "8.10" - edition: "base" major_version: "8" major_edition: "true" version: "8.10" - edition: "micro" major_version: "9" major_edition: "true" latest: "true" version: "9.5" - edition: "minimal" major_version: "9" major_edition: "true" latest: "true" version: "9.5" - edition: "base" major_version: "9" major_edition: "true" latest: "true" version: "9.5" steps: - name: Check out repository code uses: actions/checkout@v4 - name: Login to docker.io uses: docker/login-action@v3 with: registry: quay.io username: ${{ vars.QUAY_USERNAME }} password: ${{ secrets.QUAY_SECRET }} # - name: Set up QEMU # uses: docker/setup-qemu-action@v3 - name: Setup Docker buildx uses: docker/setup-buildx-action@v3 - if: ${{ matrix.params.edition != 'base' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:${{ matrix.params.version }}-${{ matrix.params.edition }} - if: ${{ matrix.params.edition == 'base' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:${{ matrix.params.version }} - if: ${{ matrix.params.edition != 'base' && matrix.params.major_edition == 'true' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:${{ matrix.params.major_version }} - if: ${{ matrix.params.edition == 'base' && matrix.params.major_edition == 'true' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:${{ matrix.params.major_version }} - if: ${{ matrix.params.edition != 'base' && matrix.params.latest == 'true' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:latest-${{ matrix.params.edition }} - if: ${{ matrix.params.edition == 'base' && matrix.params.latest == 'true' }} name: Build and push edition release uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./${{ matrix.params.major_version }}/Dockerfile.${{ matrix.params.edition }} build-args: | OS_VERSION=${{ matrix.params.version }} tags: | quay.io/teras/almalinux:latest