63 lines
2.4 KiB
YAML
63 lines
2.4 KiB
YAML
name: Build ISO images
|
|
on:
|
|
workflow_dispatch:
|
|
release:
|
|
types: [released]
|
|
issue_comment:
|
|
|
|
|
|
jobs:
|
|
build-x86:
|
|
container:
|
|
image: debian:latest
|
|
runs-on: [arm64]
|
|
# For manual trigger via Gitea while they implement the workflow_dispatch
|
|
if: ${{ github.event.pull_request != '' || github.event.pusher != '' || github.event.comment.body == '!actions run x86' || github.event.comment.body == '!actions run all' }}
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: https://github.com/actions/checkout@v4
|
|
- name: Create ISO
|
|
run: |
|
|
apt update
|
|
apt install -y xorriso curl genisoimage cpio
|
|
curl -LO https://laotzu.ftp.acc.umu.se/debian-cd/current/amd64/iso-cd/debian-11.6.0-amd64-netinst.iso
|
|
xorriso -osirrox on -indev debian-11.6.0-amd64-netinst.iso -extract / ./isofiles
|
|
chmod +w -R isofiles/
|
|
gunzip ./isofiles/install.amd/initrd.gz
|
|
echo preseed.cfg | cpio -H newc -o -A -F isofiles/install.amd/initrd
|
|
cp bootloader-configs/*.cfg isofiles/isolinux
|
|
gzip isofiles/install.amd/initrd
|
|
cd isofiles
|
|
# Execute the md5sum generation in a separated shell instance, because it returns a
|
|
# warning (file system loop) that makes the CI job error out
|
|
sh -c "find -follow -type f ! -name md5sum.txt -print0 | xargs -0 md5sum > md5sum.txt"
|
|
cd ..
|
|
chmod -w -R isofiles/
|
|
genisoimage -r -J -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o halis-debian-11.6.0-amd64.iso isofiles
|
|
- name: Upload ISO image
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: halis-debian-11.6.0-amd64.iso
|
|
path: halis-debian-11.6.0-amd64.iso
|
|
|
|
build-arm64:
|
|
container:
|
|
image: debian:latest
|
|
runs-on: [arm64]
|
|
# For manual trigger via Gitea while they implement the workflow_dispatch
|
|
if: ${{ github.event.pull_request != '' || github.event.pusher != '' || github.event.comment.body == '!actions run arm' || github.event.comment.body == '!actions run all' }}
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: https://github.com/actions/checkout@v4
|
|
- name: Create ISO
|
|
run: |
|
|
apt update
|
|
apt install -y curl xz-utils file sudo
|
|
./arm64-build.sh
|
|
- name: Upload ISO image
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
path: ./*.img.xz
|