@ -6,60 +6,6 @@
# Include bibliotheque de fonction
. ./misc/tools/e-ihm.sh
# Include variable d'environnement global
mergeenv env/.env.merge env/.env env/.env.local
. env/.env.merge
# Construction du docker-compose
echo "services:" > docker-compose.yml
# Include service
declare -A services
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
keyservice = " ${ dir ##*- } "
valueservice = " ${ dir ##*/ } "
# Include bibliotheque de fonction
if [ -f " $dir /misc/nine.sh " ] ; then
. $dir /misc/nine.sh
fi
# Include variable d'environnement global
if [ -f " $dir /env/.env " ] ; then
. $dir /env/.env
fi
# Include variable d'environnement local
if [ -f " $dir /env/.env.local " ] ; then
. $dir /env/.env.local
fi
# Construction du docker-compose
if [ -f " $dir /dockercompose/dockercompose.yml " ] ; then
cat " $dir /dockercompose/dockercompose.yml " >> docker-compose.yml
fi
# Construction .env.merge
mergeenv $dir /env/.env.merge env/.env.merge $dir /env/.env $dir /env/.env.local
# Construction conf apache
mkdir -p services/10-nineapache/volume/apache
if [ -f " $dir /apache/apache.conf " ] ; then
cp " $dir /apache/apache.conf " services/10-nineapache/volume/apache/$valueservice .conf
fi
# Templetisation
misc/tools/dicos.sh $dir
# Sauvegarder le service
services[ " $keyservice " ] = " $valueservice "
done
# Construction du docker-compose
echo "networks:" >> docker-compose.yml
echo " nine-network:" >> docker-compose.yml
echo " name: nine-network" >> docker-compose.yml
# Start script
BigTitle "NINE"
@ -79,9 +25,9 @@ stop() {
}
#===========================================================================================================================================
#== UPSERVICE ========= =====================================================================================================================
#== WAIT_FOR_CONTAINER =====================================================================================================================
#===========================================================================================================================================
#1 = service to up
#1 = service to wait
wait_for_container( ) {
container_id = " nine- $1 "
@ -148,11 +94,115 @@ destroyall(){
fi
}
#===========================================================================================================================================
#== ENV ====================================================================================================================================
#===========================================================================================================================================
# Construction des environnements mergés par service
env( ) {
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
mergeenv $dir /env/.env.merge env/.env.merge $dir /env/.env $dir /env/.env.local
done
}
#===========================================================================================================================================
#== DOCKERCOMPOSE ====================================================================================================================================
#===========================================================================================================================================
# Construction du dockercompose
dockercompose( ) {
echo "services:" > docker-compose.yml
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
# Construction du docker-compose
if [ -f " $dir /dockercompose/dockercompose.yml " ] ; then
cat " $dir /dockercompose/dockercompose.yml " >> docker-compose.yml
fi
done
echo "networks:" >> docker-compose.yml
echo " nine-network:" >> docker-compose.yml
echo " name: nine-network" >> docker-compose.yml
}
#===========================================================================================================================================
#== APACHE =================================================================================================================================
#===========================================================================================================================================
# Construction conf apache
apache( ) {
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
keyservice = " ${ dir ##*- } "
valueservice = " ${ dir ##*/ } "
mkdir -p services/10-nineapache/volume/apache
if [ -f " $dir /apache/apache.conf " ] ; then
cp " $dir /apache/apache.conf " services/10-nineapache/volume/apache/$valueservice .conf
fi
done
}
#===========================================================================================================================================
#== TEMPLATE================================================================================================================================
#===========================================================================================================================================
# Templatisation
template( ) {
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
misc/tools/dicos.sh $dir
done
}
#===========================================================================================================================================
#== MAIN ===================================================================================================================================
#===========================================================================================================================================
# Include variable d'environnement global
mergeenv env/.env.merge env/.env env/.env.local
. env/.env.merge
# Include service
declare -A services
for dir in $( ls -d "services" /[ 0-9] [ 0-9] -* | sort) ; do
keyservice = " ${ dir ##*- } "
valueservice = " ${ dir ##*/ } "
# Include bibliotheque de fonction
if [ -f " $dir /misc/nine.sh " ] ; then
. $dir /misc/nine.sh
fi
# Include variable d'environnement global
if [ -f " $dir /env/.env " ] ; then
. $dir /env/.env
fi
# Include variable d'environnement local
if [ -f " $dir /env/.env.local " ] ; then
. $dir /env/.env.local
fi
# Sauvegarder le service
services[ " $keyservice " ] = " $valueservice "
done
# Construction des environnements mergés par service
env
# Construction docker_compose
dockercompose
# Construction de la configuration apache
apache
# Templetisation
template
# Execution de la commande
if [ [ $1 = = "up" || $1 = = "" ] ]
then
up $2
@ -195,9 +245,13 @@ then
if [ [ -z $2 ] ]
then
destroyall
apache
template
up
else
destroy$2
apache
template
up$2
fi
else