96 lines
2.9 KiB
Bash
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 ..
|