#!/bin/bash TestEnv() { Check=$(which $1 2> /dev/null) if [[ -z ${Check} ]] then echo "$1 not found ... " exit 1 fi } Res() { if [[ $1 -eq 0 ]] then echo "$(tput setaf 2)OK$(tput sgr0)" else echo "$(tput setaf 1)FAILED$(tput sgr0)" fi } help () { echo " $0 [image/repo/esl/all] * image : Generate docker images * repo : start docker compose and generate repositories * esl : start docker compose and generarte esl * all : Do everything " exit } Wai=$(realpath $(dirname $0)) TestEnv realpath TestEnv docker TestEnv tput LogDockerCompilatorGenerate=/tmp/DockerCompilatorGenerate.log LogDockerRepoGenerate=/tmp/DockerRepoGenerate.log LogDockerCompilatorRun=/tmp/DockerCompilatorRun.log LogDockerRepoRun=/tmp/DockerRepoRun.log cd ${Wai} DockerGen() { echo "Generate compilator Dokcer ... : " docker build . -t esl-compilator -f Dockerfile.esl 2>&1 | tee $LogDockerCompilatorGenerate &> /dev/null Res $? echo "Generate Repo Docker ... : " docker build . -t esl-compilator -f Dockerfile.esl 2>&1 | tee $LogDockerCompilatorGenerate &> /dev/null Res $? } DockerComposeRunEsl () { [[ $1 == "Print" ]] && Print="" || Print="-d" echo -n "Starting ESL COMPILATOR ... : " docker-compose -f docker-compose.yml.esl up ${Print} 2>&1 ${LogDockerCompilatorRun} &> /dev/null Res $? } DockerComposeRunRepo () { echo -n "Starting Repo Sync ... : " docker-compose -f docker-compose.yml.repo up ${Print} 2>&1 ${LogDockerRepoRun} &> /dev/null Res $? } Exec=$1 [[ -z "${Exec}"]] && help [[ "${Exec}" == "image" ]] && DockerGen [[ "${Exec}" == "repo" ]] && DockerComposeRunRepo [[ "${Exec}" == "esl" ]] && DockerComposeRunEsl if [[ "${Exec}" == "all" ]] then DockerGen DockerComposeRunRepo Print DockerComposeRunEsl Print fi