Skip to content
GitHub Action edited this page Oct 8, 2025 · 2 revisions

Usage

This action is designed to be called from a GitHub workflow using the following format

- name: Build ISO
  uses: jasonn3/build-container-installer@main
  id: build
  with:
    arch: ${{ env.ARCH}}
    image_name: ${{ env.IMAGE_NAME}}
    image_repo: ${{ env.IMAGE_REPO}}
    image_tag: ${{ env.IMAGE_TAG }}
    version: ${{ env.VERSION }}
    variant: ${{ env.VARIANT }}
    iso_name: ${{ env.IMAGE_NAME }}-${{ env.IMAGE_TAG }}-${{ env.VERSION }}.iso

# This example is for uploading your ISO as a Github artifact. You can do something similar using any cloud storage, so long as you copy the output
- name: Upload ISO as artifact
  id: upload
  uses: actions/upload-artifact@v4
  with:
    name: ${{ steps.build.outputs.iso_name }}
    path: |
      ${{ steps.build.outputs.iso_path }}/${{ steps.build.outputs.iso_name }}
      ${{ steps.build.outputs.iso_path }}/${{ steps.build.outputs.iso_name }}-CHECKSUM
    if-no-files-found: error
    retention-days: 0
    compression-level: 0

Inputs

Variable Description Default Value Action Container/Makefile
additional_templates Space delimited list of additional Lorax templates to include [empty]
arch Architecture for image to build x86_64
enrollment_password Used for supporting secure boot (requires SECURE_BOOT_KEY_URL to be defined) container-installer
extra_boot_params Extra params used by grub to boot the anaconda installer [empty]
flatpak_remote_name Name of the Flatpak repo on the destination OS flathub
flatpak_remote_refs Space separated list of flatpak refs to install [empty]
flatpak_remote_refs_dir Directory that contains files that list the flatpak refs to install [empty]
flatpak_remote_url URL of the flatpakrepo file https://flathub.org/repo/flathub.flatpakrepo
image_name Name of the source container image base
image_repo Repository containing the source container image quay.io/fedora-ostree-desktops
image_signed Whether the container image is signed. The policy to test the signing must be configured inside the container image true
image_src Overrides the source of the container image. Must be formatted for the skopeo copy command [empty]
image_tag Tag of the source container image VERSION
iso_name Name of the ISO you wish to output when completed build/deploy.iso
make_target Overrides the default make target ISO_NAME-Checksum
repos List of repo files for Lorax to use /etc/yum.repos.d/*.repo
rootfs_size The size (in GiB) for the squashfs runtime volume 2
secure_boot_key_url Secure boot key that is installed from URL location** [empty]
variant Source container variant* Server
version Fedora version of installer to build 39
web_ui Enable Anaconda WebUI (experimental) false

*Available options for VARIANT can be found by running dnf provides system-release. Variant will be the third item in the package name. Example: fedora-release-kinoite-39-34.noarch will be kinoite

** If you need to reference a local file, you can use file://*path*

Outputs

Variable Description Usage
iso_name The name of the resulting .iso ${{ steps.YOUR_ID_FOR_ACTION.outputs.iso_name }}
iso_path The path to the resulting .iso ${{ steps.YOUR_ID_FOR_ACTION.outputs.iso_path }}

Clone this wiki locally