chiark / gitweb /
Test suite: Provide tests which check that all our various build operations run the...
[dgit.git] / tests / tests / build-modes-sbuild
diff --git a/tests/tests/build-modes-sbuild b/tests/tests/build-modes-sbuild
new file mode 100755 (executable)
index 0000000..826c467
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/bash
+set -e
+. tests/lib
+. $troot/lib-build-modes
+
+t-dependencies sbuild
+t-restrict x-dgit-schroot-build
+
+arch=$(dpkg-architecture -qDEB_BUILD_ARCH)
+after-hook () {
+       # sbuild likes to run the package clean target in the chroot,
+       # which isn't necessary in our case.  We don't disable it in
+       # dgit because we want to do what sbuild does, in case there
+       # are packages which don't build unless their clean target was
+       # run.  We know it must be running it in the chroot because we
+       # provide sbuild with the dsc, not the tree, so we simply
+       # ignore all executions of the clean target by schroot.
+       sed '
+               s/^EXAMPLE RULES TARGET clean/HOOK SUPPRESSED &/;
+       ' ../example_1.0_$arch.build >>$bmlog
+}
+bm_quirk_after_act=after-hook
+
+bm-prep
+
+act="sbuild -c build"
+real_act="$act --no-arch-all"
+
+e_source=true
+e_targets='build-arch binary-arch'
+bm-act-iterate
+
+echo ok.