diff --git a/.github/workflows/build_iso.yml b/.github/workflows/build_iso.yml new file mode 100644 index 0000000..f9ae92e --- /dev/null +++ b/.github/workflows/build_iso.yml @@ -0,0 +1,59 @@ +name: Build Cosmic ISOs +on: + workflow_dispatch: + pull_request: + branches: + - main + paths: + - '.github/workflows/build_iso.yml' + +env: + IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }} + INSTALLER_VERSION: 40 + +concurrency: + group: ${{ github.workflow }}-${{ github.ref || github.run_id }} + cancel-in-progress: true + +jobs: + build-iso: + runs-on: ubuntu-22.04 + permissions: + contents: read + packages: write + id-token: write + container: + image: fedora:40 + options: "--privileged" + volumes: + - "/:/host" + strategy: + fail-fast: false + matrix: + image_name: [cosmic-silverblue, cosmic-base] + image_tag: [40-amd64, rawhide-amd64] + + steps: + - name: Build ISOs + uses: ublue-os/isogenerator@1.0.9 + id: build + with: + ARCH: ${{ contains(matrix.image_tag, 'amd64') && 'x86_64' || 'arm64' }} + IMAGE_NAME: ${{ matrix.image_name }} + IMAGE_REPO: ghcr.io/ublue-os + # We cannot use Silverblue variant since we need the user creation options in anaconda + VARIANT: 'Kinoite' + VERSION: ${{ env.INSTALLER_VERSION }} + IMAGE_TAG: ${{ matrix.image_tag }} + SECURE_BOOT_KEY_URL: 'https://github.com/ublue-os/akmods/raw/main/certs/public_key.der' + ENROLLMENT_PASSWORD: 'ublue-os' + + - name: Upload ISOs and Checksum to Job Artifacts + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.image_name }}-${{ matrix.image_tag }} + path: ${{ steps.build.outputs.output-directory }} + if-no-files-found: error + retention-days: 0 + compression-level: 0 + overwrite: true