name: Build and push Almalinux 8 container images on: push: branches: - master jobs: build: name: Build almalinux8 container images runs-on: ubuntu-latest container: image: quay.io/almalinuxorg/9-minimal:9.5 strategy: matrix: flavor: ["default", "micro"] version: ["8.10"] steps: - name: Setup requirement shell: bash run: | microdnf -y install git nodejs buildah podman - name: Check out repository code uses: actions/checkout@v4 - name: Login to quay.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.flavor == 'default' }} name: Build almalinux default image uses: redhat-actions/buildah-build@v2 with: context: . containerfiles: | 8/Containerfile.${{ matrix.flavor }} build-args: | ALMALINUX_VERSION=${{ matrix.version }} tags: | quay.io/sindigilive/almalinux:${{ matrix.version }} - if: ${{ matrix.flavor == 'micro' }} name: Build and push almalinux flavor uses: docker/build-push-action@v5 with: # platforms: linux/amd64,linux/arm64 push: true context: . file: ./8/Dockerfile.${{ matrix.flavor }} build-args: | ALMALINUX_VERSION=${{ matrix.version }} tags: | quay.io/sindigilive/almalinux:${{ matrix.version }}-${{ matrix.flavor }} - if: ${{ matrix.flavor == 'default' }} name: Scan almalinux image with Trivy uses: aquasecurity/trivy-action@0.20.0 with: image-ref: 'quay.io/sindigilive/almalinux:${{ matrix.version }}' format: 'sarif' output: 'trivy-results.sarif' - if: ${{ matrix.flavor != 'default' }} name: Build and push almalinux flavor uses: redhat-actions/buildah-build@v2 with: context: . containerfiles: | 8/Dockerfile.${{ matrix.flavor }} build-args: | ALMALINUX_VERSION=${{ matrix.version }} tags: | quay.io/sindigilive/almalinux:${{ matrix.version }}-${{ matrix.flavor }} - if: ${{ matrix.flavor != 'default' }} name: Push almalinux flavor image to quay.io uses: redhat-actions/push-to-registry@v2 with: tags: quay.io/sindigilive/almalinux:${{ matrix.version }}-${{ matrix.flavor }} registry: quay.io username: ${{ vars.QUAY_USERNAME }} password: ${{ secrets.QUAY_SECRET }} - if: ${{ matrix.flavor != 'default' }} name: Scan almalinux flavor image with Trivy uses: aquasecurity/trivy-action@0.20.0 with: image-ref: 'quay.io/sindigilive/almalinux:${{ matrix.version }}-${{ matrix.flavor }}' format: 'sarif' output: 'trivy-results.sarif' build-latest: name: Build latest almalinux8 container images runs-on: almalinux-latest needs: - build container: image: quay.io/almalinuxorg/9-minimal:9.5 steps: - name: Setup requirement shell: bash run: | microdnf -y install git nodejs buildah podman - name: Check out repository code uses: actions/checkout@v4 - name: Login to quay.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 - name: Build and push latest almalinux9-micro uses: docker/build-push-action@v5 with: context: . containerfiles: | 8/Dockerfile.micro tags: | quay.io/sindigilive/almalinux:8-micro - name: Build and push latest almalinux9 uses: docker/build-push-action@v5 with: context: . containerfiles: | 8/Dockerfile.micro tags: | quay.io/sindigilive/almalinux:8 - name: Push latest almalinux image to quay.io uses: redhat-actions/push-to-registry@v2 with: registry: quay.io username: ${{ vars.QUAY_USERNAME }} password: ${{ secrets.QUAY_SECRET }} tags: | quay.io/sindigilive/almalinux:8