Skip to content

bluebuild

bluebuild #381

Workflow file for this run

name: bluebuild
on:
schedule:
- cron:
"00 06 * * *" # build at 06:00 UTC every day
# (20 minutes after last ublue images start building)
push:
branches:
- main
paths-ignore: # don't rebuild if only documentation has changed
- "**.md"
pull_request:
workflow_dispatch: # allow manually triggering builds
concurrency:
# only run one build at a time
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
jobs:
bluebuild:
name: Build Custom Image
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
id-token: write
strategy:
fail-fast: false # stop GH from cancelling all matrix builds if one fails
matrix:
recipe:
# Fedora Latest
- fedora-base-latest.yml
- fedora-base-nvidia-latest.yml
- fedora-base-nvidia-open-latest.yml
- fedora-cosmic-latest.yml
- fedora-cosmic-nvidia-latest.yml
- fedora-cosmic-nvidia-open-latest.yml
- fedora-silverblue-latest.yml
- fedora-silverblue-nvidia-latest.yml
- fedora-silverblue-nvidia-open-latest.yml
- fedora-kinoite-latest.yml
- fedora-kinoite-nvidia-latest.yml
- fedora-kinoite-nvidia-open-latest.yml
# Fedora GTS
- fedora-base-gts.yml
- fedora-base-nvidia-gts.yml
- fedora-base-nvidia-open-gts.yml
- fedora-cosmic-gts.yml
- fedora-cosmic-nvidia-gts.yml
- fedora-cosmic-nvidia-open-gts.yml
- fedora-silverblue-gts.yml
- fedora-silverblue-nvidia-gts.yml
- fedora-silverblue-nvidia-open-gts.yml
- fedora-kinoite-gts.yml
- fedora-kinoite-nvidia-gts.yml
- fedora-kinoite-nvidia-open-gts.yml
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Extract kernel key
shell: bash
env:
KERNEL_SIGNING_SECRET: ${{ secrets.KERNEL_SIGNING_SECRET }}
run: echo "${KERNEL_SIGNING_SECRET}" | base64 -d > MOK.priv
# the build is fully handled by the reusable github action
- name: Build Custom Image
# uses: blue-build/github-action@3cd0c2835e691b87a7eb19261a6aee77a56169e2 #v1.10
uses: blue-build/github-action@main
with:
recipe: ${{ matrix.recipe }}
cosign_private_key: ${{ secrets.SIGNING_SECRET }}
registry_token: ${{ github.token }}
pr_event_number: ${{ github.event.number }}
verify_install: true
use_unstable_cli: true
skip_checkout: true
chunkah: true
max_layers: 64
# enabled by default, disable if your image is small and you want faster builds
maximize_build_space: true