1
0
mirror of https://github.com/zokradonh/kopano-docker synced 2025-06-07 16:06:14 +00:00

New: build script

This commit is contained in:
Andre Zoledziowski 2018-06-25 19:23:10 +02:00
parent fde2c566c9
commit 1d68189d66
3 changed files with 82 additions and 1 deletions

1
.gitignore vendored
View File

@ -1,4 +1,3 @@
.vscode/settings.json
**/.vscode
*-build.sh
*.yml

67
build.sh Normal file
View File

@ -0,0 +1,67 @@
#!/bin/bash
set -eu
if [ $# -lt 2 ]
then
echo "Usage: build.sh core|webapp serial [master|final|pre-final] [buildcontext]"
echo "Example: build.sh core ABC123456789DEF final"
echo "If no branch is given, 'master' will be built by default."
echo "If no buildcontext is given, it will build from git repository. Normally, you do not need to specify this."
exit 1
fi
case "$1" in
core)
mainpackage="kopano-server"
;;
webapp)
mainpackage="kopano-webapp"
;;
*)
echo "Invalid component."
exit 1
esac
component=${1,,}
serial=$2
branch=${3-master}
branch=${branch,,}
defaulturl="https://github.com/ZokRadonh/KopanoDocker.git#:"
buildcontext_base="${4-${defaulturl}}"
# get current version to brand and tag the image correctly
currentVersion=$(curl -s -S -L https://serial:$serial@download.kopano.io/supported/$component:/$branch/Debian_9.0/Packages.gz |\
gzip -d | grep -A 8 "^Package: $mainpackage$" | awk '/Version/ { print $2 }')
currentVersionDocker=$(echo $currentVersion | sed 's/+/plus/')
# check if buildproxy helper container is running
isproxyup=$(docker ps | grep kopano_buildproxy | wc -l)
if [ $isproxyup -eq 0 ]
then
echo "Build proxy container not runnning - now building..."
docker build -t kopano_buildproxy ${buildcontext_base}repoproxy
echo "Start building proxy..."
docker run --rm -ti -d -e KOPANO_SERIAL=$serial --network buildkopano_bnet --network-alias buildproxy kopano_buildproxy
fi
# only tag the master branch with ":latest"
if [ "$branch" == "master" ]
then
tagLatest="-t zokradonh/kopano_$component:latest"
else
tagLatest=" "
fi
# build it
echo "Start building kopano $component image version ($currentVersion)..."
docker build \
--build-arg KOPANO_REPOSITORY_BRANCH=$branch \
--build-arg KOPANO_${component^^}_VERSION=$currentVersion \
$tagLatest \
-t zokradonh/kopano_$component:$currentVersionDocker \
-t zokradonh/kopano_$component:latest-$branch \
--network buildkopano_bnet \
${buildcontext_base}${component}

15
master-push.sh Normal file
View File

@ -0,0 +1,15 @@
#!/bin/bash
if [ $# -lt 2 ]
then
echo "Usage: master-push.sh core|webapp version"
echo "Example: master-push.sh core 3.4.17.1565plus895.1"
exit 1
fi
component=$1
version=$2
docker push zokradonh/kopano_${component}:latest
docker push zokradonh/kopano_${component}:latest-master
docker push zokradonh/kopano_${component}:$version