Verifica lista em branco

master
root 2024-11-29 15:59:49 -03:00
parent 303fb2366b
commit a7357a6de2
1 changed files with 147 additions and 0 deletions

View File

@ -7,6 +7,7 @@ echo -e "# 2 - EventosExtrasServidor"
echo -e "# 3 - TareasAgendadas"
echo -e "# 4 - VentaBoletosClientes"
echo -e "# 5 - ADM "
echo -e "# 6 - Digitação"
echo -e "# "
echo -e "####################################################"
echo -e " "
@ -716,6 +717,152 @@ case $service in
echo -e "*****Atualização do " $adm " para a $versaonova finalizada!!!****"
echo -e "***********************************************************************"
;;
6|Digitação)
echo -e " "
echo -e "Opção \"6 - Digitação\" foi escolhida..."
sleep 2
echo -e " "
echo -e "Listando clientes neste server..."
echo -e "-------------------------------------------------"
echo -e "$listaclientes"
echo -e "-------------------------------------------------"
read -p "COPIE e COLE ou digite qual cliente será atualizado: " cliente
echo -e " "
portconf=$(cat /dados/$cliente/standalone/configuration/standalone.xml | grep "jboss.socket.binding.port-offset" | cut -d ":" -f 2 | tr -d '}">')
portapp=$(expr $portconf + 8080)
sleep 1
echo -e "Verificando a versão atual..."
[ ! -x "$(which unzip)" ] && echo "Instalando... " && sudo apt install unzip 1> /dev/null 2>&1 -y # unzip instalado?
mkdir -p /tmp/$cliente
cp -r /dados/$cliente/standalone/deployments/webstart.war/sco2/digitacao.jar.pack.gz /tmp/$cliente
/dados/jdk-11.0.5/bin/unpack200 /tmp/$cliente/digitacao.jar.pack.gz /tmp/$cliente/digitacao.jar 1> /dev/null 2>&1
versaoatual=$(unzip -p /tmp/$cliente/digitacao.jar version.properties | awk -F= '/^version=/ {print $2}')
echo -e " "
echo -e "A versão atual é: $versaoatual"
echo -e " "
echo -e "Abaixo, informe seu usuario e senha do Jenkins..."
echo -e " "
echo -e " https://jenkinstotalbus.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://jenkinstotalbus.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 " "
read -p "Informe o NÚMERO da versão do Digitação: " versaodig
echo -e " "
sleep 3
listclient=$(curl https://jenkinstotalbus.rjconsultores.com.br/job/SCO%20-%20Digitacao/$versaodig/artifact/firmar/ -su "$userj:$passj" | grep -oP '<a href="\K[^"]+(?=")' | grep -vE '^(/|#|\?|http://|\.)' | grep -v '/$')
if [ -z "$listclient" ]; then
echo -e "A versão $versaodig do Digitação não está disponível para download."
echo -e "Verifique e execute novamente."
echo -e "Finalizado!!!"
exit 0
else
echo -e "Listando arquivos disponíveis da versão ***" $versaodig "***"
echo -e "--------------------------------------------"
echo -e "$listclient"
echo -e "--------------------------------------------"
fi
echo -e " "
read -p "COPIE e COLE ou digite qual será utilizado: " digescolhido
echo -e " "
echo -e "Baixando $digescolhido versão $versaodig ..."
rm -rf /tmp/digitacao.jar.pack.gz
filedig=$(curl -u $userj:$passj -o /tmp/digitacao.jar.pack.gz https://jenkinstotalbus.rjconsultores.com.br/job/SCO%20-%20Digitacao/$versaodig/artifact/firmar/$digescolhido/digitacao.jar.pack.gz)
echo -e " "
sleep 1
echo -e "***Iniciando backup do "digitacao.jar.pack.gz" de " $cliente " ..."
echo -e " "
portconf=$(cat /dados/$cliente/standalone/configuration/standalone.xml | grep "socket-binding-group name" | cut -d ":" -f 2 | tr -d '}">')
portconsole=$(expr $portconf + 9990)
sleep 1
time=$(date +%d-%m-%Y-%H-%M)
mkdir -p /dados/bkp_DIG/$cliente-$time
bkp=/dados/bkp_DIG/$cliente-$time
cp -rv /dados/$cliente/standalone/deployments/webstart.war/sco2/digitacao.jar.pack.gz $bkp/digitacao.jar.pack.gz
rm -rf /dados/$cliente/standalone/deployments/webstart.war/sco2/digitacao.jar.pack.gz*
rm -rf /dados/$cliente/standalone/deployments/webstart.war/sco2/scopaf.conf*
sleep 1
echo -e " "
echo -e "Iniciando atualização do "Digitação" do cliente "$cliente" para versão "$versaodig"..."
cp -rv /tmp/digitacao.jar.pack.gz /dados/$cliente/standalone/deployments/webstart.war/sco2/
chown -Rf $cliente:$cliente /dados/$cliente/standalone/deployments/webstart.war/sco2/
echo -e " "
sleep 5
echo -e "reiniciando $cliente ... "
systemctl restart $cliente
echo -e " "
URL="http://$IPPRIV:$portapp"
while true; do
STATUS_CODE=$(curl -o /dev/null -s -w "%{http_code}" "$URL")
if [ "$STATUS_CODE" -eq 200 ]; then
echo -e "--------------------------------------------------"
echo -e "Restart finalizado!!! $cliente NO AR!!!"
echo -e "--------------------------------------------------"
break
else
echo -e "aguardando $cliente subir ..."
fi
sleep 5
done
echo -e " "
echo -e "Verificando nova versão..."
/dados/jdk-11.0.5/bin/unpack200 /tmp/digitacao.jar.pack.gz /tmp/digitacao.jar 1> /dev/null 2>&1
versaonova=$(unzip -p /tmp/digitacao.jar version.properties | awk -F= '/^version=/ {print $2}')
logt=$(date +%d-%m-%Y)
echo -e "Gravando log da atualização em "/dados/$cliente/standalone/log/atualizacao_$logt.log" ..."
feito=$(echo -e $userj | tr a-z A-Z)
echo -e " "
echo -e "Atualização do Digitação "$cliente" para versão "$versaonova" concluída!!! "
echo -e " "
echo -e "
----------------------------------------------------------------------------------
- Atualização ***Digitação***
- Data/Hora: $time
- Atualizando cliente: $cliente
- Versão antiga: $versaoatual
- Versão NOVA: *** $versaonova ***
- Arquivo baixado: $filedig
- Backup salvo em \"$bkp/digitacao.jar.pack.gz\"
- Console: http://$IPPRIV:$portconsole
- Feito por: $feito
################################################################################################################
#- Em caso de Rollback execute os comandos abaixo:
mv /dados/$cliente/standalone/deployments/webstart.war/sco2/digitacao.jar.pack.gz /tmp/digitacao.jar.pack.gz_RB
rm -rf /dados/$cliente/standalone/deployments/webstart.war/sco2/scopaf.conf*
cp -r $bkp/digitacao.jar.pack.gz /dados/$cliente/standalone/deployments/webstart.war/sco2/digitacao.jar.pack.gz
chown -Rf $cliente:$cliente /dados/$cliente/standalone/deployments/webstart.war/sco2/
################################################################################################################
----------------------------------------------------------------------------------" >> /dados/$cliente/standalone/log/atualizacao_$logt.log
rm -rf /tmp/SCO*
rm -rf /tmp/$cliente
echo -e " "
echo -e "- Versão antiga: $versaoatual"
echo -e " "
echo -e "- Nova Versão: $versaonova "
echo -e " "
echo -e "- Console: http://$IPPRIV:$portconsole"
echo -e " "
echo -e "##############F-I-N-A-L-I-Z-A-D-O!!!##################################"
exit 0
;;
*)