mirror of
https://github.com/theupriser/steamify-cachyos-live-iso.git
synced 2026-10-02 15:10:26 +02:00
113 lines
3.0 KiB
YAML
113 lines
3.0 KiB
YAML
name: Desktop ISO
|
|
on: push
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: archlinux:base-devel
|
|
options: --privileged
|
|
name: Build
|
|
outputs:
|
|
builddate: ${{ steps.date.outputs.builddate }}
|
|
steps:
|
|
- name: Get build date
|
|
id: date
|
|
run: |
|
|
echo "builddate=$(date +'%y%m%d')" >> $GITHUB_OUTPUT
|
|
|
|
- name: Clone CachyOS-Live-ISO
|
|
id: clone
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Add CachyOS keyring
|
|
id: keyring
|
|
run: |
|
|
pacman-key --init
|
|
pacman-key --recv-keys F3B607488DB35A47 --keyserver keyserver.ubuntu.com
|
|
pacman-key --lsign-key F3B607488DB35A47
|
|
|
|
- name: Install dependencies
|
|
id: dependencies
|
|
run: |
|
|
sudo pacman -Syu --noconfirm archiso mkinitcpio-archiso squashfs-tools grub
|
|
|
|
- name: Build ISO (${{ steps.date.outputs.builddate }})
|
|
id: build
|
|
run: |
|
|
./buildiso.sh
|
|
- name: Upload ISO to artifacts
|
|
id: upload
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: cachyos-desktop-linux-${{ steps.date.outputs.builddate }}
|
|
path: out/desktop/*
|
|
quicktest:
|
|
name: Testing
|
|
runs-on: ubuntu-latest
|
|
needs: build
|
|
container:
|
|
image: archlinux:base-devel
|
|
options: --privileged
|
|
steps:
|
|
- name: Clone CachyOS-Live-ISO
|
|
id: clone
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Install dependencies
|
|
id: dependencies
|
|
run: |
|
|
pacman -Syu --noconfirm git ffmpeg imagemagick tesseract-data-eng qemu-desktop
|
|
|
|
- name: Create build user
|
|
id: user
|
|
run: |
|
|
useradd builder -m
|
|
echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
|
|
chmod -R a+rw .
|
|
|
|
- name: Build quickemu
|
|
id: quickemu
|
|
run: |
|
|
sudo -u builder git clone https://aur.archlinux.org/quickemu.git
|
|
cd quickemu
|
|
sudo -H -E -u builder makepkg --syncdeps --noconfirm
|
|
pacman -U --noconfirm quickemu*.pkg.tar.zst
|
|
cd ..
|
|
|
|
- name: Clone quicktest
|
|
id: clone-quicktest
|
|
uses: actions/checkout@v6
|
|
with:
|
|
repository: 'quickemu-project/quicktest'
|
|
path: 'quicktest'
|
|
|
|
- name: Download ISO
|
|
id: download
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: machines/cachyos-dailylive
|
|
merge-multiple: true
|
|
|
|
- name: Run quicktest
|
|
id: quicktest
|
|
run: |
|
|
./quicktest/quicktest test_install_calamares cachyos dailylive
|
|
env:
|
|
QT_NOTIFY: "false"
|
|
QT_OPEN_RESULTS: "false"
|
|
QT_QUICKGET_SKIP: "true"
|
|
QT_TESTCASES_DIR: "./testcases"
|
|
QUICKEMU_DISPLAY: "none"
|
|
QUICKEMU_VM_DIR: "./machines"
|
|
|
|
- name: Upload results to artifacts
|
|
id: upload-results
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: cachyos-desktop-linux-results-${{needs.build.outputs.builddate}}
|
|
path: results/*
|