innovar_amr_tray_controller/buildImages.sh

96 lines
2.9 KiB
Bash

#!/bin/bash
version=':v1' # VERSIONAMENTO MACRO - TODOS SERVIÇOS NA MESMA VERSÃO SÃO COMPATÍVEIS ENTRE SI
nome_diretorio="innovar_amr_tray" #$(basename "$PWD")
system="${nome_diretorio,,}"
SYSTEM="${system^^}"
# Try to find the correct $DOCKER_COMPOSE_CMD command
if command -v docker-compose &> /dev/null; then
DOCKER_COMPOSE_CMD="docker-compose"
elif command -v docker &> /dev/null && docker compose version &> /dev/null; then
DOCKER_COMPOSE_CMD="docker compose"
else
echo "$DOCKER_COMPOSE_CMD is not installed."
exit 1
fi
clone() {
echo "VERSAO ATUAL CLASSES ACESSORIAS Exchange2 SoftGOModel"
$DOCKER_COMPOSE_CMD down
if [ -d "utils" ]; then
rm -rf utils
fi
if [ -d "Model" ]; then
rm -rf Model
fi
# PROJETOS DE BASE
git clone git@github.com:desenvolvimentopsa/Exchange2.git utils/Exchange2
git clone git@github.com:desenvolvimentopsa/SoftGOModel.git Model
cd utils
find . -name "*.py" | xargs -I {} cp {} .
rm -rf Exchange2 SOFTGO_AUTH_MIDDLEWARE
cd ..
# remove .git e .gitignore do Model
cd Model
find . \( -name ".git" -o -name ".gitignore" \) -exec rm -rf {} +
cd ..
}
for arg in "$@"; do
if [ -n "$arg" ] && [ "$arg" == "git" ]; then
echo "VERSAO ATUAL DO GIT ${version}"
git stash
git pull
fi
done
if [ ! -d "utils" ] || [ ! -d "Model" ]; then
echo "DOWNLOAD CLASSES ACESSORIAS"
clone
else
for arg in "$@"; do
if [ -n "$arg" ] && [ "$arg" == "clone" ]; then
echo "DOWNLOAD CLASSES ACESSORIAS"
clone
fi
done
fi
for arg in "$@"; do
if [ -n "$arg" ] && [ "$arg" == "prune" ]; then
echo "REMOVER IMAGENS ${system} ${version}"
docker image ls -q -f "reference=${system}-*${version}" | xargs -I {} docker image rm -f {}
docker system prune -af
fi
done
# EDITE DE ACORDO COM OS SERVIÇOS QUE VAI IMPLEMENTAR
# NOME DO DIRETORIO É O NOME DO SISTEMA E CADA DIRETORIO UM SERVICO
# CASO UM UNICO SERVIÇO MANTENHA O MODELO PARA PODERMOS IMPLEMENTAR UM DEPLOY AUTOMATICO NO FUTURO
#==> MODELO
echo "GERAR IMAGENS ${system} ${version}"
service="controller"
echo $service
echo "COPIAR ARQUIVOS PARA BUILD ${system} ${version}"
cp -r Model/sg_tray_models ./src/models/sg_tray_models/
cp -r Model/servico_titulos_receber ./src/models/servico_titulos_receber/
docker build -t ${system}-${service}${version} .
rm -rf ./src/models/sg_tray_models/*
rm -rf ./src/models/servico_titulos_receber/*
cd ./src
ln -sf ../utils/Exchange2.py .
ln -sf ../utils/exchangeModels.py .
ln -sf ../utils/HostMetrics.py .
ln -sf ../Model/sg_tray_models/services_model.py ./models/sg_tray_models/services_model.py
ln -sf ../Model/servico_titulos_receber/contract_Tittles.py ./models/servico_titulos_receber/contract_Tittles.py
ln -sf ../Model/servico_titulos_receber/tittle_model.py ./models/servico_titulos_receber/tittle_model.py
cd ..