mirror of
https://github.com/systemd/systemd.git
synced 2025-01-23 02:04:32 +03:00
e7a966915d
Judging by https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token it should be enough to grant the "read contents" permission to most of our actions. The "read metadata" permission is set impliciclty somewhere and can't be set via the "permissions" setting: ``` The workflow is not valid. .github/workflows/linter.yml (Line: 14, Col: 3): Unexpected value 'metadata' ```
70 lines
2.0 KiB
YAML
70 lines
2.0 KiB
YAML
---
|
|
# vi: ts=2 sw=2 et:
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
# Simple boot tests that build and boot the mkosi images generated by the mkosi config files in mkosi.default.d/.
|
|
name: mkosi
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- v[0-9]+-stable
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
- v[0-9]+-stable
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
ci:
|
|
runs-on: ubuntu-20.04
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ matrix.distro }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
distro:
|
|
- arch
|
|
- debian
|
|
- ubuntu
|
|
- fedora
|
|
- opensuse
|
|
|
|
steps:
|
|
- uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
|
|
- uses: systemd/mkosi@v10
|
|
|
|
- name: Install
|
|
run: sudo apt-get update && sudo apt-get install --no-install-recommends python3-pexpect python3-jinja2
|
|
|
|
- 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: |
|
|
echo "deb-src http://archive.ubuntu.com/ubuntu/ $(lsb_release -cs) main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list
|
|
sudo apt update
|
|
sudo apt build-dep systemd
|
|
meson build
|
|
ninja -C build
|
|
sudo ln -svf $PWD/build/systemd-nspawn `which systemd-nspawn`
|
|
systemd-nspawn --version
|
|
|
|
- name: Build ${{ matrix.distro }}
|
|
run: sudo python3 -m mkosi build
|
|
|
|
- name: Show ${{ matrix.distro }} image summary
|
|
run: sudo python3 -m mkosi summary
|
|
|
|
- name: Boot ${{ matrix.distro }} systemd-nspawn
|
|
run: sudo ./.github/workflows/test_mkosi_boot.py python3 -m mkosi boot
|
|
|
|
- name: Boot ${{ matrix.distro }} QEMU
|
|
run: sudo ./.github/workflows/test_mkosi_boot.py python3 -m mkosi qemu
|