On what line was that error thrown?

I think you should provide the entire playbook and the complete output.

Regards, K.


On Wed, Dec 5, 2018 at 2:37 AM shaneoh1980 McP <[email protected]>
wrote:

> I had actually tried that already, and when I do I get this error:
>
> "msg": "The task includes an option with an undefined variable. The error
> was: 'new_ami_id' is undefined\
>
> Which is confusing because it seems to me it clearly is being defined.
>
> On Tue, 4 Dec 2018 at 15:26, Karl Auer <[email protected]> wrote:
>
>> You need to wrap wrap the variable up in curly braces so that it is
>> interpreted rather than taken literally.
>>
>> I.e., where you have:
>> new_ami_id: ami.results[0].image_id
>>
>> you need:
>> new_ami_id: "{{ ami.results[0].image_id }}"
>>
>> Regards, K.
>>
>> On Wed, Dec 5, 2018 at 2:14 AM shaneoh1980 McP <
>> [email protected]> wrote:
>>
>>> After more searching I also tried this:
>>>
>>> ---
>>> - hosts: webservers
>>>   remote_user: ubuntu
>>>   tasks:
>>>     - name: create an ami
>>>       ec2_ami:
>>>         region: eu-west-2
>>>         instance_id: i-0771xxxxxxxxxx
>>>         name: "{{ inventory_hostname }}-{{
>>> ansible_date_time.iso8601_basic_short }}"
>>>         tags:
>>>           Name: "{{ inventory_hostname }}-{{
>>> ansible_date_time.iso8601_basic_short }}"
>>>       register: ami
>>>
>>>
>>>     - name: set ami id
>>>       set_fact:
>>>         new_ami_id: ami.results[0].image_id
>>>
>>>
>>>     - pause:
>>>         seconds: 60
>>>
>>>
>>>     - name: copy AMI to a different region
>>>       ec2_ami_copy:
>>>         source_region: eu-west-2
>>>         source_image_id: "{{ new_ami_id }}"
>>>         name: "{{ new_ami_id }}"
>>>         region: eu-west-1
>>>
>>> But again, Ansible seems to interpret this literally:
>>>
>>> ami.results[0].image_id
>>>
>>> Rather than finding the ID of the newly created AMI.
>>>
>>> On Tuesday, 4 December 2018 12:04:52 UTC, shaneoh1980 McP wrote:
>>>>
>>>> I am trying to create a playbook which does the following:
>>>>
>>>>
>>>>    - creates an image of an AWS instance
>>>>    - copies the image to a different region
>>>>    - installs updates to the instance
>>>>
>>>>
>>>> I can do all of this apart from getting the AMI to copy to a different
>>>> region. I've tried a few things but this is my current playbook (this is
>>>> only for the AMI creation and copying, installing updates is handled
>>>> separately).
>>>>
>>>> - hosts: webservers
>>>>   remote_user: ubuntu
>>>>   tasks:
>>>>     - name: create an ami
>>>>       ec2_ami:
>>>>         region: eu-west-2
>>>>         instance_id: i-0771a2e4289c057e9
>>>>         name: "{{ inventory_hostname }}-{{
>>>> ansible_date_time.iso8601_basic_short }}"
>>>>         tags:
>>>>           Name: "{{ inventory_hostname }}-{{
>>>> ansible_date_time.iso8601_basic_short }}"
>>>>
>>>>
>>>>     - name: set ID name
>>>>       set_fact:
>>>>         new_ami_name: ec2_ami.image_id
>>>>
>>>>
>>>>     - pause:
>>>>         seconds: 60
>>>>
>>>>
>>>>     - name: copy AMI to a different region
>>>>       ec2_ami_copy:
>>>>         source_region: eu-west-2
>>>>         source_image_id: "{{ new_ami_name }}"
>>>>         name: "{{ new_ami_name }}"
>>>>         region: eu-west-1
>>>>
>>>> For which the creation, setting fact, and pause work, but on the last
>>>> part I get this error output:
>>>>
>>>> An exception occurred during task execution. To see the full traceback,
>>>> use -vvv. The error was: ClientError: An error occurred (InvalidAMIID.
>>>> Malformed) when calling the CopyImage operation: Invalid id:
>>>> "ec2_ami.image_id" (expecting "ami-...")
>>>>
>>>>
>>>>
>>>>
>>>> I've tried a few different things I'm fairly new to Ansible, but
>>>> basically I can't figure out how to pass the image_id of the newly created
>>>> AMI to the next play so that it can use this as the basis of the copying.
>>>>
>>>> I can see clearly that it's not registering the image_id as it's saying
>>>> it's not in the expected "ami-" format, but I'm stuck from there.
>>>>
>>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Ansible Project" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ansible-project/8995dac7-5f1b-470f-b1e6-11ce3b1a4074%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/8995dac7-5f1b-470f-b1e6-11ce3b1a4074%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>> Karl Auer
>>
>> Email  : [email protected]
>> Website: http://2pisoftware.com
>>
>> GPG/PGP : 958A 2647 6C44 D376 3D63 86A5 FFB2 20BC 0257 5816
>> Previous: F0AB 6C70 A49D 1927 6E05 81E7 AD95 268F 2AB6 40EA
>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "Ansible Project" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/ansible-project/ouLsLPAFuec/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> To post to this group, send email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/ansible-project/CA%2B%2BT08SN%3DZL1hX%3DBEBCB%3DYKi40rhd6Y%2BHeCTkopjOKRFgS6zEQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/ansible-project/CA%2B%2BT08SN%3DZL1hX%3DBEBCB%3DYKi40rhd6Y%2BHeCTkopjOKRFgS6zEQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/CAEu1aFzMhVJ-ZGiE0tG48vvRw42Z3tR5qFmGTKxOD33kWvygeQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/ansible-project/CAEu1aFzMhVJ-ZGiE0tG48vvRw42Z3tR5qFmGTKxOD33kWvygeQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Karl Auer

Email  : [email protected]
Website: http://2pisoftware.com

GPG/PGP : 958A 2647 6C44 D376 3D63 86A5 FFB2 20BC 0257 5816
Previous: F0AB 6C70 A49D 1927 6E05 81E7 AD95 268F 2AB6 40EA

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CA%2B%2BT08QEpHw8CunhFhsSO5rd%2BKq7E2GWz13dWxfdO-ornoXqNw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to