Skip to content

Build sysext and confext #78

Build sysext and confext

Build sysext and confext #78

Workflow file for this run

name: Build sysext and confext
on:
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
image:
# - ghcr.io/ublue-os/bazzite:41
- ghcr.io/ublue-os/bluefin:41
permissions:
contents: write
packages: write
steps:
- uses: actions/checkout@v4
- name: Setup mkosi workspace
uses: ./.github/workflows/mkosi_setup
- uses: extractions/setup-just@v2
- name: Maximize build space
uses: ublue-os/remove-unwanted-software@v7
- name: Build sysext for ${{ matrix.image }}
id: build
run: |
DEBUG=1 just prepare-overlay-tar ${{ matrix.image }}
_MKOSI_COMMAND='mkosi --dependency=dx-sysext,dx-confext --force'
_OUTPUT_DIRS="$($_MKOSI_COMMAND --json summary | jq -r '[.Images[].OutputDirectory] | unique | .[]')"
mkdir -p $_OUTPUT_DIRS
sudo $_MKOSI_COMMAND build
- name: Find image files
id: find-files
run: |
raw_files=$(mkosi --json summary \
| jq -r '.Images[].OutputDirectory + "/" + .Images[].Output' \
| sort -u \
| xargs realpath -e 2>/dev/null \
| grep '.raw$' \
| tr '\n' ' ' \
| sed 's/ $//')
echo "files=$raw_files" >> "$GITHUB_OUTPUT"
- name: Upload sysext
uses: ./.github/workflows/upload_sysext
with:
working-directory: ${{ github.workspace }}/mkosi.output
basetree: ${{ github.workspace }}/mkosi.basetree
raw-files: ${{ steps.find-files.outputs.files }}
gh-token: ${{ secrets.GITHUB_TOKEN }}