mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
43 lines
1.4 KiB
Bash
Executable file
43 lines
1.4 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# Auto setup of buildbot configuration. Package installation is being done
|
|
# on buildbot.pp
|
|
# Dependencies: buildbot, buildbot-slave, supervisor
|
|
|
|
SLAVE_NAME='buildworker'
|
|
SLAVE_SOCKET='localhost:9989'
|
|
BUILDBOT_PWD='pass-docker'
|
|
USER='vagrant'
|
|
ROOT_PATH='/data/buildbot'
|
|
DOCKER_PATH='/data/docker'
|
|
BUILDBOT_CFG="$DOCKER_PATH/buildbot/buildbot-cfg"
|
|
IP=$(grep BUILDBOT_IP /data/docker/buildbot/Vagrantfile | awk -F "'" '{ print $2; }')
|
|
|
|
function run { su $USER -c "$1"; }
|
|
|
|
export PATH=/bin:sbin:/usr/bin:/usr/sbin:/usr/local/bin
|
|
|
|
# Exit if buildbot has already been installed
|
|
[ -d "$ROOT_PATH" ] && exit 0
|
|
|
|
# Setup buildbot
|
|
run "mkdir -p ${ROOT_PATH}"
|
|
cd ${ROOT_PATH}
|
|
run "buildbot create-master master"
|
|
run "cp $BUILDBOT_CFG/master.cfg master"
|
|
run "sed -i 's/localhost/$IP/' master/master.cfg"
|
|
run "buildslave create-slave slave $SLAVE_SOCKET $SLAVE_NAME $BUILDBOT_PWD"
|
|
|
|
# Allow buildbot subprocesses (docker tests) to properly run in containers,
|
|
# in particular with docker -u
|
|
run "sed -i 's/^umask = None/umask = 000/' ${ROOT_PATH}/slave/buildbot.tac"
|
|
|
|
# Setup supervisor
|
|
cp $BUILDBOT_CFG/buildbot.conf /etc/supervisor/conf.d/buildbot.conf
|
|
sed -i "s/^chmod=0700.*0700./chmod=0770\nchown=root:$USER/" /etc/supervisor/supervisord.conf
|
|
kill -HUP `pgrep -f "/usr/bin/python /usr/bin/supervisord"`
|
|
|
|
# Add git hook
|
|
cp $BUILDBOT_CFG/post-commit $DOCKER_PATH/.git/hooks
|
|
sed -i "s/localhost/$IP/" $DOCKER_PATH/.git/hooks/post-commit
|
|
|