| #!/bin/bash |
| |
| # Helper for running things in a temporary directory; used for docs |
| # building, unittests, etc. |
| |
| set -e |
| |
| tmpdir=$(mktemp -d -t gntbuild.XXXXXXXX) |
| trap "rm -rf $tmpdir" EXIT |
| |
| # fully copy items |
| cp -r autotools daemons scripts lib tools qa $tmpdir |
| |
| if [[ -z "$COPY_DOC" ]]; then |
| mkdir $tmpdir/doc |
| ln -s $PWD/doc/examples $tmpdir/doc |
| else |
| # Building documentation requires all files |
| cp -r doc $tmpdir |
| fi |
| |
| mkdir $tmpdir/test/ |
| cp -r test/py $tmpdir/test/py |
| ln -s $PWD/test/data $tmpdir/test |
| ln -s $PWD/test/hs $tmpdir/test |
| |
| mv $tmpdir/lib $tmpdir/ganeti |
| ln -T -s $tmpdir/ganeti $tmpdir/lib |
| |
| mkdir -p $tmpdir/src $tmpdir/test/hs |
| for hfile in htools ganeti-confd mon-collector; do |
| if [ -e src/$hfile ]; then |
| ln -s $PWD/src/$hfile $tmpdir/src/ |
| fi |
| done |
| |
| cd $tmpdir && GANETI_TEMP_DIR="$tmpdir" "$@" |