Come aggiornare a distanza l'ID AMI nel plugin Jenkins EC2?


8

Ho cercato un modo per aggiornare l'ID AMI nella configurazione del plug-in Jenkins EC2 dopo l'esecuzione di un packer. Dopo alcuni scavi, ho trovato un modo promettente per farlo SE l'esecuzione del packer è eseguita dallo stesso Jenkins, tramite il plugin Groovy postbuild (attenzione, questo rimane da testare, ma sembra buono)

Tuttavia, vorrei poter eseguire la compilazione del packer ovunque e avere l'ID AMI risultante aggiornato a Jenkins in remoto, presumibilmente tramite REST autenticato? È possibile? Dove inizierei a cercare?


Non usandolo, ma affronterei il problema con un lavoro periodico su Jenkins stesso ottenendo l'ami id da aws ec2 descrivi-immagini
Tensibai

Risposte:


6

Il PR a cui ti stai collegando contiene un collegamento a uno script Python che fa esattamente questo, poiché puoi eseguire quello script da qualsiasi luogo in cui puoi accedere al tuo server Jenkins.


3

Aggiornato lo script Python dal PR sopra con:

  • Supporto CSRF per lavorare meglio con Jenkins 2.x
  • pieno supporto per lavori privati ​​Jenkins

Inoltre ho scritto alcune istruzioni per l'uso.


0

Per me, il posto migliore da cui iniziare è avere una chiamata al postprocessore manifest alla fine del tuo packer.json .

Questo conterrà tutti i dettagli dell'AMI che hai creato in formato JSON.

ad es. "artefact_id": "us-west-1: ami-XXXXXXXX",

Questo può quindi essere letto e attuato da qualsiasi strumento di vostra scelta.

Fonte: https://www.packer.io/docs/post-processors/manifest.html

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.