Thanks Benno, that's a good point, I usually associate ASG with launch 
config but for sure it is another way to do it.

On Friday, June 5, 2015 at 3:57:14 PM UTC+10, benno joy wrote:
>
> wouldn't ec2_asg do that automatically for you ?
>
>
>
> On Fri, Jun 5, 2015 at 10:35 AM, Igor Cicimov <
> [email protected] <javascript:>> wrote:
>
>> Hi all,
>>
>> I've been looking for the best way to achieve what is mentioned in the 
>> title of the message but haven't found any. At least not one that will 
>> produce a satisfactory result which can be used further down in the same 
>> playbook. 
>>
>> For example I've been testing the following loop:
>>
>>     - name: create instance
>>       ec2: image="{{ images[item.0.region] }}"
>>            keypair={{ keypair }}
>>            instance_type={{ instance_type }}
>>            instance_tags="{{ tags }}"
>>            vpc_subnet_id={{ item.1.subnet }}
>>            region={{ item.0.region }}
>>            group_id={{ group_id }}
>>            assign_public_ip=yes
>>            wait=true
>>            wait_timeout={{ wait_timeout }}
>>       with_subelements:
>>         - vpc 
>>         - subnets
>>       when: item.0.name == ec2_env
>>       register: ec2_info
>>
>> which does what I want, launches one instance per AZ in the chosen 
>> region, but the output registered is way too complicated to be of any use:
>>
>> TASK: [debug var=ec2_info] 
>> **************************************************** 
>> ok: [localhost] => {
>>     "var": {
>>         "ec2_info": {
>>             "changed": true,
>>             "msg": "All items completed",
>>             "results": [
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": true,
>>                     "instance_ids": [
>>                         "i-xxxxxxxx"
>>                     ],
>>                     "instances": [
>>                         {
>>                             "ami_launch_index": "0",
>>                             "architecture": "x86_64",
>>                             "dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "ebs_optimized": false,
>>                             "groups": {
>>                                 "sg-xxxxxxxx": "sg-xxxxxxxx"
>>                             },
>>                             "hypervisor": "xen",
>>                             "id": "i-xxxxxxxx",
>>                             "image_id": "ami-47a23a30",
>>                             "instance_type": "t2.micro",
>>                             "kernel": null,
>>                             "key_name":"xxxxxxxx",
>>                             "launch_time": "2015-06-05T02:48:14.000Z",
>>                             "placement": "eu-west-1a",
>>                             "private_dns_name": 
>> "xxxxxxxx.eu-west-1.compute.internal",
>>                             "private_ip": "xxxxxxxx",
>>                             "public_dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "public_ip": "xxxxxxxx",
>>                             "ramdisk": null,
>>                             "region": "eu-west-1",
>>                             "root_device_name": "/dev/sda1",
>>                             "root_device_type": "ebs",
>>                             "state": "running",
>>                             "state_code": 16,
>>                             "tags": {},
>>                             "tenancy": "default",
>>                             "virtualization_type": "hvm"
>>                         }
>>                     ],
>>                     "invocation": {
>>                         "module_args": "image=\"ami-47a23a30\" 
>> keypair=xxxxxxxx instance_type=t2.micro instance_tags=\"{'Environment': 
>> u'xxxxxxxx', 'Role': u'server', 'Type': 'type', 'Name': 
>> u'ec2-type-xxxxxxxx', 'Datacenter': u'xxxxxxxx'}\" 
>> vpc_subnet_id=subnet-xxxxxxxx region=eu-west-1 group_id=sg-xxxxxxxx 
>> assign_public_ip=yes wait=true wait_timeout=300",
>>                         "module_name": "ec2"
>>                     },
>>                     "item": [
>>                         {
>>                             "cidr": "xxxxxxxx",
>>                             "name": "xxxxxxxx",
>>                             "region": "eu-west-1",
>>                             "subnets_app": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ],
>>                             "subnets_db": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ]
>>                         },
>>                         {
>>                             "subnet": "subnet-xxxxxxxx",
>>                             "zone": "eu-west-1a"
>>                         }
>>                     ],
>>                     "tagged_instances": []
>>                 },
>>                 {
>>                     "changed": true,
>>                     "instance_ids": [
>>                         "i-xxxxxxxx"
>>                     ],
>>                     "instances": [
>>                         {
>>                             "ami_launch_index": "0",
>>                             "architecture": "x86_64",
>>                             "dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "ebs_optimized": false,
>>                             "groups": {
>>                                 "sg-xxxxxxxx": "sg-xxxxxxxx"
>>                             },
>>                             "hypervisor": "xen",
>>                             "id": "i-xxxxxxxx",
>>                             "image_id": "ami-47a23a30",
>>                             "instance_type": "t2.micro",
>>                             "kernel": null,
>>                             "key_name":"xxxxxxxx",
>>                             "launch_time": "2015-06-05T02:48:46.000Z",
>>                             "placement": "eu-west-1b",
>>                             "private_dns_name": 
>> "xxxxxxxx.eu-west-1.compute.internal",
>>                             "private_ip": "xxxxxxxx",
>>                             "public_dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "public_ip": "xxxxxxxx",
>>                             "ramdisk": null,
>>                             "region": "eu-west-1",
>>                             "root_device_name": "/dev/sda1",
>>                             "root_device_type": "ebs",
>>                             "state": "running",
>>                             "state_code": 16,
>>                             "tags": {},
>>                             "tenancy": "default",
>>                             "virtualization_type": "hvm"
>>                         }
>>                     ],
>>                     "invocation": {
>>                         "module_args": "image=\"ami-47a23a30\" 
>> keypair=xxxxxxxx instance_type=t2.micro instance_tags=\"{'Environment': 
>> u'xxxxxxxx', 'Role': u'server', 'Type': 'type', 'Name': 
>> u'ec2-type-xxxxxxxx', 'Datacenter': u'xxxxxxxx'}\" 
>> vpc_subnet_id=subnet-xxxxxxxx region=eu-west-1 group_id=sg-xxxxxxxx 
>> assign_public_ip=yes wait=true wait_timeout=300",
>>                         "module_name": "ec2"
>>                     },
>>                     "item": [
>>                         {
>>                             "cidr": "xxxxxxxx",
>>                             "name": "xxxxxxxx",
>>                             "region": "eu-west-1",
>>                             "subnets_app": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ],
>>                             "subnets_db": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ]
>>                         },
>>                         {
>>                             "subnet": "subnet-xxxxxxxx",
>>                             "zone": "eu-west-1b"
>>                         }
>>                     ],
>>                     "tagged_instances": []
>>                 },
>>                 {
>>                     "changed": true,
>>                     "instance_ids": [
>>                         "i-xxxxxxxx"
>>                     ],
>>                     "instances": [
>>                         {
>>                             "ami_launch_index": "0",
>>                             "architecture": "x86_64",
>>                             "dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "ebs_optimized": false,
>>                             "groups": {
>>                                 "sg-xxxxxxxx": "sg-xxxxxxxx"
>>                             },
>>                             "hypervisor": "xen",
>>                             "id": "i-xxxxxxxx",
>>                             "image_id": "ami-47a23a30",
>>                             "instance_type": "t2.micro",
>>                             "kernel": null,
>>                             "key_name":"xxxxxxxx",
>>                             "launch_time": "2015-06-05T02:49:14.000Z",
>>                             "placement": "eu-west-1c",
>>                             "private_dns_name": 
>> "xxxxxxxx.eu-west-1.compute.internal",
>>                             "private_ip": "xxxxxxxx",
>>                             "public_dns_name": "
>> xxxxxxxx.eu-west-1.compute.amazonaws.com",
>>                             "public_ip": "xxxxxxxx",
>>                             "ramdisk": null,
>>                             "region": "eu-west-1",
>>                             "root_device_name": "/dev/sda1",
>>                             "root_device_type": "ebs",
>>                             "state": "running",
>>                             "state_code": 16,
>>                             "tags": {},
>>                             "tenancy": "default",
>>                             "virtualization_type": "hvm"
>>                         }
>>                     ],
>>                     "invocation": {
>>                         "module_args": "image=\"ami-47a23a30\" 
>> keypair=xxxxxxxx instance_type=t2.micro instance_tags=\"{'Environment': 
>> u'xxxxxxxx', 'Role': u'server', 'Type': 'type', 'Name': 
>> u'ec2-type-xxxxxxxx', 'Datacenter': u'xxxxxxxx'}\" 
>> vpc_subnet_id=subnet-xxxxxxxx region=eu-west-1 group_id=sg-xxxxxxxx 
>> assign_public_ip=yes wait=true wait_timeout=300",
>>                         "module_name": "ec2"
>>                     },
>>                     "item": [
>>                         {
>>                             "cidr": "xxxxxxxx",
>>                             "name": "xxxxxxxx",
>>                             "region": "eu-west-1",
>>                             "subnets_app": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ],
>>                             "subnets_db": [
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1a"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1b"
>>                                 },
>>                                 {
>>                                     "subnet": "subnet-xxxxxxxx",
>>                                     "zone": "eu-west-1c"
>>                                 }
>>                             ]
>>                         },
>>                         {
>>                             "subnet": "subnet-xxxxxxxx",
>>                             "zone": "eu-west-1c"
>>                         }
>>                     ],
>>                     "tagged_instances": []
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 },
>>                 {
>>                     "changed": false,
>>                     "skipped": true
>>                 }
>>             ]
>>         }
>>     }
>> }
>>
>> So, any idea how to make this usable? Or maybe share your experience if 
>> you have already done it?
>>
>> Thanks,
>> Igor
>>
>> -- 
>> 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] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/b27240c8-42c5-44ec-8549-d99990fd2d1f%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/b27240c8-42c5-44ec-8549-d99990fd2d1f%40googlegroups.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/c862c280-ade7-4878-9753-6659e8959c93%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to