Saya telah mencari cara untuk memperbarui id AMI dalam konfigurasi plugin Jenkins EC2 setelah build packer dijalankan. Setelah beberapa penggalian, saya menemukan cara yang menjanjikan untuk melakukannya JIKA menjalankan packer dilakukan oleh Jenkins sendiri, melalui plugin postbuild groovy (ingat, ini masih harus diuji, tetapi terlihat bagus)
Namun saya ingin dapat menjalankan build packer di mana saja, dan apakah id AMI yang dihasilkan diperbarui di Jenkins dari jarak jauh, mungkin melalui REST terotentikasi? Apakah itu mungkin? Di mana saya akan mulai mencari?
Jawaban:
PR yang Anda tautkan berisi tautan ke skrip python yang melakukan hal ini, karena Anda dapat menjalankan skrip itu dari mana saja Anda dapat mengakses server Jenkins.
sumber
Diperbarui skrip python dari PR di atas dengan:
Saya juga menulis beberapa instruksi penggunaan.
sumber
Bagi saya, tempat terbaik untuk memulai adalah memiliki di akhir paket Anda. Saya menerima panggilan ke manifes post-prosesor.
Ini akan berisi rincian lengkap AMI yang telah Anda buat dalam format JSON.
mis. "artifact_id": "us-west-1: ami-XXXXXXXX",
Ini kemudian dapat dibaca dan ditindaklanjuti dengan alat apa pun pilihan Anda.
Sumber: https://www.packer.io/docs/post-processors/manifest.html
sumber