127 lines
2.4 KiB
Plaintext
Executable File
127 lines
2.4 KiB
Plaintext
Executable File
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
|
||
* image-gen : Generate docker image for esl compilator
|
||
* image-repo : Generate docker image for repository sync
|
||
* repo : start docker compose and generate repositories
|
||
* gen : start docker compose and generarte esl
|
||
* all : Do everything
|
||
* run-gen : Connect and run bash on instance gen
|
||
* run-repo : Connect and run bash on instance repo
|
||
* stop : stop all docker image
|
||
|
||
"
|
||
exit
|
||
|
||
}
|
||
|
||
|
||
|
||
DeleteFile() {
|
||
|
||
echo -n "Delete Dockerfile ... : "
|
||
[[ -f ${Wai}/Dockerfile ]] && rm Dockerfile || true
|
||
Res $?
|
||
|
||
|
||
}
|
||
|
||
DockerConnect() {
|
||
|
||
Inst=$(docker ps|grep $(dirname .)_esl\-$1 | awk '{print $NF}')
|
||
docker exec -ti ${Inst} bash
|
||
|
||
}
|
||
|
||
DockerStop() {
|
||
for DockerRun in $(docker ps|grep $(dirname .)_esl\- | awk '{print $NF}')
|
||
do
|
||
echo -n "Stop $DockerRun ... :"
|
||
docker stop $DockerRun &> /dev/null
|
||
Res $?
|
||
done
|
||
}
|
||
|
||
DeleteImg () {
|
||
DeleteFile
|
||
echo -n "Delte old images $1 ... : "
|
||
for var in $(docker image ls| grep "esl-$1" | awk '{print $3}'); do yes | docker image rm $var --force; done &> /dev/null
|
||
Res $?
|
||
}
|
||
|
||
DockerGen() {
|
||
DeleteImg $1
|
||
echo -n "generate Dockerfile $1 ... : "
|
||
source define.conf
|
||
while read line
|
||
do
|
||
if [[ ! -z $(echo $line | grep '\$') ]]
|
||
then
|
||
eval echo ${line} | sed "s#\[#\[\'#g" | sed "s#\]#\'\]#g"
|
||
else
|
||
echo $line
|
||
fi
|
||
done < Template/Dockerfile.$1 > Dockerfile
|
||
Res $?
|
||
|
||
echo -n "Generate $1 Docker image ... : "
|
||
docker build --no-cache . -t esl-$1:${GenVers} 2>&1 | tee /tmp/BuildDocker-${1}.log &> /dev/null
|
||
Res $?
|
||
|
||
echo "
|
||
------ Log Compil -----------
|
||
/tmp/BuildDocker-${1}.log
|
||
-----------------------------
|
||
"
|
||
|
||
}
|
||
|
||
|
||
DockerComposeRun () {
|
||
|
||
[[ -f ${Wai}/docker-compose.yml ]] && rm -f ${Wai}/docker-compose.yml
|
||
[[ "$2" == "Print" ]] && Print="-d" || Print=""
|
||
cp ${Wai}/Template/docker-compose.yml.$1 ${Wai}/docker-compose.yml
|
||
echo -n "Starting DOCKER $1 ... : "
|
||
yes | docker-compose up ${Print} --remove-orphans 2>&1 | tee /tmp/RunDocker-${1}.log &> /dev/null
|
||
Res $?
|
||
echo "
|
||
--------- Log Esl -----------
|
||
/tmp/RunDocker-${1}.log
|
||
-----------------------------
|
||
"
|
||
}
|
||
|
||
|
||
|
||
GenAll () {
|
||
DockerGen gen
|
||
DockerGen repo
|
||
}
|
||
|