ajuste atualiza ADM

master
root 2025-08-01 12:32:39 -03:00
parent bf2d07957d
commit e30ab888c1
1 changed files with 143 additions and 84 deletions

View File

@ -13,7 +13,8 @@ echo -e "####################################################"
echo -e " "
sleep 1
IPPRIV=$(hostname -I | awk '{ print $1 }')
listaclientes=$(ls /etc/systemd/system/ | grep ^wild* | sort | cut -d "." -f 1)
#listaclientes=$(ls /etc/systemd/system/ | grep ^wild* | sort | cut -d "." -f 1)
listaclientes=$(systemctl list-units --type=service | grep -i "wildfly_*" | awk '{print $1}' | cut -d '.' -f1)
read -p "DIGITE o NÚMERO ou COPIE e COLE o que vai atualizar: " service
sleep 1
case $service in
@ -608,9 +609,9 @@ case $service in
echo -e "Opção \"5 - ADM foi escolhida...\""
sleep 2
echo -e " "
adms=$(ls /etc/systemd/system/ | grep ^wild* | sort | cut -d "." -f 1)
adms="$listaclientes"
echo -e "####################################################"
echo -e "##### Listando ADMs que rodam neste servidor: #####"
echo -e "##### Listando ADMs neste servidor: #####"
echo -e "####################################################"
echo -e "----------------------------------------------------"
echo -e "$adms"
@ -637,23 +638,78 @@ case $service in
exit 1
fi
echo -e " "
echo -e "Abaixo, informe seu usuario e senha do Jenkins..."
echo -e " "
echo -e " https://jenkinsventa.rjconsultores.com.br "
echo -e " "
read -p "Digite seu USUÁRIO do Jenkins: " userj
echo -e " "
read -s -p "Digite sua SENHA do Jenkins: " passj
echo -e " "
echo -e "Validando usuario e senha..."
echo -e " "
validj=$(curl -s -w "%{http_code}" -su "$userj:$passj" -o /dev/null "https://jenkinsventa.rjconsultores.com.br" ; echo)
if [[ "$validj" -eq 200 ]]; then
echo "Usuário e senha validado com sucesso!"
elif [[ "$validj" -eq 401 ]]; then
echo -e "Usuário ou senha incorretos."
echo -e "Tente novamente..."
exit 0
else
echo "Erro ao tentar logar. Código HTTP: $validj"
echo -e "Finalizando script."
exit 1
fi
echo -e " "
sleep 1
echo -e "Será feito o download da versão que você digitar abaixo: "
echo -e "####################################################"
read -p "Digite a versão do adm: " versaoadm
read -p "Digite a versão do adm (ex: 1.250.6): " versaoadm
echo -e " "
echo -e "Baixando ADM versão --> $versaoadm <-- para atualização."
echo -e "Baixando ADM versão --> $versaoadm <-- "
rm -rf /tmp/ventaboletosadm.war
curl -O http://52.5.53.15:8081/nexus/content/repositories/releases/br/com/rjconsultores/ventaboletosadm/$versaoadm/ventaboletosadm-$versaoadm.war
mv ventaboletosadm-$versaoadm.war /tmp/ventaboletosadm.war
#curl -O http://52.5.53.15:8081/nexus/content/repositories/releases/br/com/rjconsultores/ventaboletosadm/$versaoadm/ventaboletosadm-$versaoadm.war
#mv ventaboletosadm-$versaoadm.war /tmp/ventaboletosadm.war
# Codifica os colchetes na URL
JENKINS_API_URL="https://jenkinsventa.rjconsultores.com.br/job/Adm/job/Adm-Project-Build/api/json?tree=builds%5Bnumber,description,displayName%5D"
# Baixa o JSON autenticado
RESPONSE=$(curl -u "$userj:$passj" -s "$JENKINS_API_URL")
# Mostra os displayNames disponíveis
#echo "=== DisplayNames disponíveis ==="
#echo "$RESPONSE" | jq -r '.builds[].displayName'
[ ! -x "$(which jq)" ] && sudo apt install jq -y # JQ instalado?
# Usa 'test' para buscar displayName que contenha a versão (mais tolerante com aspas extras)
DESCRIPTION=$(echo "$RESPONSE" | jq -r \
--arg versaoadm "$versaoadm" \
'.builds[] | select(.displayName | test($versaoadm)) | .description' | head -n1)
if [ -z "$DESCRIPTION" ] || [ "$DESCRIPTION" == "null" ]; then
echo "Versão '$versaoadm' não encontrada no Jenkins."
exit 1
fi
# Extrai a URL do WAR do campo description
WAR_URL=$(echo "$DESCRIPTION" | grep -oP "a href='\K[^']+")
if [ -z "$WAR_URL" ]; then
echo "Link para o WAR não encontrado no campo description."
exit 1
fi
# Baixa o arquivo
ARQUIVO=$(basename "$WAR_URL")
#echo "Baixando WAR: $ARQUIVO"
curl -u "$userj:$passj" -L -o /tmp/"$ARQUIVO" "$WAR_URL"
sleep 2
echo -e " "
echo -e "#############################################################################################"
echo -e "Apagando backups antigos com mais de 14 dias..."
find "/dados/" -type d -name 'bkp_ADM_*' -mtime +14 -exec rm -rf {} \;
echo -e " "
echo -e "#############################################################################################"
echo -e "Apagando backups antigos com mais de 14 dias..."
find "/dados/bkp_ADM/" -type d -name '*' -mtime +14 -exec rm -rf {} \;
VER="/dados/$adm/standalone/deployments/ventaboletosadm*"
if [ -e $VER ]; then
@ -709,7 +765,8 @@ case $service in
echo -e " "
logt=$(date +%d-%m-%Y)
echo -e "Gravando log da atualização em "/dados/$adm/standalone/log/atualizacao_$logt.log" ..."
feito=$(who | awk '{print $1}' | head -n 1 | tr a-z A-Z)
# feito=$(who | awk '{print $1}' | head -n 1 | tr a-z A-Z)
feito=$(echo -e $userj | tr a-z A-Z)
echo -e "
----------------------------------------------------------------------------------
- Atualização >>>ADM<<<
@ -742,6 +799,8 @@ case $service in
echo -e "*****Atualização do " $adm " para a $versaonova finalizada!!!****"
echo -e "***********************************************************************"
rm -rf /tmp/ventaboletosadm.war
;;
6|Digitação)