2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-10-21 23:28:19 +00:00
Files
xcat-core/.github/workflows/xcat_test.yml
T
Daniel Hilst 2a7364476e fix(xcat-core): xCAT-genesis-builder is named for a builder nothing calls
The directory holds the Genesis image sources and, beside them, a builder that
no pipeline runs. buildrpm, debuild-xcat-genesis-base, install, install.ubuntu,
check, cmdlist_check, findmcprpms, xCAT-genesis-builder.spec and the root
makerpm-genesisbuilder have no caller. So has build-ubunturepo, which
builddebs.pl replaced, and its -r flag has set an unread variable since 2013.
docs/source/references/coral/known_issues/genesis_base.rst tells the reader to
install an rpm no build produces, and go-xcat offers to remove that package.

Delete all of them, and rename the directory xCAT-genesis-base for what it
holds: the dracut modules the EL spec and the Ubuntu builder read, the
OpenEmbedded layers the GitHub job builds, the deb packaging, the image scripts
and 80-net-name-slot.rules.

Every reader of the old path is updated: buildrpms.pl, .gitattributes, the OE
workflow and the OpenEmbedded tests. buildrpms.pl mapped the package
xCAT-genesis-base to the directory xCAT-genesis-builder; the two names are the
same now, so the mapping goes.

xcat_probe_package_payload.t read build-ubunturepo for the probe helper staging.
builddebs.pl stages them with XCAT::BuildUtils::stage_probe_helpers, which
build_utils.t drives directly.

genesis_base_sources_staged.t passes with this change.

Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
2026-09-12 08:45:49 -03:00

59 lines
2.6 KiB
YAML

name: xcat_test
on: [pull_request, workflow_dispatch]
jobs:
xcat_pr_test:
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
- uses: actions/checkout@v6
- name: Install dependencies
run: sudo env DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends --no-install-suggests bats build-essential fakeroot reprepro devscripts debhelper libcapture-tiny-perl libfile-slurper-perl libjson-perl libparallel-forkmanager-perl libsoap-lite-perl libdbi-perl libcgi-pm-perl quilt openssh-server dpkg looptools genometools software-properties-common
- name: Run tests
run: perl github_action_xcat_test.pl
genesis_openembedded:
name: OpenEmbedded metadata
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.12'
cache: pip
cache-dependency-path: xCAT-genesis-base/oe/requirements.txt
- name: Install OpenEmbedded host dependencies
run: >-
sudo env DEBIAN_FRONTEND=noninteractive apt-get install -y
--no-install-recommends --no-install-suggests
build-essential chrpath cpio diffstat file gawk git locales
lz4 openssl socat texinfo unzip wget xz-utils zstd
- name: Install KAS
run: python -m pip install -r xCAT-genesis-base/oe/requirements.txt
- name: Enable BitBake user namespaces
run: sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
- name: Validate every architecture configuration
shell: bash
env:
KAS_WORK_DIR: ${{ runner.temp }}/kas-work
run: |
set -euo pipefail
for architecture in x86 x86_64 ppc64 ppc64le armv7hf aarch64 riscv64 s390x; do
export KAS_BUILD_DIR="${RUNNER_TEMP}/kas-build-${architecture}"
configuration="xCAT-genesis-base/oe/kas/${architecture}.yml"
kas dump "${configuration}" >/dev/null
kas shell "${configuration}" -c 'bitbake -p'
done
- name: Validate the image task graph
shell: bash
env:
KAS_WORK_DIR: ${{ runner.temp }}/kas-work
KAS_BUILD_DIR: ${{ runner.temp }}/kas-build-x86_64
run: |
set -euo pipefail
kas shell xCAT-genesis-base/oe/kas/x86_64.yml -c \
'bitbake -n xcat-genesis-image xcat-genesis-extension-smoke'
export KAS_BUILD_DIR="${RUNNER_TEMP}/kas-build-s390x"
kas shell xCAT-genesis-base/oe/kas/s390x.yml -c \
'bitbake -n xcat-genesis-image xcat-genesis-extension-smoke'