Files
euri-iso/docs/ci.md
T

2.0 KiB

title, layout, nav_order
title layout nav_order
CI/CD default 7

CI/CD Pipeline

Two GitHub Actions workflows:

Build ISO (build.yml)

Triggers on manual workflow_dispatch only (push to master does NOT trigger a build). Runs in an artixlinux/artixlinux:base container.

Steps

  1. Install dependencies (artools, squashfs-tools, git, sudo, python)
  2. Set WORKSPACE_DIR to the checkout path
  3. Override pacman config with [antergos-pkgs] repo (pacman.conf.d/iso-x86_64.conf)
  4. Mount a 12 GB tmpfs at /var/lib/artools/buildiso
  5. Run ./buildiso -p antergos
  6. Upload the ISO and checksum as build artifacts

Internet Archive upload

Uploads the built ISO to the Internet Archive with:

  • Collection: open_source_software (Community Software, not Community Texts)
  • Identifier: antergos-next-YYYYMMDD-<run_number> (e.g. antergos-next-20260711-162)
  • Credentials: IA_ACCESS_KEY and IA_SECRET_KEY (repo secrets)

The -<run_number> suffix guarantees unique identifiers across CI runs. If two pushes produce the same date, they still get different archive entries.

Secrets

Secret Purpose
IA_ACCESS_KEY Internet Archive S3 access key
IA_SECRET_KEY Internet Archive S3 secret key

Deploy docs (pages.yml)

Triggers on push to master only when files under docs/ change. Builds a Jekyll site from docs/ using the Just the Docs theme and deploys to GitHub Pages.

antergos-packages CI

Separate workflow in the antergos-packages repo. Builds all packages listed in packages.yaml and publishes them to GitHub Pages as a pacman repository.

Safety notes

  • CI does NOT run on push — only manual dispatch. This prevents unintended ISO builds.
  • Internet Archive upload uses a unique identifier per run, so re-running CI won't overwrite a previous release.
  • Both IA_ACCESS_KEY and IA_SECRET_KEY must be set as repo secrets for the upload step to succeed.