diff --git a/after-start.sh b/after-start.sh index 7645530..027182e 100755 --- a/after-start.sh +++ b/after-start.sh @@ -1,15 +1,16 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} + +NETWORK=${NETWORK:-'kazoo'} echo wait for kazoo.$NETWORK to start '(you may check docker logs if impatient)' watch -g "docker logs kazoo.$NETWORK | grep 'auto-started kapps'" > /dev/null cd kazoo -echo -n "create master account: " +echo -n 'create master account: ' ./sup crossbar_maintenance create_account admin kamailio.$NETWORK admin admin -echo -n "add freeswitch to kazoo: " +echo -n 'add freeswitch to kazoo: ' ./sup ecallmgr_maintenance add_fs_node freeswitch@freeswitch.$NETWORK -echo -n "enable console debug: " +echo -n 'enable console debug: ' ./sup kazoo_maintenance console_level debug echo wait fot freeswitch to complete connect @@ -33,8 +34,8 @@ rm -rf apps docker exec -i --user root kazoo.$NETWORK rm -rf apps echo refresh kamailio dispatcher -docker exec -i kamailio.$NETWORK kamcmd dispatcher.reload +docker exec -i kamailio.$NETWORK kamcmd dispatcher.reload echo commit couchdb to couchdb-init docker commit couchdb.$NETWORK $NETWORK/couchdb-init -cd ../ +cd .. diff --git a/base-os/Dockerfile b/base-os/Dockerfile index 2628aeb..81fc7cc 100644 --- a/base-os/Dockerfile +++ b/base-os/Dockerfile @@ -1,6 +1,8 @@ FROM debian:jessie MAINTAINER Roman Galeev +ARG NETWORK + ENV DEBIAN_FRONTEND noninteractive ENV APT_LISTCHANGES_FRONTEND=none diff --git a/base-os/build.sh b/base-os/build.sh index b86ae24..b702880 100755 --- a/base-os/build.sh +++ b/base-os/build.sh @@ -1,3 +1,7 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -docker build $BUILD_FLAGS -t $NETWORK/base-os . + +NETWORK=${NETWORK:-'kazoo'} + +docker build $BUILD_FLAGS \ + --build-arg NETWORK=$NETWORK \ + -t $NETWORK/base-os . diff --git a/bin/docker-cleanup b/bin/docker-cleanup index 070d1a8..011ad1f 100755 --- a/bin/docker-cleanup +++ b/bin/docker-cleanup @@ -1,4 +1,5 @@ #!/bin/sh -e + docker rm $(docker ps -a --filter status=dead -q) docker rm $(docker ps -a --filter status=exited -q) docker rmi $(docker images -a --filter=dangling=true -q) diff --git a/bin/find-debian-deps.sh b/bin/find-debian-deps.sh index f885b3d..2021492 100755 --- a/bin/find-debian-deps.sh +++ b/bin/find-debian-deps.sh @@ -1,6 +1,7 @@ #!/bin/bash -DIR=${1:-"./"} + +DIR=${1:-'./'} find $DIR | while read file do - objdump -p $file 2>/dev/null | grep NEEDED + objdump -p $file 2>/dev/null | grep NEEDED done | while read a b; do echo $b; done | sort | uniq | while read file; do dpkg -S $file 2>/dev/null; done | cut -d: -f 1 | sort | uniq diff --git a/bin/get-commit b/bin/get-commit index d4f3bbf..78193b6 100755 --- a/bin/get-commit +++ b/bin/get-commit @@ -1,8 +1,9 @@ #!/bin/sh -e -if [ "$1" = "" ] + +if [ "$1" = '' ] then - echo Usage: $0 remote-git-uri - exit + echo Usage: $0 remote-git-uri + exit fi -git ls-remote $1 | head -1 | sed "s/HEAD//" +git ls-remote $1 | head -1 | sed 's/HEAD//' diff --git a/bin/get-ip b/bin/get-ip index 0648cc5..8d6540b 100755 --- a/bin/get-ip +++ b/bin/get-ip @@ -1,9 +1,10 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -if [ "$1" = "" ] + +NETWORK=${NETWORK:-'kazoo'} +if [ "$1" = '' ] then - echo Usage: $0 container - exit + echo Usage: $0 container + exit fi -docker inspect --format "{{ (index .NetworkSettings.Networks \"$NETWORK\").IPAddress }}" $1 +docker inspect --format '{{ (index .NetworkSettings.Networks "'$NETWORK'").IPAddress }}' $1 diff --git a/bin/uncolor b/bin/uncolor index c171b5a..29459a8 100755 --- a/bin/uncolor +++ b/bin/uncolor @@ -1,2 +1,3 @@ #!/bin/sh -e -sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" + +sed -r 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g' diff --git a/build.sh b/build.sh index 04fc838..bd2e559 100755 --- a/build.sh +++ b/build.sh @@ -1,17 +1,35 @@ -#!/bin/bash +#!/bin/bash -e + INSTALLED=`docker version --format '{{.Server.Version}}'` REQUIRED="1.9.0" -if [ "$(printf "$REQUIRED\n$INSTALLED" | sort -V | head -n1)" == "$INSTALLED" ] && [ "$INSTALLED" != "$REQUIRED" ] +if [ "$INSTALLED" != "$REQUIRED" ] && [ "$(printf "$REQUIRED\n$INSTALLED" | sort -V | head -n1)" == "$INSTALLED" ] then - echo Docker version $INSTALLED is probably too old, required version is $REQUIRED - exit + echo Docker version $INSTALLED is probably too old, required version is $REQUIRED + exit fi -cd base-os && ./build.sh -cd ../kazoo-erlang && ./build.sh -cd ../rabbitmq && ./build.sh -cd ../couchdb &&./build.sh -cd ../kamailio && ./build.sh d62fd3e4976633aa6b827d527f4e15de0b08068b + +pushd base-os +./build.sh +popd +pushd kazoo-erlang +./build.sh +popd +pushd rabbitmq +./build.sh +popd +pushd couchdb +./build.sh +popd +pushd kamailio +./build.sh 4.4.5 +popd +pushd freeswitch # 1.6.13 -cd ../freeswitch && ./build.sh e755b430da70bd63eebf1dfddacdce48ce863fce -cd ../kazoo && ./build.sh -cd ../monster-ui && ./build.sh +./build.sh e755b430da70bd63eebf1dfddacdce48ce863fce +popd +pushd kazoo +./build.sh +popd +pushd monster-ui +./build.sh +popd diff --git a/cluster/after-start.sh b/cluster/after-start.sh index f378cf4..c6d0326 100755 --- a/cluster/after-start.sh +++ b/cluster/after-start.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + echo Init the system ./sup crossbar_maintenance create_account admin kamailio.kazoo admin admin @@ -12,4 +13,4 @@ rm -rf apps ./sup crossbar_maintenance init_apps /home/user/apps http://kazoo.kazoo:8000/v2 -docker exec -ti kamailio.kazoo kamctl dispatcher reload +docker exec -ti kamailio.kazoo kamctl dispatcher reload diff --git a/cluster/run.sh b/cluster/run.sh index 1374629..e19bafb 100755 --- a/cluster/run.sh +++ b/cluster/run.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + docker network create kazoo docker network create zone1 docker network create zone2 @@ -13,11 +14,11 @@ RABBITMQ_IP=$(bin/get-ip rabbitmq.kazoo) COUCHDB_IP=$(bin/get-ip couchdb.kazoo) export NETWORK=zone1 -kazoo/run.sh "-td --add-host rabbitmq.kazoo:$RABBITMQ_IP --add-host couchdb.kazoo:$COUCHDB_IP" +kazoo/run.sh '-td --add-host rabbitmq.kazoo:'$RABBITMQ_IP' --add-host couchdb.kazoo:'$COUCHDB_IP freeswitch/run.sh export NETWORK=zone2 -kazoo/run.sh "-td --add-host rabbitmq.kazoo:$RABBITMQ_IP --add-host couchdb.kazoo:$COUCHDB_IP" +kazoo/run.sh '-td --add-host rabbitmq.kazoo:'$RABBITMQ_IP' --add-host couchdb.kazoo:'$COUCHDB_IP freeswitch/run.sh # disable isolation diff --git a/cluster/stop.sh b/cluster/stop.sh index 700df29..5e3fd4d 100755 --- a/cluster/stop.sh +++ b/cluster/stop.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + docker stop monster-ui.kazoo docker stop kamailio.kazoo docker stop couchdb.kazoo @@ -13,4 +14,3 @@ docker stop kazoo.zone2 docker network rm kazoo docker network rm zone1 docker network rm zone2 - diff --git a/cluster/sup b/cluster/sup index bfd8531..5451521 100755 --- a/cluster/sup +++ b/cluster/sup @@ -1,2 +1,3 @@ #!/bin/sh -e + docker exec -ti kazoo.zone1 sup "$*" diff --git a/couchdb/build.sh b/couchdb/build.sh index 75cdc70..eb719eb 100755 --- a/couchdb/build.sh +++ b/couchdb/build.sh @@ -1,3 +1,6 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -docker build $BUILD_FLAGS -t $NETWORK/couchdb2 . + +NETWORK=${NETWORK:-'kazoo'} + +docker build $BUILD_FLAGS \ + -t $NETWORK/couchdb2 . diff --git a/couchdb/run.sh b/couchdb/run.sh index 662e812..6e27693 100755 --- a/couchdb/run.sh +++ b/couchdb/run.sh @@ -1,20 +1,21 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -IMAGE=${2:-"kazoo/couchdb2"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +IMAGE=${2:-'kazoo/couchdb2'} +NETWORK=${NETWORK:-'kazoo'} NAME=couchdb.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - $IMAGE + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + $IMAGE diff --git a/couchdb1.6/build.sh b/couchdb1.6/build.sh index 6768315..4b0d7bc 100755 --- a/couchdb1.6/build.sh +++ b/couchdb1.6/build.sh @@ -1,3 +1,6 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -docker build $BUILD_FLAGS -t $NETWORK/couchdb . + +NETWORK=${NETWORK:-'kazoo'} + +docker build $BUILD_FLAGS \ + -t $NETWORK/couchdb . diff --git a/couchdb1.6/run.sh b/couchdb1.6/run.sh index 28c7220..989ac2a 100755 --- a/couchdb1.6/run.sh +++ b/couchdb1.6/run.sh @@ -1,20 +1,21 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -IMAGE=${2:-"kazoo/couchdb"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +IMAGE=${2:-'kazoo/couchdb'} +NETWORK=${NETWORK:-'kazoo'} NAME=couchdb.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - $IMAGE + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + $IMAGE diff --git a/export/all.sh b/export/all.sh index b0e365c..8578684 100755 --- a/export/all.sh +++ b/export/all.sh @@ -1,6 +1,7 @@ #!/bin/bash -export NETWORK=${NETWORK:-"kazoo"} -docker rmi -f $(docker images | grep "2600hz/" | cut -d' ' -f 1) + +export NETWORK=${NETWORK:-'kazoo'} +docker rmi -f $(docker images | grep '2600hz/' | cut -d' ' -f 1) cd ~/kazoo-docker/export/couchdb && ./build.sh cd ../rabbitmq && ./build.sh cd ../kazoo && ./extract.sh kazoo.$NETWORK && ./build.sh diff --git a/export/rabbitmq/run.sh b/export/rabbitmq/run.sh index 7b4e116..d0d7ba2 100755 --- a/export/rabbitmq/run.sh +++ b/export/rabbitmq/run.sh @@ -1,17 +1,19 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=rabbitmq.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi + echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - 2600hz/rabbitmq + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + 2600hz/rabbitmq diff --git a/freeswitch/Dockerfile b/freeswitch/Dockerfile index 7fe215a..c45ad13 100644 --- a/freeswitch/Dockerfile +++ b/freeswitch/Dockerfile @@ -3,7 +3,9 @@ MAINTAINER Roman Galeev USER root -ARG REPO=https://freeswitch.org/stash/scm/fs/freeswitch.git +ARG NETWORK +ARG REPO +ARG FREESWITCH_COMMIT ARG CONFIG=master COPY build/setup-os.sh build/setup-os.sh @@ -12,10 +14,6 @@ RUN build/setup-os.sh COPY build/setup.sh build/setup.sh RUN build/setup.sh -COPY etc/commit commit -COPY build/setup-commit.sh build/setup-commit.sh -RUN build/setup-commit.sh - COPY etc/modules.conf freeswitch/modules.conf COPY build/configure.sh build/configure.sh RUN build/configure.sh diff --git a/freeswitch/build.sh b/freeswitch/build.sh index e603908..e92e726 100755 --- a/freeswitch/build.sh +++ b/freeswitch/build.sh @@ -1,8 +1,11 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -REPO=${2:-"https://freeswitch.org/stash/scm/fs/freeswitch.git"} -COMMIT=${1:-"$(../bin/get-commit $REPO)"} -echo $COMMIT > etc/commit +NETWORK=${NETWORK:-'kazoo'} +REPO=${2:-'https://freeswitch.org/stash/scm/fs/freeswitch.git'} +COMMIT=${1:-"$(../bin/get-commit $REPO)"} -docker build $BUILD_FLAGS --build-arg REPO=$REPO -t $NETWORK/freeswitch . +docker build $BUILD_FLAGS \ + --build-arg NETWORK=$NETWORK \ + --build-arg REPO=$REPO \ + --build-arg FREESWITCH_COMMIT=$COMMIT \ + -t $NETWORK/freeswitch . diff --git a/freeswitch/build/build.sh b/freeswitch/build/build.sh index 10ea565..eb1d527 100755 --- a/freeswitch/build/build.sh +++ b/freeswitch/build/build.sh @@ -1,3 +1,3 @@ #!/bin/sh -e -cd freeswitch -make + +cd freeswitch && make diff --git a/freeswitch/build/setup-commit.sh b/freeswitch/build/setup-commit.sh deleted file mode 100755 index 52623f0..0000000 --- a/freeswitch/build/setup-commit.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -e -COMMIT=$(cat commit) -cd freeswitch && git reset --hard $COMMIT diff --git a/freeswitch/build/setup-config.sh b/freeswitch/build/setup-config.sh index 5cd7ee0..8f71bd6 100755 --- a/freeswitch/build/setup-config.sh +++ b/freeswitch/build/setup-config.sh @@ -1,6 +1,3 @@ #!/bin/sh -e -CONFIG=${CONFIG:-"master"} -git clone https://github.com/2600hz/kazoo-configs.git kazoo-configs -cd kazoo-configs -git reset --hard $CONFIG -cd ../ + +git clone --depth 1 --branch="$CONFIG" https://github.com/2600hz/kazoo-configs.git kazoo-configs diff --git a/freeswitch/build/setup-os.sh b/freeswitch/build/setup-os.sh index 80a37c5..8b2368f 100755 --- a/freeswitch/build/setup-os.sh +++ b/freeswitch/build/setup-os.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + apt-get install -y --force-yes freeswitch-video-deps-most \ ladspa-sdk tap-plugins swh-plugins libgsm1 libfftw3-3 autotalent \ librabbitmq-dev diff --git a/freeswitch/build/setup.sh b/freeswitch/build/setup.sh index f359c2c..c7fca06 100755 --- a/freeswitch/build/setup.sh +++ b/freeswitch/build/setup.sh @@ -1,2 +1,3 @@ #!/bin/sh -e -git clone $REPO freeswitch + +git clone --depth 1 $REPO --branch=$FREESWITCH_COMMIT freeswitch diff --git a/freeswitch/run.sh b/freeswitch/run.sh index ae8eb07..ca0052e 100755 --- a/freeswitch/run.sh +++ b/freeswitch/run.sh @@ -1,25 +1,26 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -IMAGE=${2:-"kazoo/freeswitch"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +IMAGE=${2:-'kazoo/freeswitch'} +NETWORK=${NETWORK:-'kazoo'} NAME=${NAME:-"freeswitch.$NETWORK"} KAMAILIO=${KAMAILIO:-"kamailio.$NETWORK"} if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - --env RABBITMQ=${RABBITMQ:-"rabbitmq.$NETWORK"} \ - $IMAGE + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + --env RABBITMQ=${RABBITMQ:-"rabbitmq.$NETWORK"} \ + $IMAGE echo -n "adding dispatcher $NAME to kamailio $KAMAILIO " docker exec $KAMAILIO dispatcher_add.sh 1 $NAME diff --git a/hosts.sh b/hosts.sh index d490931..587dbff 100755 --- a/hosts.sh +++ b/hosts.sh @@ -1,10 +1,11 @@ #!/bin/sh -e -NETWORK=${1:-"kazoo"} + +NETWORK=${1:-'kazoo'} for CONTAINER in monster-ui kazoo rabbitmq freeswitch couchdb makebusy makebusy-fs-auth makebusy-fs-pbx makebusy-fs-carrier do - if [ "$(docker inspect -f {{.State.Running}} $CONTAINER.$NETWORK)" = "true" ] - then - echo `bin/get-ip $CONTAINER.$NETWORK` $CONTAINER.$NETWORK - fi + if [ "$(docker inspect -f {{.State.Running}} $CONTAINER.$NETWORK)" = 'true' ] + then + echo $(bin/get-ip $CONTAINER.$NETWORK) $CONTAINER.$NETWORK + fi done exit diff --git a/kamailio/Dockerfile b/kamailio/Dockerfile index 99e4715..e041eb8 100644 --- a/kamailio/Dockerfile +++ b/kamailio/Dockerfile @@ -4,9 +4,11 @@ MAINTAINER Roman Galeev USER root WORKDIR /root -ENV NETWORK=kazoo ENV RABBITMQ=rabbitmq.$NETWORK -ARG REPO=https://github.com/kamailio/kamailio.git + +ARG NETWORK +ARG REPO +ARG KAMAILIO_COMMIT ARG CONFIG=master COPY build/setup-os.sh build/setup-os.sh @@ -15,10 +17,6 @@ RUN build/setup-os.sh COPY build/setup.sh build/setup.sh RUN build/setup.sh -COPY etc/commit commit -COPY build/setup-commit.sh build/setup-commit.sh -RUN build/setup-commit.sh - COPY build/configure.sh configure.sh RUN ./configure.sh diff --git a/kamailio/build.sh b/kamailio/build.sh index 60a3ffc..11f01f6 100755 --- a/kamailio/build.sh +++ b/kamailio/build.sh @@ -1,12 +1,12 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -REPO=${2:-"https://github.com/kamailio/kamailio.git"} -COMMIT=${1:-"$(../bin/get-commit $REPO)"} -echo $COMMIT > etc/commit +NETWORK=${NETWORK:-'kazoo'} +REPO=${2:-'https://github.com/kamailio/kamailio.git'} +COMMIT=${1:-"$(../bin/get-commit $REPO)"} docker build $BUILD_FLAGS \ - --build-arg REPO=$REPO \ - --build-arg CONFIG=ef98bf453cb81475bbf5ccbc0635749a975b093c \ - -t $NETWORK/kamailio \ - . + --build-arg NETWORK=$NETWORK \ + --build-arg REPO=$REPO \ + --build-arg KAMAILIO_COMMIT=$COMMIT \ + --build-arg CONFIG=ef98bf453cb81475bbf5ccbc0635749a975b093c \ + -t $NETWORK/kamailio . diff --git a/kamailio/build/build.sh b/kamailio/build/build.sh index 19042ea..df085fa 100755 --- a/kamailio/build/build.sh +++ b/kamailio/build/build.sh @@ -1,2 +1,3 @@ #!/bin/sh -e + cd kamailio && make diff --git a/kamailio/build/configure.sh b/kamailio/build/configure.sh index 3cb3ce9..e695c4e 100755 --- a/kamailio/build/configure.sh +++ b/kamailio/build/configure.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + cd kamailio INCLUDE_MODULES="acc \ @@ -138,9 +139,9 @@ xhttp_rpc \ xprint" make FLAVOUR=kamailio cfg \ - prefix=/usr/local/kamailio \ - skip_modules="${EXCLUDE_MODULES}" \ - include_modules="${INCLUDE_MODULES}" \ - SCTP=0 \ - STUN=1 \ - TLS_HOOKS=1 + prefix=/usr/local/kamailio \ + skip_modules="${EXCLUDE_MODULES}" \ + include_modules="${INCLUDE_MODULES}" \ + SCTP=0 \ + STUN=1 \ + TLS_HOOKS=1 diff --git a/kamailio/build/dispatcher_add.sh b/kamailio/build/dispatcher_add.sh index 0f755f8..7e52baf 100755 --- a/kamailio/build/dispatcher_add.sh +++ b/kamailio/build/dispatcher_add.sh @@ -1,9 +1,10 @@ #!/bin/sh -e + ID=$1 FREESWITCH=$2 if [ -z "$FREESWITCH" ] then - echo Usage: $0 id freeswitch_node - exit + echo Usage: $0 id freeswitch_node + exit fi kamctl dispatcher add $ID sip:$FREESWITCH:11000 0 1 ' ' ' ' diff --git a/kamailio/build/install.sh b/kamailio/build/install.sh index d5a20af..d85d0d3 100755 --- a/kamailio/build/install.sh +++ b/kamailio/build/install.sh @@ -39,4 +39,3 @@ mkdir -p /var/run/kamailio/ chown kamailio:kamailio /var/run/kamailio/ chown -R kamailio:kamailio $CFG_BASE - diff --git a/kamailio/build/run.sh b/kamailio/build/run.sh index 82c0058..54750cc 100755 --- a/kamailio/build/run.sh +++ b/kamailio/build/run.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + export SHM_MEMORY=64 export PKG_MEMORY=8 export USER=kamailio @@ -9,5 +10,5 @@ export GROUP=kamailio sleep 5 && kamcmd dispatcher.reload exec /usr/local/kamailio/sbin/kamailio -E -DD \ - -f /usr/local/kamailio/etc/kamailio/kamailio.cfg \ - -m $SHM_MEMORY -M $PKG_MEMORY -u $USER -g $GROUP + -f /usr/local/kamailio/etc/kamailio/kamailio.cfg \ + -m $SHM_MEMORY -M $PKG_MEMORY -u $USER -g $GROUP diff --git a/kamailio/build/setup-commit.sh b/kamailio/build/setup-commit.sh deleted file mode 100755 index ad68710..0000000 --- a/kamailio/build/setup-commit.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -e -COMMIT=$(cat /root/commit) -cd kamailio && git reset --hard $COMMIT diff --git a/kamailio/build/setup-config.sh b/kamailio/build/setup-config.sh index 5cd7ee0..3cbbae3 100755 --- a/kamailio/build/setup-config.sh +++ b/kamailio/build/setup-config.sh @@ -1,6 +1,3 @@ #!/bin/sh -e -CONFIG=${CONFIG:-"master"} -git clone https://github.com/2600hz/kazoo-configs.git kazoo-configs -cd kazoo-configs -git reset --hard $CONFIG -cd ../ + +git clone --depth 1 --branch $CONFIG https://github.com/2600hz/kazoo-configs.git kazoo-configs diff --git a/kamailio/build/setup-os.sh b/kamailio/build/setup-os.sh index fb73d7b..d5d497f 100755 --- a/kamailio/build/setup-os.sh +++ b/kamailio/build/setup-os.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + apt-get -y install \ make flex bison libmysqlclient-dev \ libssl-dev libcurl4-openssl-dev \ diff --git a/kamailio/build/setup.sh b/kamailio/build/setup.sh index 591537d..ab1b622 100755 --- a/kamailio/build/setup.sh +++ b/kamailio/build/setup.sh @@ -1,2 +1,3 @@ #!/bin/sh -e -git clone $REPO kamailio + +git clone --depth 1 --branch $KAMAILIO_COMMIT $REPO kamailio diff --git a/kamailio/run.sh b/kamailio/run.sh index 2138854..d3ad0d7 100755 --- a/kamailio/run.sh +++ b/kamailio/run.sh @@ -1,21 +1,22 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=${NAME:-"kamailio.$NETWORK"} KAZOO=${KAZOO:-"kazoo.$NETWORK"} if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - --env RABBITMQ=${RABBITMQ:-"rabbitmq.$NETWORK"} \ - kazoo/kamailio + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + --env RABBITMQ=${RABBITMQ:-"rabbitmq.$NETWORK"} \ + kazoo/kamailio diff --git a/kamailio4.0/Dockerfile b/kamailio4.0/Dockerfile index 79e805b..e01ae2b 100644 --- a/kamailio4.0/Dockerfile +++ b/kamailio4.0/Dockerfile @@ -1,11 +1,12 @@ FROM kazoo/base-os MAINTAINER Roman Galeev -ENV NETWORK=kazoo ENV RABBITMQ=rabbitmq.$NETWORK ENV FREESWITCH=freeswitch.$NETWORK +ARG NETWORK ARG REPO=https://github.com/kamailio/kamailio.git +ARG KAMAILIO40_COMMIT USER root WORKDIR /root @@ -13,7 +14,6 @@ WORKDIR /root COPY build/setup-os.sh build/setup-os.sh RUN build/setup-os.sh -COPY etc/commit /root/commit COPY build/setup.sh build/setup.sh RUN build/setup.sh diff --git a/kamailio4.0/build.sh b/kamailio4.0/build.sh index ec03245..5151f7b 100755 --- a/kamailio4.0/build.sh +++ b/kamailio4.0/build.sh @@ -1,6 +1,11 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -REPO=${2:-"https://github.com/kamailio/kamailio.git"} + +NETWORK=${NETWORK:-'kazoo'} +REPO=${2:-'https://github.com/kamailio/kamailio.git'} COMMIT=${1:-"$(../bin/get-commit $REPO)"} -echo $COMMIT > etc/commit -docker build $BUILD_FLAGS --build-arg REPO=$REPO -t $NETWORK/kamailio . + +docker build $BUILD_FLAGS \ + --build-arg NETWORK=$NETWORK \ + --build-arg REPO=$REPO \ + --build-arg KAMAILIO40_COMMIT=$COMMIT \ + -t $NETWORK/kamailio . diff --git a/kamailio4.0/build/build.sh b/kamailio4.0/build/build.sh index 9e0f25c..6c6c9f1 100755 --- a/kamailio4.0/build/build.sh +++ b/kamailio4.0/build/build.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + cd libevbuffsock make make install diff --git a/kamailio4.0/build/config-kazoo.sh b/kamailio4.0/build/config-kazoo.sh index 39bcc24..68d1e00 100755 --- a/kamailio4.0/build/config-kazoo.sh +++ b/kamailio4.0/build/config-kazoo.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + cp -a etc/kamailio /etc/ kamdbctl reinit diff --git a/kamailio4.0/build/config-local.sh b/kamailio4.0/build/config-local.sh index b0eca84..a12f6fa 100755 --- a/kamailio4.0/build/config-local.sh +++ b/kamailio4.0/build/config-local.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + cp /etc/kamailio/local.cfg.orig /etc/kamailio/local.cfg LOCAL=/etc/kamailio/local.cfg @@ -11,7 +12,6 @@ MY_IP=$(hostname -i) /bin/sed -i "s/kamailio.2600hz.com/$HOSTNAME/g" $LOCAL # rabbitmq -/bin/sed -i "s/MY_AMQP_URL!kazoo:\/\/guest:guest@127.0.0.1:5672/MY_AMQP_URL!kazoo:\/\/guest:guest@$RABBITMQ:5672/g" $LOCAL +/bin/sed -i 's%MY_AMQP_URL!kazoo://guest:guest@127.0.0.1:5672%MY_AMQP_URL!kazoo://guest:guest@'$RABBITMQ':5672%g' $LOCAL kamctl dispatcher add 1 sip:$FREESWITCH:11000 0 1 ' ' ' ' - diff --git a/kamailio4.0/build/run.sh b/kamailio4.0/build/run.sh index d82c35c..d5e5bf7 100755 --- a/kamailio4.0/build/run.sh +++ b/kamailio4.0/build/run.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + export SHM_MEMORY=64 export PKG_MEMORY=8 export USER=kamailio @@ -7,6 +8,6 @@ export GROUP=kamailio ./config-local.sh exec /usr/local/sbin/kamailio -E -DD \ - -P /run/kamailio/kamailio.pid \ - -f /etc/kamailio/kamailio.cfg \ - -m $SHM_MEMORY -M $PKG_MEMORY -u $USER -g $GROUP + -P /run/kamailio/kamailio.pid \ + -f /etc/kamailio/kamailio.cfg \ + -m $SHM_MEMORY -M $PKG_MEMORY -u $USER -g $GROUP diff --git a/kamailio4.0/build/setup-os.sh b/kamailio4.0/build/setup-os.sh index ed1ab40..89a3e51 100755 --- a/kamailio4.0/build/setup-os.sh +++ b/kamailio4.0/build/setup-os.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + apt-get -y install \ make flex bison libmysqlclient-dev \ libssl-dev libcurl4-openssl-dev \ diff --git a/kamailio4.0/build/setup.sh b/kamailio4.0/build/setup.sh index fdf524c..503c2b9 100755 --- a/kamailio4.0/build/setup.sh +++ b/kamailio4.0/build/setup.sh @@ -1,8 +1,5 @@ #!/bin/sh -e -COMMIT=$(cat /root/commit) -git clone https://github.com/mreiferson/libevbuffsock libevbuffsock -git clone https://github.com/nsqio/libnsq libnsq -git clone $REPO kamailio -cd kamailio -git checkout $COMMIT -cd ../ + +git clone --depth 1 https://github.com/mreiferson/libevbuffsock libevbuffsock +git clone --depth 1 https://github.com/nsqio/libnsq libnsq +git clone --depth 1 --branch $KAMAILIO40_COMMIT $REPO kamailio diff --git a/kamailio4.0/run.sh b/kamailio4.0/run.sh index 6d11b3c..6bc3ec4 100755 --- a/kamailio4.0/run.sh +++ b/kamailio4.0/run.sh @@ -1,22 +1,23 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=kamailio.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - --env NETWORK=$NETWORK \ - --env RABBITMQ=rabbitmq.$NETWORK \ - --env FREESWITCH=freeswitch.$NETWORK \ - kazoo/kamailio + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + --env NETWORK=$NETWORK \ + --env RABBITMQ=rabbitmq.$NETWORK \ + --env FREESWITCH=freeswitch.$NETWORK \ + kazoo/kamailio diff --git a/kazoo-ci/Dockerfile b/kazoo-ci/Dockerfile index 50c8b10..303cdb9 100644 --- a/kazoo-ci/Dockerfile +++ b/kazoo-ci/Dockerfile @@ -1,9 +1,16 @@ FROM docker MAINTAINER Roman Galeev +EXPOSE 80 + ARG TOKEN ARG DOCKER -EXPOSE 80 +ARG REPO_MB +ARG REPO_MB_CALLFLOW +ARG REPO_MB_CONFERENCE +ARG COMMIT_MB +ARG COMMIT_MB_CALLFLOW +ARG COMMIT_MB_CONFERENCE RUN apk update && apk add --no-cache \ php5-apache2 git openssh php5 php5-curl php5-zlib php5-phar php5-json php5-openssl php5-pcntl bash procps coreutils grep curl jq tini @@ -12,25 +19,20 @@ RUN delgroup $(getent group $DOCKER | cut -d: -f1) && addgroup -g $DOCKER docker USER user WORKDIR /home/user -RUN git clone https://github.com/2600hz/docker ./kazoo-docker \ - && git clone https://github.com/2600hz/make-busy ./make-busy \ +RUN git clone --depth 1 https://github.com/2600hz/docker kazoo-docker \ + && git clone --depth 1 --branch $COMMIT_MB $REPO_MB make-busy \ && cd make-busy/ci \ && ./composer update \ && mkdir -p /home/user/tests \ && cd /home/user/tests \ - && git clone https://$TOKEN@github.com/2600hz/make-busy-callflow.git ./Callflow \ - && git clone https://$TOKEN@github.com/2600hz/make-busy-conference.git ./Conference + && git clone --depth 1 --branch $COMMIT_MB_CALLFLOW $REPO_MB_CALLFLOW Callflow \ + && git clone --depth 1 --branch $COMMIT_MB_CONFERENCE $REPO_MB_CONFERENCE Conference COPY etc/make-busy.conf /etc/apache2/conf.d/make-busy.conf WORKDIR /home/user/make-busy/ci ENV HOME=$WORKDIR -COPY etc/make-busy.commit ./make-busy.commit -COPY etc/make-busy-callflow.commit ./make-busy-callflow.commit -COPY etc/make-busy-conference.commit ./make-busy-conference.commit -COPY build/checkout.sh build/checkout.sh -RUN build/checkout.sh COPY build/run.sh ./run.sh COPY build/volume.sh ./volume.sh diff --git a/kazoo-ci/README.md b/kazoo-ci/README.md index dede772..35b47ff 100644 --- a/kazoo-ci/README.md +++ b/kazoo-ci/README.md @@ -1,6 +1,7 @@ # Kazoo CI -Continious integration server. Accepts Github webhooks and trigger commit-dependent build and test process. +Continious integration server. +Accepts Github webhooks and trigger commit-dependent build and test process. Reports test results back to Github, and provides test run files. # Build and test commit manually diff --git a/kazoo-ci/build.sh b/kazoo-ci/build.sh index fc4007a..e1239f4 100755 --- a/kazoo-ci/build.sh +++ b/kazoo-ci/build.sh @@ -1,12 +1,27 @@ #!/bin/sh -e + TOKEN=$1 DOCKER=${2:-"$(getent group docker | cut -d: -f3)"} if [ -z $TOKEN ] || [ -z $DOCKER ] then - echo Please provide a token to access private repo: $0 token [docker_gid] - exit 1 + echo Please provide a token to access private repo: $0 token [docker_gid] + exit 1 fi -../bin/get-commit https://github.com/2600hz/make-busy > etc/make-busy.commit -../bin/get-commit https://$TOKEN@github.com/2600hz/make-busy-callflow.git > etc/make-busy-callflow.commit -../bin/get-commit https://$TOKEN@github.com/2600hz/make-busy-conference.git > etc/make-busy-conference.commit -docker build $BUILD_FLAGS -t kazoo/ci --build-arg TOKEN=$TOKEN --build-arg DOCKER=$DOCKER . + +repo_mb=https://github.com/2600hz/make-busy +repo_mb_callflow=https://$TOKEN@github.com/2600hz/make-busy-callflow.git +repo_mb_conference=https://$TOKEN@github.com/2600hz/make-busy-conference.git +commit_mb="$(../bin/get-commit $repo_mb)" +commit_mb_callflow="$(../bin/get-commit $repo_mb_callflow)" +commit_mb_conference="$(../bin/get-commit $repo_mb_conference)" + +docker build $BUILD_FLAGS \ + --build-arg TOKEN=$TOKEN \ + --build-arg DOCKER=$DOCKER \ + --build-arg REPO_MB=$repo_mb \ + --build-arg REPO_MB_CALLFLOW=$repo_mb_callflow \ + --build-arg REPO_MB_CONFERENCE=$repo_mb_conference \ + --build-arg COMMIT_MB=$commit_mb \ + --build-arg COMMIT_MB_CALLFLOW=$commit_mb_callflow \ + --build-arg COMMIT_MB_CONFERENCE=$commit_mb_conference \ + -t kazoo/ci . diff --git a/kazoo-ci/build/checkout.sh b/kazoo-ci/build/checkout.sh deleted file mode 100755 index 434f0ff..0000000 --- a/kazoo-ci/build/checkout.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -e -MB=/home/user/make-busy -MB_COMMIT=$(cat $MB/ci/make-busy.commit) -cd $MB && git fetch && git reset --hard $MB_COMMIT - -TESTS=/home/user/tests -CF_COMMIT=$(cat $MB/ci/make-busy-callflow.commit) -cd $TESTS/Callflow && git fetch && git reset --hard $CF_COMMIT - -CONF_COMMIT=$(cat $MB/ci/make-busy-conference.commit) -cd $TESTS/Conference && git fetch && git reset --hard $CONF_COMMIT diff --git a/kazoo-ci/build/run.sh b/kazoo-ci/build/run.sh index e73bbce..b0d65e5 100755 --- a/kazoo-ci/build/run.sh +++ b/kazoo-ci/build/run.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + IP=$(hostname -i) export PHPRC=./php.ini mkdir -p /run/apache2 diff --git a/kazoo-ci/build/volume.sh b/kazoo-ci/build/volume.sh index e988567..d4fee68 100755 --- a/kazoo-ci/build/volume.sh +++ b/kazoo-ci/build/volume.sh @@ -1,12 +1,13 @@ #!/bin/sh -e + if [ -d /home/user/volume ] then - mkdir -p /home/user/volume/log - chown -R user:docker /home/user/volume/log - cd /home/user/tests - for file in * - do - rm -rf /home/user/volume/$file - cp -a /home/user/tests/$file /home/user/volume/ - done + mkdir -p /home/user/volume/log + chown -R user:docker /home/user/volume/log + cd /home/user/tests + for file in * + do + rm -rf /home/user/volume/$file + cp -a /home/user/tests/$file /home/user/volume/ + done fi diff --git a/kazoo-erlang/Dockerfile b/kazoo-erlang/Dockerfile index 8fb39a0..6f88995 100644 --- a/kazoo-erlang/Dockerfile +++ b/kazoo-erlang/Dockerfile @@ -1,15 +1,20 @@ FROM kazoo/base-os MAINTAINER Roman Galeev -ARG REPO=https://github.com/2600hz/kazoo.git -ARG COMMIT=HEAD +ARG OTP +ARG KERL_URL USER root -COPY build/setup-os.sh build/setup-os.sh -RUN build/setup-os.sh +RUN apt-get install -y make python build-essential zip unzip libexpat-dev \ + unixodbc-dev libssh2-1-dev libssl-dev libncurses5-dev python +RUN apt-get -y clean USER user -COPY build/setup-erlang.sh build/setup-erlang.sh -RUN build/setup-erlang.sh +RUN curl -O -k $KERL_URL && chmod +x kerl +RUN ./kerl update releases \ + && ./kerl build $OTP $OTP +RUN ./kerl install $OTP erlang \ + && . erlang/activate \ + && ./kerl cleanup all diff --git a/kazoo-erlang/build.sh b/kazoo-erlang/build.sh index 9a1bc49..67d7fbd 100755 --- a/kazoo-erlang/build.sh +++ b/kazoo-erlang/build.sh @@ -1,3 +1,10 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -docker build $BUILD_FLAGS -t $NETWORK/erlang . + +NETWORK=${NETWORK:-'kazoo'} +OTP_vsn=${1:-'19.2'} +kerl_url=${2:-'https://raw.githubusercontent.com/kerl/kerl/master/kerl'} + +docker build $BUILD_FLAGS \ + --build-arg OTP=$OTP_vsn \ + --build-arg KERL_URL=$kerl_url \ + -t $NETWORK/erlang . diff --git a/kazoo-erlang/build/config-kazoo.sh b/kazoo-erlang/build/config-kazoo.sh deleted file mode 100755 index 2ec262a..0000000 --- a/kazoo-erlang/build/config-kazoo.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -e -git clone --depth 1 --no-single-branch https://github.com/2600hz/kazoo-sounds diff --git a/kazoo-erlang/build/setup-erlang.sh b/kazoo-erlang/build/setup-erlang.sh deleted file mode 100755 index f541f9e..0000000 --- a/kazoo-erlang/build/setup-erlang.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -e -curl -O -k https://raw.githubusercontent.com/kerl/kerl/master/kerl -chmod +x kerl -./kerl update releases -./kerl build 19.2 19.2 -./kerl install 19.2 erlang -. erlang/activate -./kerl cleanup all diff --git a/kazoo-erlang/build/setup-os.sh b/kazoo-erlang/build/setup-os.sh deleted file mode 100755 index 48a7519..0000000 --- a/kazoo-erlang/build/setup-os.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -e -apt-get install -y make python build-essential zip unzip libexpat-dev \ - unixodbc-dev libssh2-1-dev libssl-dev libncurses5-dev python -apt-get -y clean diff --git a/kazoo-meta/Dockerfile b/kazoo-meta/Dockerfile index 383fc2b..a81307b 100644 --- a/kazoo-meta/Dockerfile +++ b/kazoo-meta/Dockerfile @@ -2,5 +2,5 @@ FROM docker MAINTAINER Roman Galeev RUN apk update && apk add git openssh -RUN git clone https://github.com/jamhed/kazoo-docker +RUN git clone --depth 1 https://github.com/jamhed/kazoo-docker WORKDIR /kazoo-docker diff --git a/kazoo-meta/README.md b/kazoo-meta/README.md index bef83d2..b8dfeb9 100644 --- a/kazoo-meta/README.md +++ b/kazoo-meta/README.md @@ -17,4 +17,3 @@ How it works The goal is to simplify build process for non-linux environments. The container needs to have access to the host Docker and will build and run images on the host. - diff --git a/kazoo/Dockerfile b/kazoo/Dockerfile index 72c9afc..2a4cbd1 100644 --- a/kazoo/Dockerfile +++ b/kazoo/Dockerfile @@ -2,14 +2,14 @@ FROM kazoo/erlang MAINTAINER Roman Galeev # override this (if needed) with run --env option -ENV NETWORK=kazoo ENV NODE_NAME=kazoo ENV KAZOO_APPS=sysconf,blackhole,callflow,cdr,conference,crossbar,fax,hangups,media_mgr,milliwatt,omnipresence,pivot,registrar,reorder,stepswitch,teletype,trunkstore,webhooks,ecallmgr ENV COUCHDB=couchdb.$NETWORK ENV RABBITMQ=rabbitmq.$NETWORK -ARG REPO=https://github.com/2600hz/kazoo.git -ARG SKIP_BUILD="" +ARG NETWORK +ARG REPO +ARG SKIP_BUILD ARG UID ARG GID @@ -21,7 +21,7 @@ COPY build/run.sh run.sh ENTRYPOINT ./run.sh ENV PATH $PATH:/home/user/bin -COPY build/sup bin/sup +COPY build/sup bin/sup COPY build/cmd.sh ./cmd.sh diff --git a/kazoo/README.md b/kazoo/README.md index bad9a52..383be4e 100644 --- a/kazoo/README.md +++ b/kazoo/README.md @@ -11,7 +11,7 @@ specifying commit number and repository to build.sh command: ## Development build If you already have Kazoo sources and just want to run one or more Kazoo instances exactly this version -then you need to specify SKIP\_BUILD environment variable before build: +then you need to specify `SKIP_BUILD` environment variable before build: ```sh SKIP_BUILD=1 ./build.sh ``` @@ -19,10 +19,9 @@ SKIP_BUILD=1 ./build.sh In this case no Kazoo source will be checked out, instead the container will try to build and run the source code on container startup, and you will be required to provide Kazoo source tree as Docker volume: ```sh -KAZOO_SOURCE=/home/user/kazoo-source ./run.sh +KAZOO_SOURCE=path/to/checked-out/kazoo ./run.sh ``` ## UID/GID matching -In order Kazoo container to write files to provided volume owner of the mounted folder must be the same numerical -value as in container, therefore we're trying to guess and match it on build process. +In order for a Kazoo container to write files to the provided volume, the owner of the mounted folder must be the same numerical value as in container, therefore we're trying to guess and match it during build process. diff --git a/kazoo/build-commit.sh b/kazoo/build-commit.sh index b66287e..f8be170 100755 --- a/kazoo/build-commit.sh +++ b/kazoo/build-commit.sh @@ -1,8 +1,8 @@ #!/bin/sh -e COMMIT=$1 -NETWORK=${NETWORK:-"kazoo"} +NETWORK=${NETWORK:-'kazoo'} REPO=https://github.com/2600hz/kazoo.git -KZ_BUILD=${KZ_BUILD:-""} +KZ_BUILD=${KZ_BUILD:-''} echo Using repository $REPO commit $COMMIT flags:$KZ_BUILD echo $COMMIT > etc/commit docker build $KZ_BUILD -q -t $NETWORK/kazoo --build-arg REPO=$REPO . diff --git a/kazoo/build.sh b/kazoo/build.sh index d3b93c8..b7efd16 100755 --- a/kazoo/build.sh +++ b/kazoo/build.sh @@ -1,16 +1,17 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -REPO=${2:-"https://github.com/2600hz/kazoo.git"} + +NETWORK=${NETWORK:-'kazoo'} +REPO=${2:-'https://github.com/2600hz/kazoo.git'} COMMIT=${1:-"$(../bin/get-commit $REPO)"} -SKIP_BUILD=${SKIP_BUILD:-""} +SKIP_BUILD=${SKIP_BUILD:-''} UID=$(id -u) GID=$(id -g) echo Using repository $REPO commit $COMMIT echo $COMMIT > etc/commit -docker build $BUILD_FLAGS -t $NETWORK/kazoo \ - --build-arg REPO=$REPO \ - --build-arg SKIP_BUILD=$SKIP_BUILD \ - --build-arg UID=$UID \ - --build-arg GID=$GID \ - . +docker build $BUILD_FLAGS \ + --build-arg REPO=$REPO \ + --build-arg SKIP_BUILD=$SKIP_BUILD \ + --build-arg UID=$UID \ + --build-arg GID=$GID \ + -t $NETWORK/kazoo . diff --git a/kazoo/build/build.sh b/kazoo/build/build.sh index 46aa163..0712897 100755 --- a/kazoo/build/build.sh +++ b/kazoo/build/build.sh @@ -1,4 +1,5 @@ #!/bin/sh -e + [ -n "$SKIP_BUILD" ] && exit 0 . erlang/activate cd kazoo diff --git a/kazoo/build/setup.sh b/kazoo/build/setup.sh index 56d7325..24edb70 100755 --- a/kazoo/build/setup.sh +++ b/kazoo/build/setup.sh @@ -1,8 +1,9 @@ #!/bin/sh -e + if [ -n "$SKIP_BUILD" ] then - touch skip_build - exit 0 + touch skip_build + exit 0 fi # REPO is global and must be defined on build diff --git a/kazoo/console b/kazoo/console index b2c29db..d679d9a 100755 --- a/kazoo/console +++ b/kazoo/console @@ -1,3 +1,4 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} + +NETWORK=${NETWORK:-'kazoo'} docker exec -ti kazoo.$NETWORK ./run.sh remote_console diff --git a/kazoo/run-commit.sh b/kazoo/run-commit.sh index 095b260..673c1ae 100755 --- a/kazoo/run-commit.sh +++ b/kazoo/run-commit.sh @@ -1,24 +1,25 @@ #!/bin/sh -e + COMMIT=$1 -NETWORK=${NETWORK:-"kazoo"} +NETWORK=${NETWORK:-'kazoo'} NAME=kazoo.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run -td \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - --env NETWORK=kazoo \ - --env COUCHDB=couchdb.$NETWORK \ - --env RABBITMQ=rabbitmq.$NETWORK \ - --env NODE_NAME=kazoo \ - --env KAZOO_APPS=sysconf,blackhole,callflow,cdr,conference,crossbar,fax,hangups,media_mgr,milliwatt,omnipresence,pivot,registrar,reorder,stepswitch,teletype,trunkstore,webhooks,ecallmgr \ - $NETWORK/kazoo + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + --env NETWORK=kazoo \ + --env COUCHDB=couchdb.$NETWORK \ + --env RABBITMQ=rabbitmq.$NETWORK \ + --env NODE_NAME=kazoo \ + --env KAZOO_APPS=sysconf,blackhole,callflow,cdr,conference,crossbar,fax,hangups,media_mgr,milliwatt,omnipresence,pivot,registrar,reorder,stepswitch,teletype,trunkstore,webhooks,ecallmgr \ + $NETWORK/kazoo diff --git a/kazoo/run.sh b/kazoo/run.sh index 297c0ee..c462fb2 100755 --- a/kazoo/run.sh +++ b/kazoo/run.sh @@ -1,32 +1,34 @@ #!/bin/sh -e -FLAGS=${FLAGS:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${FLAGS:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=${NAME:-"kazoo.$NETWORK"} if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi if [ -n "$KAZOO_SOURCE" ] then - [ ! -e "$KAZOO_SOURCE" ] && echo "Kazoo source tree set to $KAZOO_SOURCE, but not accessible" && exit 1 - KAZOO_SOURCE_VOLUME="-v $KAZOO_SOURCE:/home/user/kazoo" - echo See \"docker logs $NAME\" output + [ ! -e "$KAZOO_SOURCE" ] && echo Kazoo source tree set to $KAZOO_SOURCE, but not accessible && exit 1 + KAZOO_SOURCE_VOLUME="-v $KAZOO_SOURCE:/home/user/kazoo" + echo See \"docker logs $NAME\" output fi -echo -n "starting: $NAME " +echo -n starting: $NAME docker run $FLAGS $KAZOO_SOURCE_VOLUME \ - --net $NETWORK \ - -h $NAME \ - --name $NAME \ - --env NETWORK=kazoo \ - --env COUCHDB=couchdb.$NETWORK \ - --env RABBITMQ=rabbitmq.$NETWORK \ - --env NODE_NAME=kazoo \ - --env KAZOO_APPS=sysconf,blackhole,callflow,cdr,conference,crossbar,fax,hangups,media_mgr,milliwatt,omnipresence,pivot,registrar,reorder,stepswitch,teletype,trunkstore,webhooks,ecallmgr \ - kazoo/kazoo + --net $NETWORK \ + -h $NAME \ + --name $NAME \ + --env NETWORK=kazoo \ + --env COUCHDB=couchdb.$NETWORK \ + --env RABBITMQ=rabbitmq.$NETWORK \ + --env NODE_NAME=kazoo \ + --env KAZOO_APPS=sysconf,blackhole,callflow,cdr,conference,crossbar,fax,hangups,media_mgr,milliwatt,omnipresence,pivot,registrar,reorder,stepswitch,teletype,trunkstore,webhooks,ecallmgr \ + kazoo/kazoo + docker logs $NAME --tail 5 diff --git a/kazoo/sup b/kazoo/sup index 5f4ebef..e01b5a1 100755 --- a/kazoo/sup +++ b/kazoo/sup @@ -1,3 +1,4 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} + +NETWORK=${NETWORK:-'kazoo'} docker exec -i kazoo.$NETWORK sup "$*" diff --git a/monster-ui/Dockerfile b/monster-ui/Dockerfile index fbe371b..82387f7 100644 --- a/monster-ui/Dockerfile +++ b/monster-ui/Dockerfile @@ -4,8 +4,8 @@ MAINTAINER Roman Galeev USER root WORKDIR /root -ARG REPO=https://github.com/2600hz/monster-ui.git -ARG COMMIT=HEAD +ARG REPO +ARG COMMIT_MONSTER ARG APPS ARG TOKEN @@ -22,7 +22,6 @@ RUN build/setup-apps.sh COPY etc etc -COPY etc/commit /root/commit COPY build/build.sh build/build.sh RUN build/build.sh diff --git a/monster-ui/build.sh b/monster-ui/build.sh index 425482d..e02b720 100755 --- a/monster-ui/build.sh +++ b/monster-ui/build.sh @@ -1,12 +1,15 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} -REPO=${2:-"https://github.com/2600hz/monster-ui.git"} -COMMIT=${1:-"$(../bin/get-commit $REPO)"} -echo Using repository $REPO commit $COMMIT -echo $COMMIT > etc/commit + +NETWORK=${NETWORK:-'kazoo'} +REPO=${2:-'https://github.com/2600hz/monster-ui.git'} +commit_monster=${1:-"$(../bin/get-commit $REPO)"} + +echo Using repository $REPO commit $commit_monster [ -e ./apps ] && APPS=$(cat apps) + docker build $BUILD_FLAGS \ - -t $NETWORK/monster-ui \ - --build-arg APPS="$APPS" \ - --build-arg TOKEN=$TOKEN \ - --build-arg REPO=$REPO . + --build-arg APPS="$APPS" \ + --build-arg TOKEN=$TOKEN \ + --build-arg REPO=$REPO \ + --build-arg COMMIT_MONSTER=$commit_monster \ + -t $NETWORK/monster-ui . diff --git a/monster-ui/build/build.sh b/monster-ui/build/build.sh index b105ffc..2622cdf 100755 --- a/monster-ui/build/build.sh +++ b/monster-ui/build/build.sh @@ -1,4 +1,4 @@ #!/bin/sh -e + cd $WWW/html -git pull gulp build-prod diff --git a/monster-ui/build/setup-apps.sh b/monster-ui/build/setup-apps.sh index 0bea33b..6335fac 100755 --- a/monster-ui/build/setup-apps.sh +++ b/monster-ui/build/setup-apps.sh @@ -1,6 +1,7 @@ #!/bin/sh -e + cd $WWW/html/src/apps for app in $APPS do - git clone --depth 1 --no-single-branch https://$TOKEN@github.com/2600hz/monster-ui-$app $app + git clone --depth 1 https://$TOKEN@github.com/2600hz/monster-ui-$app $app done diff --git a/monster-ui/build/setup.sh b/monster-ui/build/setup.sh index c71a3b2..0ddaa19 100755 --- a/monster-ui/build/setup.sh +++ b/monster-ui/build/setup.sh @@ -1,20 +1,19 @@ #!/bin/sh -e + rm -rf $WWW/html mkdir -p $WWW/html cd $WWW -git clone --depth 1 --no-single-branch $REPO html +git clone --depth 1 --branch $COMMIT_MONSTER $REPO html -echo "Setup node" +echo Setup node cd $WWW/html npm install npm -g install gulp -echo "Setup public apps" +echo Setup public apps cd $WWW/html/src/apps for app in accounts callflows numbers pbxs voip webhooks fax voicemails do - git clone --depth 1 --no-single-branch https://github.com/2600hz/monster-ui-$app $app + git clone --depth 1 --no-single-branch https://github.com/2600hz/monster-ui-$app $app done - - diff --git a/monster-ui/enable.sh b/monster-ui/enable.sh index c7ad7af..12849d7 100755 --- a/monster-ui/enable.sh +++ b/monster-ui/enable.sh @@ -1,5 +1,6 @@ #!/bin/bash -e -NETWORK=${NETWORK:-"kazoo"} + +NETWORK=${NETWORK:-'kazoo'} echo enable monster-ui applications docker cp monster-ui.$NETWORK:/usr/share/nginx/html/src/apps apps docker cp apps kazoo.$NETWORK:/home/user diff --git a/monster-ui/run.sh b/monster-ui/run.sh index 4d187ac..6826a64 100755 --- a/monster-ui/run.sh +++ b/monster-ui/run.sh @@ -1,14 +1,15 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=monster-ui.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " diff --git a/rabbitmq/build.sh b/rabbitmq/build.sh index d91ea28..ca83810 100755 --- a/rabbitmq/build.sh +++ b/rabbitmq/build.sh @@ -1,3 +1,4 @@ #!/bin/sh -e -NETWORK=${NETWORK:-"kazoo"} + +NETWORK=${NETWORK:-'kazoo'} docker build $BUILD_FLAGS -t $NETWORK/rabbitmq . diff --git a/rabbitmq/run.sh b/rabbitmq/run.sh index a4acb39..4428015 100755 --- a/rabbitmq/run.sh +++ b/rabbitmq/run.sh @@ -1,13 +1,14 @@ #!/bin/sh -e -FLAGS=${1:-"-td"} -NETWORK=${NETWORK:-"kazoo"} + +FLAGS=${1:-'-td'} +NETWORK=${NETWORK:-'kazoo'} NAME=rabbitmq.$NETWORK if [ -n "$(docker ps -aq -f name=$NAME)" ] then - echo -n "stopping: " - docker stop -t 1 $NAME - echo -n "removing: " - docker rm -f $NAME + echo -n 'stopping: ' + docker stop -t 1 $NAME + echo -n 'removing: ' + docker rm -f $NAME fi echo -n "starting: $NAME " docker run $FLAGS --net $NETWORK -h $NAME --name $NAME kazoo/rabbitmq diff --git a/run.sh b/run.sh index 1972347..60069ba 100755 --- a/run.sh +++ b/run.sh @@ -1,5 +1,6 @@ #!/bin/sh -e -NETWORK=${1:-"kazoo"} + +NETWORK=${1:-'kazoo'} export NETWORK echo -n "starting network: $NETWORK " docker network create $NETWORK diff --git a/start.sh b/start.sh index ed07a5a..1fe9a4c 100755 --- a/start.sh +++ b/start.sh @@ -1,5 +1,6 @@ #!/bin/sh -e -NETWORK=${1:-"kazoo"} + +NETWORK=${1:-'kazoo'} export NETWORK echo -n "starting network: $NETWORK " docker network create $NETWORK diff --git a/stop.sh b/stop.sh index de5961d..7f2c671 100755 --- a/stop.sh +++ b/stop.sh @@ -1,4 +1,5 @@ #!/bin/sh -e -NETWORK=${1:-"kazoo"} + +NETWORK=${1:-'kazoo'} echo Stopping network: $NETWORK docker stop -t 1 $(docker ps | grep "\.$NETWORK" | cut -d' ' -f1)