Skip to content

Bootstrap Andaman and Subatomic #58

Bootstrap Andaman and Subatomic

Bootstrap Andaman and Subatomic #58

Workflow file for this run

name: Bootstrap Andaman and Subatomic
on:
workflow_dispatch:
jobs:
bootstrap:
strategy:
matrix:
version: ["9"]
arch: ["x86_64", "aarch64"]
fail-fast: true
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: docker.io/library/almalinux:${{ matrix.version }}
options: --cap-add=SYS_ADMIN --privileged
steps:
- uses: actions/checkout@v4
with:
ref: el${{ matrix.version }}
fetch-depth: 1
- name: Install repositories
run: |
dnf install -y 'dnf-command(config-manager)'
dnf config-manager --set-enabled crb
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-${{ matrix.version }}.noarch.rpm
dnf install -y mock wget git-core openssl-devel cargo podman fuse-overlayfs rpm-build mock
dnf builddep -y anda/{terra/{mock-configs,srpm-macros},tools/buildsys/subatomic}/*.spec
- name: Vendor Go
run: |
dnf remove -y golang
curl https://go.dev/dl/go1.22.6.linux-${{ matrix.arch == 'aarch64' && 'arm64' || 'amd64' }}.tar.gz -o go.tar.gz
tar xf go.tar.gz go/bin/go
cp go/bin/go /usr/local/bin/
- name: Install Anda
run: cargo install anda
- name: Build terra-mock-configs
run: |
echo "PATH=$PATH:/github/home/.cargo/bin" >> $GITHUB_ENV
export PATH=$PATH:/github/home/.cargo/bin
git config --global --add safe.directory "$GITHUB_WORKSPACE"
anda build -c almalinux-${{ matrix.version }}-${{ matrix.arch }} anda/terra/mock-configs/pkg --rpm-builder=rpmbuild
- name: Install terra-mock-configs
run: dnf install -y anda-build/rpm/rpms/terra-mock-configs*.rpm
- name: Build anda-srpm-macros
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }}.cfg anda/terra/srpm-macros/pkg --rpm-builder=rpmbuild
- name: Build Subatomic
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }}.cfg anda/tools/buildsys/subatomic/pkg --rpm-builder=rpmbuild
- name: Install Subatomic
run: dnf install -y ./anda-build/rpm/rpms/subatomic-*.rpm
- name: Install Build Dependencies for Andaman
run: dnf builddep -y anda/tools/buildsys/anda/*.spec
- name: Build Andaman
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }} anda/tools/buildsys/anda/pkg --rpm-builder=rpmbuild
- name: Upload packages to subatomic
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }}-source anda-build/rpm/srpm/*