EC2からAMIを作成しようとしています。しかし、そうする前に、同じ名前のAMIが存在するかどうか確認したいと思います。存在する場合は、指定された名前のAMIを作成する前に登録を解除したいと思います。EC2_amiを使用したAMIの作成
問題1:AMIが既に存在する場合のみ、AMIの登録を解除するにはどうすればよいですか。 Issue2:登録解除コールが発行された場合、同じ名前のAMIを作成する前に、どのように待つのですか?ここで
は私が持っているもので、これまで- name: Check if AMI with the same name exists
ec2_ami_find:
name: "{{ ami_name }}"
register: ami_find
- name: Deregister AMI if it exists
ec2_ami:
image_id: "{{ ami_find.results[0].ami_id }}"
state: absent
when: ami_find.results[0].state == 'available'
- pause:
minutes: 5
- name: Creating the AMI from of the instance
ec2_ami:
instance_id: "{{ item.id }}"
wait: yes
name: "{{ ami_name }}"
delegate_to: 127.0.0.1
with_items: "{{ ec2.instances }}"
register: image
編集:私は新しいAMIを作成する前の状態が「利用可能」であるとき、AMIの登録を解除し、数分待つことができています (同じ名前を持つ)。しかし、時には私は次のような反応を得ることがあります。私はAMIの作成を続けたいと思います。
試してみることができますか?:when:ami_find.results |長さとami_find.results [0] .state == 'available'' – helloV
は答えとして投稿しました。 – helloV
ありがとうございます。それが働いた答えとしてマークしました。ご協力いただきありがとうございます – SSF