mirror of
https://github.com/AeThex-Corporation/AeThex-OS.git
synced 2026-04-17 22:27:19 +00:00
52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
stages:
|
|
- build
|
|
- release
|
|
|
|
build_iso:
|
|
stage: build
|
|
image: ubuntu:24.04
|
|
timeout: 90 minutes
|
|
only:
|
|
- main
|
|
- tags
|
|
artifacts:
|
|
paths:
|
|
- aethex-linux-build/
|
|
expire_in: 90 days
|
|
script:
|
|
# Update system
|
|
- apt-get update -qq
|
|
- apt-get install -y -qq build-essential curl wget git nodejs npm debootstrap squashfs-tools xorriso grub-common grub-pc-bin grub-efi-amd64-bin mtools dosfstools isolinux syslinux-common
|
|
|
|
# Install Node dependencies
|
|
- npm install
|
|
|
|
# Build client
|
|
- npm run build || true
|
|
|
|
# Build ISO
|
|
- mkdir -p aethex-linux-build
|
|
- bash script/build-linux-iso.sh || true
|
|
|
|
# Verify ISO exists
|
|
- |
|
|
if ls aethex-linux-build/AeThex-Linux-*.iso 1> /dev/null 2>&1; then
|
|
echo "✅ ISO built successfully"
|
|
ls -lh aethex-linux-build/AeThex-Linux-*.iso
|
|
sha256sum aethex-linux-build/AeThex-Linux-*.iso > aethex-linux-build/SHA256
|
|
else
|
|
echo "⚠️ ISO not found, continuing anyway"
|
|
fi
|
|
|
|
release_iso:
|
|
stage: release
|
|
image: curlimages/curl:latest
|
|
only:
|
|
- tags
|
|
script:
|
|
# Upload to GitHub Release (requires GITHUB_TOKEN)
|
|
- |
|
|
if [ -f aethex-linux-build/AeThex-Linux-*.iso ]; then
|
|
echo "Uploading ISO to GitHub Release..."
|
|
# This would upload to GitHub using the token
|
|
fi
|