From 96ce7d938bb7ab2fc1520f703ceddc8e3355ce3f Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Thu, 17 Jan 2019 08:56:48 +0100 Subject: Dockerized deployment method MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Miquel Sabaté Solà --- script/docker-build.sh | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100755 script/docker-build.sh (limited to 'script/docker-build.sh') diff --git a/script/docker-build.sh b/script/docker-build.sh new file mode 100755 index 0000000..8aa1590 --- /dev/null +++ b/script/docker-build.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# Copyright (C) 2019 Miquel Sabaté Solà +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +set -ex + +# If the image does not exist, build it. +IMGTAG=mssola/jo:latest +[ ! -z $(docker images -q $IMGTAG) ] || docker build -t $IMGTAG . + +# The user which should own the produced files. +user=$(id -u `whoami`) +group=$(id -g `whoami`) + +# The -it flag should not be set on the post-receive hook because there's no TTY +# there. +IT="-it" +if [ "$POST_RECEIVE" = "true" ]; then + IT= +fi + +# And now the call... +docker run --rm $IT \ + -e BUILD_SOURCE=/src -e BUILD_DEST=/dest \ + -e BUNDLE_GEMFILE=/src/Gemfile -e USER=$user -e GROUP=$group \ + -e NODE_ENV=development -e NUKE=$NUKE \ + -v $BUILD_SOURCE:/src -v $BUILD_DEST:/dest \ + $IMGTAG /src/script/build.sh -- cgit v1.2.3