He estado buscando una manera de actualizar el ID de AMI en la configuración del complemento Jenkins EC2 después de ejecutar una compilación de empaquetador. Después de investigar un poco, encontré una forma prometedora de hacerlo SI la ejecución del empaquetador la realiza Jenkins mismo, a través del complemento maravilloso posterior a la construcción (tenga en cuenta que esto aún no se ha probado, pero se ve bien)
Sin embargo, me gustaría poder ejecutar la compilación del empaquetador en cualquier lugar y actualizar el ID de AMI resultante en Jenkins de forma remota, presumiblemente a través de REST autenticado. ¿Es eso posible? ¿Dónde comenzaría a buscar?
Respuestas:
El PR al que se está enlazando contiene un enlace a un script de Python que hace exactamente esto, ya que puede ejecutar ese script desde cualquier lugar donde pueda acceder a su servidor Jenkins.
fuente
Se actualizó el script de Python del PR anterior con:
También escribí algunas instrucciones de uso.
fuente
Para mí, el mejor lugar para comenzar es tener al final de su packer.json una llamada al postprocesador de manifiesto .
Esto contendrá los detalles completos de la AMI que ha creado en formato JSON.
por ejemplo, "artifact_id": "us-west-1: ami-XXXXXXXX",
Esto puede ser leído y aplicado por cualquier herramienta que elija.
Fuente: https://www.packer.io/docs/post-processors/manifest.html
fuente