Skip to content

🌱 Extract getConfigVolumes to an interface (#372) #249

🌱 Extract getConfigVolumes to an interface (#372)

🌱 Extract getConfigVolumes to an interface (#372) #249

name: 'Build and Push Multi-Arch Image'
on:
workflow_dispatch:
push:
branches:
- 'main'
- 'release-*'
tags:
- 'v*'
concurrency:
group: march-build-${{ github.ref }}
cancel-in-progress: true
env:
tag: ${{ github.ref == 'refs/heads/main' && 'latest' || github.ref_name }}
jobs:
image-build:
uses: konveyor/release-tools/.github/workflows/build-push-images.yaml@main
with:
registry: "quay.io/konveyor"
image_name: "kantra"
containerfile: "./Dockerfile"
architectures: '[ "amd64", "arm64" ]'
extra-args: |
--build-arg RULESETS_REF=${{ github.ref_name }} --build-arg VERSION=${{ github.ref_name == 'main' && 'latest' || github.ref_name }} --build-arg BUILD_COMMIT=${{ github.sha }}
secrets:
registry_username: ${{ secrets.QUAY_PUBLISH_ROBOT }}
registry_password: ${{ secrets.QUAY_PUBLISH_TOKEN }}
windows-image-build:
runs-on: windows-latest
steps:
- uses: actions/checkout@main
- name: Login to Docker Hub
uses: docker/login-action@master
with:
registry: "quay.io/konveyor"
username: ${{ secrets.QUAY_PUBLISH_ROBOT }}
password: ${{ secrets.QUAY_PUBLISH_TOKEN }}
- name: Build static-report
run: |
docker build -f ./Dockerfile.windows -t quay.io/konveyor/kantra:$env:tag-windowsservercore-ltsc2022 .
docker push quay.io/konveyor/kantra:$env:tag-windowsservercore-ltsc2022
update-manifest:
needs:
- image-build
- windows-image-build
runs-on: ubuntu-latest
steps:
- name: update manifest
run: |
podman manifest create temp
podman manifest add temp --all quay.io/konveyor/kantra:${tag}
podman manifest add temp --all quay.io/konveyor/kantra:${tag}-windowsservercore-ltsc2022
podman tag temp quay.io/konveyor/kantra:${tag}
- name: Push manifest to Quay
uses: redhat-actions/push-to-registry@main
id: push
with:
image: konveyor/kantra
tags: ${{ env.tag }}
username: ${{ secrets.QUAY_PUBLISH_ROBOT }}
password: ${{ secrets.QUAY_PUBLISH_TOKEN }}
registry: quay.io