CI: run `make distcheck` instead of `make check`
authorKirill Isakov <bootctl@gmail.com>
Sat, 12 Mar 2022 10:34:40 +0000 (16:34 +0600)
committerGuus Sliepen <guus@tinc-vpn.org>
Sat, 12 Mar 2022 14:45:42 +0000 (15:45 +0100)
.ci/deps.sh
.ci/sanitizers/ignore.txt
.ci/test/run.sh
Makefile.am

index 6fdd47f..49a7772 100755 (executable)
@@ -6,8 +6,8 @@ deps_linux_alpine() {
   apk upgrade
 
   apk add \
-    git binutils make autoconf automake gcc linux-headers diffutils texinfo \
-    procps socat shadow sudo libgcrypt-dev \
+    git binutils make autoconf automake gcc linux-headers diffutils \
+    procps socat shadow sudo libgcrypt-dev texinfo texlive gzip \
     openssl-dev zlib-dev lzo-dev ncurses-dev readline-dev musl-dev lz4-dev vde2-dev
 }
 
@@ -24,7 +24,7 @@ deps_linux_debian() {
   apt-get upgrade -y
 
   apt-get install -y \
-    git binutils make autoconf automake gcc diffutils sudo texinfo netcat-openbsd procps socat \
+    git binutils make autoconf automake gcc diffutils sudo texinfo texlive netcat-openbsd procps socat \
     zlib1g-dev:"$HOST" \
     libssl-dev:"$HOST" \
     liblzo2-dev:"$HOST" \
@@ -54,7 +54,7 @@ deps_linux_rhel() {
   yum upgrade -y
 
   yum install -y \
-    git binutils make autoconf automake gcc diffutils sudo texinfo netcat procps systemd \
+    git binutils make autoconf automake gcc diffutils sudo texinfo-tex netcat procps systemd \
     findutils socat lzo-devel zlib-devel lz4-devel ncurses-devel readline-devel libgcrypt-devel "$@"
 
   if yum info openssl11-devel; then
index 724f278..c088e06 100644 (file)
@@ -1,3 +1,9 @@
+# plain make
 src:ed25519/*
 src:chacha-poly1305/*
 src:xoshiro.c
+
+# make distcheck
+src:../../../src/ed25519/*
+src:../../../src/chacha-poly1305/*
+src:../../../src/xoshiro.c
index b17d2de..a7cfc29 100644 (file)
@@ -32,12 +32,23 @@ run_tests() {
   header "Running test flavor $flavor"
 
   autoreconf -fsi
-  # shellcheck disable=SC2046
-  ./configure $(sh .ci/conf.sh "$@")
+
+  DISTCHECK_CONFIGURE_FLAGS=$(sh .ci/conf.sh "$@")
+  export DISTCHECK_CONFIGURE_FLAGS
+
+  # shellcheck disable=SC2086
+  ./configure $DISTCHECK_CONFIGURE_FLAGS
+
   make -j"$(nproc)" all extra
 
+  if [ "$(uname -s)" = Linux ]; then
+    cmd=distcheck
+  else
+    cmd=check
+  fi
+
   code=0
-  make check -j2 VERBOSE=1 || code=$?
+  make $cmd -j2 VERBOSE=1 || code=$?
 
   sudo tar -c -z -f "/tmp/logs/tests.$flavor.tar.gz" test/ sanitizer/
 
index 6bf5f5e..0956cbe 100644 (file)
@@ -26,6 +26,12 @@ README: configure-version README.md
 
 CLEANFILES = README
 
+# If we're running on a CI server, we may not be able to remove some test
+# artifacts without using sudo because they are created by tincd running
+# with root privileges.
+clean-local:
+       if test -n "${CI}"; then sudo rm -rf test/*.test.*/; fi
+
 ChangeLog:
        (cd $(srcdir) && git log) > ChangeLog