Skip to content

Commit ecb46f4

Browse files
committed
Add initial github tests
Add running and packaging tests. Fix problems found when adding tests Signed-off-by: Corentin Labbe <[email protected]>
1 parent 0eead3d commit ecb46f4

File tree

6 files changed

+102
-3
lines changed

6 files changed

+102
-3
lines changed

.github/workflows/tests.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
# yamllint disable rule:line-length
3+
name: tests yasat
4+
5+
on: # yamllint disable-line rule:truthy
6+
push:
7+
pull_request:
8+
9+
jobs:
10+
test-ubuntu:
11+
runs-on: ubuntu-latest
12+
name: test on ubuntu
13+
steps:
14+
- uses: actions/checkout@v4
15+
- name: update pkglist
16+
run: sudo apt-get update
17+
- name: install some tested packages
18+
run: sudo apt-get -y install tomcat9
19+
- name: Run yasat
20+
run: |
21+
./yasat
22+
./yasat -1 ntp
23+
./yasat -1 tomcat
24+
ls -l /home/runner/.yasat//yasat.report
25+
test-bashishms:
26+
runs-on: ubuntu-latest
27+
name: Check bashisms
28+
steps:
29+
- uses: actions/checkout@v4
30+
- name: update pkglist
31+
run: sudo apt-get update
32+
- name: install checkbashisms
33+
run: sudo apt-get -y install devscripts
34+
- name: Run checkbashisms
35+
run: checkbashisms yasat common plugins/*test
36+
ubuntu-pkg:
37+
runs-on: ubuntu-latest
38+
name: build ubuntu package
39+
steps:
40+
- uses: actions/checkout@v4
41+
- name: update pkglist
42+
run: sudo apt-get update
43+
- name: Install packages
44+
run: sudo apt-get -y install devscripts gnupg debhelper-compat
45+
- name: create orig targz
46+
run: cd .. && tar czf yasat_0-1.orig.tar.gz yasat
47+
- name: Run ls
48+
run: ls -l
49+
- name: Run debuild
50+
run: debuild -i -us -uc -b --lintian-opts --profile debian
51+
- name: Run debuild help
52+
run: debuild --help
53+
debian-pkg:
54+
runs-on: ubuntu-latest
55+
name: build debian package
56+
steps:
57+
- uses: actions/checkout@v4
58+
- name: update pkglist
59+
run: sudo apt-get update
60+
- name: Install packages
61+
run: sudo apt-get -y install debootstrap
62+
- name: Create a bookworm
63+
run: sudo debootstrap bookworm /root/bookworm
64+
- name: copy yasat source
65+
run: sudo cp -a yasat /root/bookworm/
66+
- name: Install update pkg in chroot
67+
run: sudo chroot /root/bookworm apt-get update
68+
- name: Install update pkg in chroot
69+
run: sudo chroot /root/bookworm apt-get -y install devscripts gnupg debhelper-compat
70+
- name: Run debuild
71+
run: sudo chroot /root/bookworm 'cd /yasat && debuild -i -us -uc -b'
72+

common

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2455,6 +2455,20 @@ Is_installed_via_package_manager()
24552455
return 0;
24562456
fi
24572457
if [ "$LIST_PKG" = "emerge" ] ;then
2458+
if [ -z "$CACHE_EMERGE_OK" ];then
2459+
# check if we have can use portage
2460+
emerge --info 2>/dev/null >/dev/null
2461+
if [ $? -ne 0 ];then
2462+
Display --indent 2 --text "Could not work with emerge (cached)" --result EPERM --color RED
2463+
CACHE_EMERGE_OK="ko"
2464+
return 0
2465+
fi
2466+
fi
2467+
if [ "$CACHE_EMERGE_OK" = 'ko' ];then
2468+
Display --indent 2 --text "Could not work with emerge (cached)" --result EPERM --color RED
2469+
return 0
2470+
fi
2471+
CACHE_EMERGE_OK="ok"
24582472
#TODO could be better
24592473
PKGLIST="`equery -C -q l $1`"
24602474
if [ -z "$PKGLIST" ] ;then

debian/compat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5
1+
7

plugins/apache_modules.test

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,15 @@ fi
6565
check_file "$APACHE_BIN" 2 BINARY
6666

6767
if [ "$LINUX_VERSION" = "Gentoo" ] ;then
68-
. /etc/conf.d/apache2
68+
if [ ! -r /etc/conf.d/apache2 ];then
69+
TESTNAME='YASAT_TEST_APACHE_MODULES_READ_CONFD_APACHE Check if we can use /etc/conf.d/apache2'
70+
Display --indent 2 --text "Cannot read /etc/conf.d/apache2" --result ERROR --color RED
71+
else
72+
. /etc/conf.d/apache2
73+
if [ $? -ne 0 ];then
74+
echo "ERROR: could not read /etc/conf.d/apache2"
75+
fi
76+
fi
6977
APACHE_BIN="$APACHE_BIN $APACHE2_OPTS"
7078
fi
7179

plugins/process.data

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@ aisexec=CANBEROOT
2929
/usr/sbin/atd=CANBEROOT
3030
/usr/sbin/monit=CANBEROOT
3131
/sbin/rsyslogd=CANBEROOT
32+
/usr/bin/containerd=CANBEROOT
33+
/usr/libexec/packagekitd=CANBEROOT
34+
/usr/libexec/polkitd=CANBEROOT
35+
/sbin/agetty=CANBEROOT
36+
/usr/bin/podman=CANBEROOT
3237

3338
#ONLYROOT
3439
/sbin/udevd=ONLYROOT

plugins/process.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Title "Check running process"
2626
if [ ! -e "${PLUGINS_REP}/process.data" ]
2727
then
2828
Display --indent 2 --text "process.data" --result NOTFOUND --color RED
29-
return -1;
29+
return 1;
3030
fi
3131

3232
#TODO FreeBSD said ps: Process environment requires procfs(5)

0 commit comments

Comments
 (0)