name: Build Container Installer description: Generates an ISO for installing an OSTree stored in a container image inputs: arch: description: Architecture for image to build required: true default: x86_64 image_name: description: Name of the source container image required: true default: base image_repo: description: Repository containing the source container image required: true default: quay.io/fedora-ostree-desktops variant: description: "Source container variant. Available options 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 kinonite" required: true default: Server version: description: Fedora version of installer to build required: true default: "39" image_tag: description: Tag of the source container image. Defaults to the installer version required: false web_ui: description: Enable Anaconda WebUI required: false default: "false" iso_name: description: Used for specifying the name of the output iso required: false enrollment_password: description: Used for supporting secure boot (requires SECURE_BOOT_KEY_URL to be defined) required: false default: "container-installer" secure_boot_key_url: description: Secure boot key that is installed from URL location required: false action_version: description: Version of the action container to run deprecationMessage: No longer used. github.action_ref replaces the need for this. Will be removed in a future version. required: false additional_templates: description: Space delimetered list of additional Lorax templates to include required: false outputs: iso-path: value: ${{ steps.run_docker.outputs.ISO_PATH }} description: The location of the .iso object checksum-path: value: ${{ steps.run_docker.outputs.CHECKSUM_PATH }} description: The location of the checksum runs: using: composite steps: - name: Run docker image id: run_docker shell: bash run: | # Check if running inside of the action repo if [[ -z "${{ github.action_ref }}" ]]; then if [[ "${{ github.ref_name }}" =~ (.*)/merge ]]; then tag=pr-${BASH_REMATCH[1]}; else tag=${{ github.ref_name }}; fi; fi if [[ -z "${tag}" ]]; then tag=${{ github.action_ref }}; fi docker run --privileged --volume /github/workspace:/build-container-installer/build ghcr.io/jasonn3/build-container-installer:${tag} \ ARCH=${{ inputs.arch }} \ IMAGE_NAME=${{ inputs.image_name }} \ IMAGE_REPO=${{ inputs.image_repo }} \ VARIANT=${{ inputs.variant }} \ VERSION=${{ inputs.version }} \ IMAGE_TAG=${{ inputs.image_tag || inputs.version }} \ WEB_UI=${{ inputs.web_ui }} \ ISO_NAME=${{ inputs.iso_name }} \ ENROLLMENT_PASSWORD=${{ inputs.enrollment_password }} \ SECURE_BOOT_KEY_URL=${{ inputs.secure_boot_key_url }} \ "ADDITIONAL_TEMPLATES=${{ inputs.additional_templates }}" - name: Rename ISO file shell: bash run: | mv /github/workspace/deploy.iso /github/workspace/${{ inputs.iso_name }}.iso cd /github/workspace sha256sum ${{ inputs.iso_name }}.iso > ${{ inputs.iso_name }}-CHECKSUM echo "ISO_PATH=$(realpath ${{ github.workspace }}/${{ inputs.iso_name }}.iso)" >> $GITHUB_OUTPUT echo "CHECKSUM_PATH=$(realpath ${{ github.workspace }}/${{ inputs.iso_name }}-CHECKSUM)" >> $GITHUB_OUTPUT