#!/bin/bash
set -euxo pipefail
# Variables to be set:
# $IMAGE
function docker_build() {
containerID=$(docker create -it -v $(pwd)/.cache:/src/.cache $IMAGE)
docker start $containerID
docker exec $containerID mkdir -p /src
function exec() {
docker exec $containerID bash -c "$@"
}
docker cp ./. $containerID:/src
exec "cd /src && yarn"
exec "cd /src && npm rebuild"
exec "cd /src && NODE_ENV=production VERSION=$VERSION yarn task build:server:binary"
exec "cd /src && yarn task package $VERSION"
docker cp $containerID:/src/release/. ./release/
if [[ "$OSTYPE" == "darwin"* ]]; then
NODE_ENV=production yarn task build:server:binary
else
if [[ "$TARGET" == "alpine" ]]; then
IMAGE="codercom/nbin-alpine"
IMAGE="codercom/nbin-centos"
fi
docker_build