diff --git a/hooks/README.md b/hooks/README.md new file mode 100644 index 00000000..6cdbadad --- /dev/null +++ b/hooks/README.md @@ -0,0 +1,3 @@ +# Docker Cloud build hooks + +These are the hooks diff --git a/hooks/build b/hooks/build new file mode 100644 index 00000000..065d4fa1 --- /dev/null +++ b/hooks/build @@ -0,0 +1,14 @@ +#!/bin/bash +set -ex + +docker build -t $DOCKER_REPO:$DOCKER_TAG . +# build onbuild +docker build --build-arg BASE_IMAGE=$DOCKER_REPO:$DOCKER_TAG -t ${DOCKER_REPO}-onbuild:$DOCKER_TAG . + +for V in master $stable; do + + docker build --build-arg JUPYTERHUB_VERSION=$V -t $DOCKER_REPO:$V . +done + +echo "tagging $IMAGE_NAME" +docker tag $DOCKER_REPO:$stable $IMAGE_NAME diff --git a/hooks/post_push b/hooks/post_push new file mode 100644 index 00000000..ce2f06b7 --- /dev/null +++ b/hooks/post_push @@ -0,0 +1,25 @@ +stable=0.8 +export ONBUILD=${DOCKER_REPO}_onbuild +# push ONBUILD image +docker push $ONBUILD:$DOCKER_TAG + +function get_hub_version() { + rm -f hub_version + docker run --rm -v $PWD:/version -u $(id -u) -i $DOCKER_REPO:$DOCKER_TAG sh -c 'jupyterhub --version > /version/hub_version' + hub_xyz=$(cat hub_version) + split=( ${hub_xyz//./ } ) + hub_xy="${split[0]}.${split[1]}" +} + + +get_hub_version +# when building 0.9.0.dev, push 0.9.0 and 0.9 tags as well +docker tag $DOCKER_REPO:$hub_xyz $DOCKER_REPO:$DOCKER_TAG +docker push $DOCKER_REPO:$hub_xyz +docker tag $ONBUILD:$hub_xyz $ONBUILD:$DOCKER_TAG +docker push $ONBUILD:$hub_xyz + +docker tag $DOCKER_REPO:$hub_xy $DOCKER_REPO:$DOCKER_TAG +docker push $DOCKER_REPO:$hub_xy +docker tag $ONBUILD:$hub_xy $DOCKER_REPO:$DOCKER_TAG +docker push $ONBUILD:$hub_xyz