From da2f2f073a2bf636aa1bc18b0b4263ba854144c2 Mon Sep 17 00:00:00 2001 From: Alexey Pustovalov Date: Fri, 5 Aug 2022 10:42:15 +0300 Subject: [PATCH] Optimized build.sh --- build.sh | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/build.sh b/build.sh index ac91923da..01875e814 100755 --- a/build.sh +++ b/build.sh @@ -9,15 +9,11 @@ fi os=${PWD##*/} -version=$1 -version=${version:-"latest"} +version=${1:-latest} -type=$2 -type=${type:-"build"} +type=${2:-build} -cd ../ -app_component=${PWD##*/} -cd $os/ +app_component=$(cd ../ && echo "${PWD##*/}") if [ "$app_component" == "zabbix-appliance" ]; then app_component="appliance" @@ -29,10 +25,10 @@ if [[ ! $version =~ ^[0-9]*\.[0-9]*\.[0-9]*$ ]] && [ "$version" != "latest" ]; t fi if [ "$version" != "latest" ]; then - VCS_REF=`git ls-remote https://git.zabbix.com/scm/zbx/zabbix.git refs/tags/$version | cut -c1-10` + VCS_REF=$(git ls-remote https://git.zabbix.com/scm/zbx/zabbix.git refs/tags/"$version" | cut -c1-10) else - MAJOR_VERSION=`cat Dockerfile | grep "ARG MAJOR_VERSION" | head -n1 | cut -f2 -d"="` - MINOR_VERSION=`cat Dockerfile | grep "ARG ZBX_VERSION" | head -n1 | cut -f2 -d"."` + MAJOR_VERSION=$(grep "ARG MAJOR_VERSION" Dockerfile | head -n1 | cut -f2 -d"=") + MINOR_VERSION=$(grep "ARG ZBX_VERSION" Dockerfile | head -n1 | cut -f2 -d".") VCS_REF=$MAJOR_VERSION.$MINOR_VERSION fi @@ -42,11 +38,11 @@ if hash docker 2>/dev/null; then elif hash podman 2>/dev/null; then exec_command='podman' else - echo >&2 "Build command requires docker or podman. Aborting."; - exit 1; + echo >&2 "Build command requires docker or podman. Aborting." + exit 1 fi -DOCKER_BUILDKIT=1 $exec_command build -t zabbix-$app_component:$os-$version --build-arg VCS_REF="$VCS_REF" --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` -f Dockerfile . +DOCKER_BUILDKIT=1 $exec_command build -t "zabbix-$app_component:$os-$version" --build-arg VCS_REF="$VCS_REF" --build-arg BUILD_DATE="$(date -u +"%Y-%m-%dT%H:%M:%SZ")" -f Dockerfile . if [ "$type" != "build" ]; then links="" @@ -54,10 +50,10 @@ if [ "$type" != "build" ]; then if [[ $app_component =~ .*mysql.* ]]; then links="$links --link mysql-server:mysql" - env_vars="$env_vars -e MYSQL_DATABASE=\"zabbix\" -e MYSQL_USER=\"zabbix\" -e MYSQL_PASSWORD=\"zabbix\" -e MYSQL_RANDOM_ROOT_PASSWORD=true" + env_vars=("$env_vars" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e MYSQL_RANDOM_ROOT_PASSWORD=true) $exec_command rm -f mysql-server - $exec_command run --name mysql-server -t $env_vars -d mysql:5.7 + $exec_command run --name mysql-server -t "${env_vars[@]}" -d mysql:8.0-oracle fi if [ "$links" != "" ]; then @@ -66,5 +62,5 @@ if [ "$type" != "build" ]; then $exec_command rm -f zabbix-$app_component - $exec_command run --name zabbix-$app_component -t -d $links $env_vars zabbix-$app_component:$os-$version + $exec_command run --name zabbix-$app_component -t -d "$links" "${env_vars[@]}" "zabbix-$app_component:$os-$version" fi