PTU5KAS/.github/workflows/master.yml
Jan Kiszka a6b18abc8a Dockerfile: Rework generation of kas images
While kas and kas-isar surely have a common ground like the kas tool
itself, kas-isar does not need all the toolchain packages that are
essential Yocto dependencies. Splitting up the images earlier allows to
shrink kas-isar by almost 400 MB.

Use this chance to model both images as different build stages of the
same Dockerfile. That is simpler than creating a temporary "kas-base"
image via a separate Dockerfile.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2022-08-26 14:34:37 +02:00

48 lines
1.4 KiB
YAML

name: master
on:
push:
branches:
- master
jobs:
deploy_containers:
name: Build and deploy container images
runs-on: ubuntu-latest
steps:
- name: Check out repo
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Identify release build
run: |
# The release workflow will push :latest for tagged revisions
if git describe --exact-match --tags --match '*.*'; then
echo "PUSH_MASTER=false" >> $GITHUB_ENV
else
echo "PUSH_MASTER=true" >> $GITHUB_ENV
fi
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to ghcr.io
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ secrets.PACKAGE_DEPLOY_USER }}
password: ${{ secrets.PACKAGE_DEPLOY_TOKEN }}
- name: Build kas image
uses: docker/build-push-action@v2
with:
platforms: linux/amd64,linux/arm64
push: ${{ env.PUSH_MASTER }}
tags: ghcr.io/siemens/kas/kas
- name: Build kas-isar image
uses: docker/build-push-action@v2
with:
target: kas-isar
platforms: linux/amd64,linux/arm64
push: ${{ env.PUSH_MASTER }}
tags: ghcr.io/siemens/kas/kas-isar