Je cherchais un moyen de mettre à jour l'ID AMI dans la configuration du plugin Jenkins EC2 après l'exécution d'une version de packer. Après quelques recherches, j'ai trouvé un moyen prometteur de le faire SI l'exécution du packer est effectuée par Jenkins lui-même, via un plugin groovy post-construction (attention, cela reste à tester, mais semble bon)
Cependant, je voudrais pouvoir exécuter la compilation du packer n'importe où et avoir l'ID AMI résultant mis à jour à Jenkins à distance, probablement via REST authentifié? Est-ce possible? Où devrais-je commencer à chercher?
Réponses:
Le PR auquel vous vous connectez contient un lien vers un script python qui fait exactement cela, puisque vous pouvez exécuter ce script depuis n'importe où vous pouvez accéder à votre serveur Jenkins.
la source
Mise à jour du script python du PR ci-dessus avec:
J'ai également écrit quelques instructions d'utilisation.
la source
Pour moi, le meilleur endroit pour commencer est d'avoir à la fin de votre packer.json un appel au post-processeur manifeste .
Il contiendra tous les détails de l'AMI que vous avez créé au format JSON.
par exemple "artifact_id": "us-west-1: ami-XXXXXXXX",
Cela peut ensuite être lu et utilisé par n'importe quel outillage de votre choix.
Source: https://www.packer.io/docs/post-processors/manifest.html
la source