Hi all
I'm trying to make some kind of automation to create an AMI out of an EC2 
instance. So I have this chunk that creates the instance:

- name: Launch an Ubuntu 14.04 EC2 instance
  hosts: localhost
  connection: local
  gather_facts: no
  tasks:
  - name: Find the latest Ubuntu AMI
    ec2_ami_search: distro=ubuntu release=trusty region=ap-southeast-1 
store=ebs-ssd virt=hvm
    register: ubuntu_image
  - name: Start the new EC2 instance
    ec2:
      image: "{{ ubuntu_image.ami }}"
      region: ap-southeast-1
      zone: ap-southeast-1b
      instance_type: t2.small
      vpc_subnet_id: xxxxxxxxxxxxxxxx
      group_id: ['sg-xxxxxxxx', 'sg-xxxxxxx']
      key_name: random_key
      wait: yes
      wait_timeout: 500
    register: ec2
  - name: Add the new instance to host group
    add_host: hostname={{ item.private_ip }} groupname=launched
    with_items: ec2.instances
  - name: Wait for SSH to come up on the new instance
    wait_for: host={{ item.private_ip }} port=22 delay=60 timeout=320 
state=started
    with_items: ec2.instances

Then I try to use the instance and generate an AMI out of that:

- name: Create an AMI from the provisioned instance
  hosts: localhost
  connection: local
  gather_facts: no
  tasks:
  - ec2_ami: region=ap-southeast-1 instance_id={{ item.id }} wait=no 
name=basebox-2000000
    with_items:
      - ec2.instances

- name: Delete the instance now that the AMI is created
  hosts: localhost
  connection: local
  gather_facts: no
  tasks:
  - ec2:
      region: ap-southeast-1
      instance_ids: "{{ item.id }}"
      state: 'absent'
    with_items:
      - ec2.instances

But I get errors like this:


TASK: [ec2_ami region=ap-southeast-1 instance_id={{ item.id }} wait=no 
name=basebox-2000000] ***
fatal: [localhost] => One or more undefined variables: 'str object' has no 
attribute 'id'

I guess I'm missing something with iterating over a hash but can't figure 
what. Any ideas?

-- 
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/cc359c02-afd3-4c71-931d-7c5db8fde6a6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to