From: Brian Warner Date: Wed, 17 Sep 2008 01:37:02 +0000 (-0700) Subject: #249: add 'test-desert-island', to assert that a tahoe-deps.tar.gz -enabled build... X-Git-Url: https://git.rkrishnan.org/architecture.txt?a=commitdiff_plain;h=1853020a5fe66012522f5a00fdbe55da606f105f;p=tahoe-lafs%2Ftahoe-lafs.git #249: add 'test-desert-island', to assert that a tahoe-deps.tar.gz -enabled build does not download anything --- diff --git a/Makefile b/Makefile index 8f605ed6..d262b5e7 100644 --- a/Makefile +++ b/Makefile @@ -245,6 +245,18 @@ clean: find-trailing-spaces: $(PYTHON) misc/find-trailing-spaces.py -r src +# The test-desert-island target grabs the tahoe-deps tarball, unpacks it, +# does a build, then asserts that the build did not try to download anything +# as it ran. Invoke this on a new tree, or after a 'clean', to make sure the +# support/lib/ directory is gone. + +test-desert-island: + wget http://allmydata.org/source/tahoe/tarballs/tahoe-deps.tar.gz + tar xf tahoe-deps.tar.gz + $(MAKE) 2>&1 | tee make.out + $(PYTHON) misc/check-build.py make.out no-downloads + + # TARBALL GENERATION .PHONY: tarballs upload-tarballs tarballs: diff --git a/misc/check-build.py b/misc/check-build.py new file mode 100644 index 00000000..1e6e9c54 --- /dev/null +++ b/misc/check-build.py @@ -0,0 +1,22 @@ +#! /usr/bin/env python + +# This helper script is used with the 'test-desert-island' Makefile target. + +import sys + +good = True +build_out = sys.argv[1] +mode = sys.argv[2] + +for line in open(build_out, "r"): + if mode == "no-downloads" and "downloading" in line.lower(): + print line, + good = False +if good: + if mode == "no-downloads": + print "Good: build did not try to download any files" + sys.exit(0) +else: + if mode == "no-downloads": + print "Failed: build tried to download files" + sys.exit(1)