Skip to content

ci: build multiarched docker images #11

ci: build multiarched docker images

ci: build multiarched docker images #11

Workflow file for this run

name: Container Images
on:
pull_request:
branches:
- main
push:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
matrix:
name: Build Matrix
runs-on: ubuntu-latest
outputs:
full_json: ${{ steps.releases.outputs.json }}
codenames: ${{ steps.pp.outputs.codenames }}
codename_arch: ${{ steps.pp.outputs.codename_arch }}
steps:
- name: Releases Info
id: releases
uses: vicamo/actions-library/debian-releases@v1
- name: Post Processing
id: pp
env:
FULL_JSON: ${{ steps.releases.outputs.json }}
run: |
disabled='["kfreebsd-amd64", "kfreebsd-i386"]'
codenames="$(echo "${FULL_JSON}" | \
jq -c -M '[ .[] | {"codename":.codename,"suite":.suite,"architectures":(.architectures - '"${disabled}"' | tostring)} ]')"
echo "::group::Built JSON(codenames)"
echo "${codenames}" | jq
echo "::endgroup::"
codename_arch="$(echo "${FULL_JSON}" | \
jq -c -M '[ .[] as $s | ($s.architectures - '"${disabled}"') | {"codename":$s.codename,"suite":$s.suite,"architectures":.} ]')"
echo "::group::Built JSON(codename and architectures)"
echo "${codename_arch}" | jq
echo "::endgroup::"
{ \
echo "codenames=${codenames}"; \
echo "codename_arch=${codename_arch}"; \
} | tee -a "${GITHUB_OUTPUT}"
per-suite:
name: Per Suite
needs:
- matrix
strategy:
fail-fast: false
matrix:
include: ${{ fromJSON(needs.matrix.outputs.codenames) }}
uses: ./.github/workflows/per-suite.yml
with:
codename: ${{ matrix.codename }}
suite: ${{ matrix.suite }}
architectures: ${{ matrix.architectures }}