pipeline { agent any stages { stage('Check mise à jour') { steps { script { // Exécutez le playbook Ansible pour vérifier les mises à jour sh "git clone https://git.zestes.fr/jules/jenkins_update_prod.git" def result = sh(script: 'ansible-playbook -i jenkins_update_prod/inventory.ini jenkins_update_prod/alpine_list_update.yml', returnStdout: true) echo "Résultat de la vérification des mises à jour :\n${result}" } } } stage('Approuver ?') { steps { input message: 'Voulez-vous procéder à l\'installation des mises à jour ?' } } stage('Install Updates') { steps { // Exécutez à nouveau le playbook Ansible pour installer les mises à jour et redémarrer sh 'ansible-playbook -i jenkins_update_prod/inventory.ini jenkins_update_prod/alpine_upgrade.yml' } } stage('Reboot VM Alpine') { steps { // Exécutez à nouveau le playbook Ansible pour installer les mises à jour et redémarrer sh 'ansible-playbook -i jenkins_update_prod/inventory.ini jenkins_update_prod/reboot.yml' } } } post { always { // Nettoyage de l'espace de travail cleanWs() } } }