name: Build ISO on: push: branches: [master] pull_request: branches: [master] workflow_dispatch: jobs: build: runs-on: ubuntu-latest container: image: archlinux:latest options: --privileged steps: - uses: actions/checkout@v4 - name: Install dependencies run: | pacman -Syu --noconfirm --needed \ archiso \ git \ squashfs-tools \ wget \ imagemagick \ sudo \ base-devel \ python-pip - name: Create build user run: | useradd -m builder echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers chown -R builder:builder . - name: Prepare run: sudo -u builder ./prepare.sh - name: Build ISO run: ./mkarchiso -v "." - name: Upload ISO artifact uses: actions/upload-artifact@v4 with: name: Antergos-NeXT-ISO path: out/ - name: Upload to SourceForge if: github.ref == 'refs/heads/master' env: SF_SSH_KEY: ${{ secrets.SF_SSH_KEY }} run: | mkdir -p ~/.ssh printf '%s' "$SF_SSH_KEY" > ~/.ssh/id_ed25519 chmod 600 ~/.ssh/id_ed25519 ssh-keyscan frs.sourceforge.net >> ~/.ssh/known_hosts 2>/dev/null ISO=$(ls out/*.iso | head -1) rsync -avP "$ISO" "antergos-txen@frs.sourceforge.net:/home/frs/project/antergos-next/"