]> arthur.barton.de Git - bup.git/blob - t/test-release-archive.sh
Fix release archives and add tests
[bup.git] / t / test-release-archive.sh
1 #!/usr/bin/env bash
2 . ./wvtest-bup.sh || exit $?
3 . t/lib.sh || exit $?
4 . config/config.vars.sh
5
6 set -o pipefail
7
8 WVPASS git status > /dev/null
9
10 if ! git diff-index --quiet HEAD; then
11     WVDIE "uncommitted changes; cannot continue"
12 fi
13
14 top="$(WVPASS pwd)" || exit $?
15 tmpdir="$(WVPASS wvmktempdir)" || exit $?
16
17 bup() { "$top/bup" "$@"; }
18
19 WVPASS cd "$tmpdir"
20
21 WVPASS git clone "$top" clone
22
23 for ver in 11.11 11.11.11; do
24     WVSTART "version $ver"
25     WVPASS cd clone
26     WVPASS git tag "$ver"
27     WVPASS git archive --prefix=bup-"$ver"/ -o "$tmpdir"/bup-"$ver".tgz "$ver"
28     WVPASS cd "$tmpdir"
29     WVPASS tar xzf bup-"$ver".tgz
30     WVPASS cd bup-"$ver"
31     WVPASS "$bup_make"
32     WVPASSEQ "$ver" "$(./bup version)"
33     WVPASS cd "$tmpdir"
34 done
35
36 WVSTART 'make check in unpacked archive'
37 WVPASS cd bup-11.11.11
38 if ! "$bup_make" -j5 check > archive-tests.log 2>&1; then
39     cat archive-tests.log 1>&2
40     WVPASS false
41 fi
42
43 WVPASS cd "$top"
44 WVPASS rm -rf "$tmpdir"