mirror of
https://github.com/troglobit/finit.git
synced 2026-10-02 05:52:48 +07:00
keventd is the only thing in the tree that links libblkid, so a tree that used to build now stops in configure with no hint of which package to install. Say so where people look for dependencies, and give CI the package it now needs. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
68 lines
2.2 KiB
YAML
68 lines
2.2 KiB
YAML
name: Weekly Distcheck
|
|
|
|
# Verify that `make distcheck` works as intended: all tests pass, and
|
|
# any new files are distributed in the tarballs
|
|
on:
|
|
schedule:
|
|
- cron: '0 0 * * 0'
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
schedule:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
run: ${{ steps.schedule.outputs.run }}
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
- name: Check for any commits since last week
|
|
id: schedule
|
|
run: |
|
|
commits="$(git log --format=%H --since='1 week ago')"
|
|
if [ -z "$commits" ]; then
|
|
echo "run=true" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "run=false" >> $GITHUB_OUTPUT
|
|
fi
|
|
distcheck:
|
|
needs: schedule
|
|
if: ${{ needs.schedule.outputs.run == 'true' }}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get -y update
|
|
sudo apt-get -y install pkg-config jq libcap-dev libconfuse-dev libblkid-dev
|
|
wget https://github.com/troglobit/libuev/releases/download/v2.4.1/libuev-2.4.1.tar.xz
|
|
wget https://github.com/troglobit/libite/releases/download/v2.6.2/libite-2.6.2.tar.gz
|
|
tar xf libuev-2.4.1.tar.xz
|
|
tar xf libite-2.6.2.tar.gz
|
|
(cd libuev-2.4.1 && ./configure && make -j9 && sudo make install-strip)
|
|
(cd libite-2.6.2 && ./configure && make -j9 && sudo make install-strip)
|
|
sudo ldconfig
|
|
- uses: actions/checkout@v7
|
|
- name: Base run
|
|
run: |
|
|
./autogen.sh
|
|
./configure --prefix=/usr --exec-prefix= --sysconfdir=/etc --localstatedir=/var
|
|
make -j9 V=1
|
|
- name: Install to /tmp
|
|
run: |
|
|
DESTDIR=/tmp make install-strip
|
|
- name: Enable unprivileged userns (unshare)
|
|
run: |
|
|
sudo sysctl kernel.apparmor_restrict_unprivileged_userns=0
|
|
- name: Check dist tarball
|
|
run: |
|
|
ver=$(/tmp/sbin/initctl -V | awk '/Finit.*/ {print $2;}')
|
|
dir=finit-$ver/_build/sub
|
|
make -j1 distcheck || (cat $dir/test/test-suite.log; false)
|
|
- name: Upload Test Results
|
|
if: always()
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: finit-weekly-test-logs
|
|
path: finit-*/_build/sub/test/*.log
|