mirror of
https://github.com/systemd/systemd
synced 2026-04-21 22:44:51 +02:00
Compare commits
2 Commits
fb70f1de69
...
24a0df5c3c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24a0df5c3c | ||
|
|
6b2ab8fc5c |
56
.github/workflows/mkosi.yml
vendored
56
.github/workflows/mkosi.yml
vendored
@ -31,38 +31,46 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
distro:
|
include:
|
||||||
- arch
|
- distro: arch
|
||||||
- debian
|
release: rolling
|
||||||
- ubuntu
|
- distro: debian
|
||||||
- fedora
|
release: testing
|
||||||
- opensuse
|
- distro: ubuntu
|
||||||
|
release: focal
|
||||||
|
- distro: fedora
|
||||||
|
release: "35"
|
||||||
|
- distro: opensuse
|
||||||
|
release: tumbleweed
|
||||||
|
- distro: centos_epel
|
||||||
|
release: 8-stream
|
||||||
|
# TODO: Enable once https://github.com/systemd/mkosi/pull/915#issuecomment-1049035316 is fixed.
|
||||||
|
# - distro: centos_epel
|
||||||
|
# release: 9-stream
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
|
- uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
|
||||||
- uses: systemd/mkosi@30288805db1a953ea31045933adb93194f91e3da
|
- uses: systemd/mkosi@0dd39c20a4b3a2fab6efdc54da92bffad7c7b7ca
|
||||||
|
|
||||||
- name: Install
|
- name: Install
|
||||||
run: sudo apt-get update && sudo apt-get install --no-install-recommends python3-pexpect python3-jinja2
|
run: sudo apt-get update && sudo apt-get install --no-install-recommends python3-pexpect python3-jinja2
|
||||||
|
|
||||||
- name: Configure
|
- name: Configure
|
||||||
run: echo -e "[Distribution]\nDistribution=${{ matrix.distro }}\n" >mkosi.default
|
|
||||||
|
|
||||||
# Ubuntu's systemd-nspawn doesn't support faccessat2() syscall, which is
|
|
||||||
# required, since current Arch's glibc implements faccessat() via faccessat2().
|
|
||||||
- name: Update systemd-nspawn
|
|
||||||
if: ${{ matrix.distro == 'arch' }}
|
|
||||||
run: |
|
run: |
|
||||||
echo "deb-src http://archive.ubuntu.com/ubuntu/ $(lsb_release -cs) main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list
|
tee mkosi.default <<- EOF
|
||||||
sudo apt update
|
[Distribution]
|
||||||
sudo apt build-dep systemd
|
Distribution=${{ matrix.distro }}
|
||||||
meson build
|
Release=${{ matrix.release }}
|
||||||
ninja -C build
|
|
||||||
sudo ln -svf "$PWD/build/systemd-nspawn" "$(which systemd-nspawn)"
|
[Content]
|
||||||
systemd-nspawn --version
|
Environment=CI_BUILD=1
|
||||||
|
|
||||||
|
[Output]
|
||||||
|
KernelCommandLine=${{ env.KERNEL_CMDLINE }}
|
||||||
|
EOF
|
||||||
|
|
||||||
- name: Build ${{ matrix.distro }}
|
- name: Build ${{ matrix.distro }}
|
||||||
run: ./.github/workflows/run_mkosi.sh --build-environment=CI_BUILD=1 --kernel-command-line "${{ env.KERNEL_CMDLINE }}" build
|
run: ./.github/workflows/run_mkosi.sh build
|
||||||
|
|
||||||
- name: Show ${{ matrix.distro }} image summary
|
- name: Show ${{ matrix.distro }} image summary
|
||||||
run: ./.github/workflows/run_mkosi.sh summary
|
run: ./.github/workflows/run_mkosi.sh summary
|
||||||
@ -73,8 +81,14 @@ jobs:
|
|||||||
- name: Check ${{ matrix.distro }} systemd-nspawn
|
- name: Check ${{ matrix.distro }} systemd-nspawn
|
||||||
run: ./.github/workflows/run_mkosi.sh shell bash -c "[[ -e /testok ]] || { cat /failed-services; exit 1; }"
|
run: ./.github/workflows/run_mkosi.sh shell bash -c "[[ -e /testok ]] || { cat /failed-services; exit 1; }"
|
||||||
|
|
||||||
|
# TODO: Remove CentOS exclusion once Ubuntu 22.04 is available in GA.
|
||||||
|
# See https://github.com/systemd/systemd/pull/22417 and https://github.com/systemd/mkosi/pull/907 for
|
||||||
|
# more information.
|
||||||
|
|
||||||
- name: Boot ${{ matrix.distro }} QEMU
|
- name: Boot ${{ matrix.distro }} QEMU
|
||||||
|
if: ${{ matrix.distro != 'centos_epel' }}
|
||||||
run: ./.github/workflows/run_mkosi.sh qemu
|
run: ./.github/workflows/run_mkosi.sh qemu
|
||||||
|
|
||||||
- name: Check ${{ matrix.distro }} QEMU
|
- name: Check ${{ matrix.distro }} QEMU
|
||||||
|
if: ${{ matrix.distro != 'centos_epel' }}
|
||||||
run: ./.github/workflows/run_mkosi.sh shell bash -c "[[ -e /testok ]] || { cat /failed-services; exit 1; }"
|
run: ./.github/workflows/run_mkosi.sh shell bash -c "[[ -e /testok ]] || { cat /failed-services; exit 1; }"
|
||||||
|
|||||||
86
mkosi.default.d/centos_epel/10-mkosi.centos_epel
Normal file
86
mkosi.default.d/centos_epel/10-mkosi.centos_epel
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||||
|
|
||||||
|
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
|
||||||
|
# Symlink this file to mkosi.default in the project root directory and invoke "mkosi" to build an OS image.
|
||||||
|
|
||||||
|
[Distribution]
|
||||||
|
Distribution=centos_epel
|
||||||
|
|
||||||
|
[Output]
|
||||||
|
Format=gpt_xfs
|
||||||
|
HostonlyInitrd=no
|
||||||
|
|
||||||
|
[Packages]
|
||||||
|
BuildPackages=
|
||||||
|
diffutils
|
||||||
|
docbook-style-xsl
|
||||||
|
findutils
|
||||||
|
gcc
|
||||||
|
gettext
|
||||||
|
git
|
||||||
|
glibc-minimal-langpack
|
||||||
|
gnu-efi
|
||||||
|
gnu-efi-devel
|
||||||
|
gperf
|
||||||
|
lz4
|
||||||
|
meson
|
||||||
|
ninja-build
|
||||||
|
pam-devel
|
||||||
|
# CentOS Stream 8 libgcrypt-devel doesn't ship a pkg-config file.
|
||||||
|
libgcrypt-devel
|
||||||
|
pkgconfig
|
||||||
|
pkgconfig(audit)
|
||||||
|
pkgconfig(blkid)
|
||||||
|
pkgconfig(bzip2)
|
||||||
|
pkgconfig(dbus-1)
|
||||||
|
pkgconfig(fdisk)
|
||||||
|
pkgconfig(gnutls)
|
||||||
|
pkgconfig(libacl)
|
||||||
|
pkgconfig(libcap)
|
||||||
|
pkgconfig(libcryptsetup)
|
||||||
|
pkgconfig(libcurl)
|
||||||
|
pkgconfig(libdw)
|
||||||
|
pkgconfig(libidn2)
|
||||||
|
pkgconfig(libkmod)
|
||||||
|
pkgconfig(liblz4)
|
||||||
|
pkgconfig(liblzma)
|
||||||
|
pkgconfig(libmicrohttpd)
|
||||||
|
pkgconfig(libpcre2-8)
|
||||||
|
pkgconfig(libqrencode)
|
||||||
|
pkgconfig(libseccomp)
|
||||||
|
pkgconfig(libselinux)
|
||||||
|
pkgconfig(libzstd)
|
||||||
|
pkgconfig(mount)
|
||||||
|
pkgconfig(openssl)
|
||||||
|
pkgconfig(p11-kit-1)
|
||||||
|
pkgconfig(pwquality)
|
||||||
|
pkgconfig(tss2-esys)
|
||||||
|
pkgconfig(tss2-mu)
|
||||||
|
pkgconfig(tss2-rc)
|
||||||
|
pkgconfig(valgrind)
|
||||||
|
pkgconfig(xkbcommon)
|
||||||
|
python3dist(jinja2)
|
||||||
|
python3dist(lxml)
|
||||||
|
rpm
|
||||||
|
tree
|
||||||
|
zstd
|
||||||
|
/usr/bin/xsltproc
|
||||||
|
|
||||||
|
Packages=
|
||||||
|
gdb
|
||||||
|
nano
|
||||||
|
# procps-ng provides a set of useful utilities (ps, free, etc)
|
||||||
|
procps-ng
|
||||||
|
strace
|
||||||
|
tpm2-tss
|
||||||
|
less
|
||||||
|
netcat
|
||||||
|
e2fsprogs
|
||||||
|
# Required to run systemd-networkd-tests.py
|
||||||
|
python3
|
||||||
|
iproute
|
||||||
|
iproute-tc
|
||||||
|
dnsmasq
|
||||||
|
wireguard-tools
|
||||||
|
dhcp-server
|
||||||
|
kernel-modules-extra
|
||||||
Loading…
x
Reference in New Issue
Block a user