From ecb8e9d77faf1940c0defb78f0078f66562373b7 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Thu, 18 Aug 2016 14:56:36 +0200 Subject: prepare-release: Use equivs and gdebi-core for travis deps Our previous hack did not really support or groups and other more advanced dependency types. This hack basically removes build profiles, and the @-type depends for tests, and otherwise converts the deps to a package which is then installed via gdebi. --- prepare-release | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'prepare-release') diff --git a/prepare-release b/prepare-release index 1e434a305..f740f2152 100755 --- a/prepare-release +++ b/prepare-release @@ -26,6 +26,26 @@ librarysymbolsfromfile() { done | sort -u } +test_deb_control() { + echo "Package: apt-test-depends" + echo "Version: 1.0" + echo "Architecture: all" + printf "Depends:" + ( + for i in Build-Depends Build-Depends-Indep Build-Depends-Arch; do + grep-dctrl -ns $i -S apt ./debian/control && echo , + done + grep-dctrl -ns Depends -F Tests run-tests ./debian/tests/control + ) | tr '\n' ' '\ + | sed -r -e 's#<[^,<>()@]*>##g' \ + -e 's#@[^,<>()@]*@##g' \ + -e 's#dpkg-dev \([^)]*\)#dpkg-dev#g' \ + -e 's#debhelper \([^)]*\)#debhelper#g' \ + -e 's#@##g' \ + -e 's#,(\s+,)+#, #g' \ + -e 's#\s+# #g' +} + if [ "$1" = 'pre-export' ]; then libraryversioncheck() { local LIBRARY="$1" @@ -158,9 +178,11 @@ elif [ "$1" = 'buildlog' ]; then shift done elif [ "$1" = 'travis-ci' ]; then - apt-get install -qy --no-install-recommends dctrl-tools - apt-get install -qy --no-install-recommends $(grep-dctrl -S -s Build-Depends,Build-Depends-Indep,Build-Depends-Arch apt ./debian/control | sed -e 's#([^)]*)##g' -e 's#^Build-Depends\(-Indep\|-Arch\)\?: ##' -e 's#<.*>##g' | tr -s '\n,' ' ') - apt-get install -qy --no-install-recommends $(grep-dctrl -F Tests -s Depends run-tests ./debian/tests/control | tr -s '\n,' ' ' | cut -d'@' -f 4- | sed -e 's#gnupg1#gnupg2#' -e 's#gpgv1#gpgv2#') + apt-get install -qy --no-install-recommends dctrl-tools equivs gdebi-core + + test_deb_control > test-control + equivs-build test-control + gdebi -n apt-test-depends_1.0_all.deb elif [ "$1" = 'coverage' ]; then DIR="${2:-./coverage}" git clean -dfX # remove ignored build artefacts for a clean start -- cgit v1.2.3 From 30ea7a60404ee53393235827202968393951d106 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Fri, 19 Aug 2016 20:37:28 +0200 Subject: test, travis: Quieter testing with a new -qq mode Introduce a new -qq mode for our integration test framework, and make travis use it. The new -qq mode sets MSGLEVEL to 1. In MSGLEVEL=1, no messages are generated for passed tests, and all testcase filenames are printed in the same line. Also install first in travis, do not ls the installed output and run the install with chronic, so we only get output if it failed. Gbp-Dch: ignore --- prepare-release | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'prepare-release') diff --git a/prepare-release b/prepare-release index f740f2152..0004de310 100755 --- a/prepare-release +++ b/prepare-release @@ -178,7 +178,7 @@ elif [ "$1" = 'buildlog' ]; then shift done elif [ "$1" = 'travis-ci' ]; then - apt-get install -qy --no-install-recommends dctrl-tools equivs gdebi-core + apt-get install -qy --no-install-recommends dctrl-tools equivs gdebi-core moreutils test_deb_control > test-control equivs-build test-control -- cgit v1.2.3