diff options
Diffstat (limited to 'adei/scripts/adei-branch.sh')
-rwxr-xr-x | adei/scripts/adei-branch.sh | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/adei/scripts/adei-branch.sh b/adei/scripts/adei-branch.sh new file mode 100755 index 0000000..6fa8db2 --- /dev/null +++ b/adei/scripts/adei-branch.sh @@ -0,0 +1,51 @@ +#! /bin/bash + +function branch { + url="$1" + bzr branch "$url" +} + +if [ ! -d /adei/src -o ! -d /adei/tmp -o ! -d /adei/sys -o ! -d /adei/cfg ]; then + echo "Incorrect volume configration, we expect /adei folder with populated docker volumes" + exit 1 +fi + + +if [ ! -f /adei/src/VERSION ]; then + bzr branch -r $ADEI_REVISION --use-existing-dir http://darksoft.org/bzr/adei/trunk/ /adei/src + ( + cd /adei/src + make + + [ -d tmp ] && rm tmp + ln -s ../tmp tmp + chmod 0777 /adei/tmp + + # Additional setups are clonned based on the environment for adei container creation + # but can be easily added in future. We cache all non-excluded setups. The .exclude + # file is removed afterwards from all + + if [ ! -f /adei/cfg/config.actual.php ]; then + + cp -a /opt/configs/config.*.php /adei/cfg/ + fi + + ln -s ../cfg/config.actual.php config.actual.php + ln -s ../cfg/config.override.php config.override.php + ) +fi + +( + cd /adei/src + for setup in $ADEI_ENABLED_SETUPS $ADEI_SETUP; do + if [[ ! -a setups/$setup ]]; then + if [[ ! -a /adei/cfg/$setup ]]; then + ( + cd /adei/cfg/ + branch "http://darksoft.org/bzr/adei/setups/$setup" + ) + fi + ln -s ../../cfg/$setup setups/$setup + fi + done +) |