add docker files

This commit is contained in:
canguilieme julien 2024-10-07 21:41:46 +02:00
parent a28aa46fea
commit 2d71ddc099

View File

@ -22,21 +22,43 @@ test-job:
deploy-job: deploy-job:
stage: deploy stage: deploy
tags:
- deploiement
script: script:
- set -x
- echo "Déploiement sur Portainer..." - echo "Déploiement sur Portainer..."
- echo "Utilisation du token API de Portainer..." - echo "Utilisation du token API de Portainer..."
# Vérifier que la variable PORTAINER_API_KEY est définie (sans l'afficher)
- if [ -z "$PORTAINER_API_KEY" ]; then echo "Erreur : La variable PORTAINER_API_KEY n'est pas définie."; exit 1; fi
# Vérifier que PORTAINER_URL et STACK_ID sont définis
- if [ -z "$PORTAINER_URL" ]; then echo "Erreur : La variable PORTAINER_URL n'est pas définie."; exit 1; fi
- if [ -z "$STACK_ID" ]; then echo "Erreur : La variable STACK_ID n'est pas définie."; exit 1; fi
# Optionnel : Afficher les variables (sans afficher les données sensibles)
- echo "PORTAINER_URL : $PORTAINER_URL"
- echo "STACK_ID : $STACK_ID"
- echo "Déploiement de la stack sur Portainer..."
# Exécuter la commande curl avec l'option -v pour avoir plus de détails
- | - |
API_KEY="$PORTAINER_API_KEY" RESPONSE=$(curl -v -X PUT \
- | -H "Authorization: Bearer $PORTAINER_API_KEY" \
curl -s -X PUT \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-d '{"Prune": true}' \ -d '{"Prune": true}' \
http://$PORTAINER_URL/api/stacks/$STACK_ID/deploy http://$PORTAINER_URL/api/stacks/$STACK_ID/deploy 2>&1)
- echo "Déploiement terminé."
# Extraire le code HTTP de la réponse
HTTP_CODE=$(echo "$RESPONSE" | grep "< HTTP/" | awk '{print $3}')
# Afficher la réponse pour le débogage
echo "Réponse de l'API :"
echo "$RESPONSE"
if [ "$HTTP_CODE" != "200" ]; then
echo "Erreur : Échec du déploiement. Code HTTP : $HTTP_CODE"
exit 1
fi
- echo "Déploiement terminé avec succès."
dependencies:
- build-job
- test-job