2015-10-20 2 views
0

У меня есть этот сборник пьес:Создать много примеров AWS с анзибль, «подсчет» не работает

--- 
# Run it like this: 
# ansible-playbook --extra-vars '{"VAR":"var-value", "VAR":"var-value"}' playbook-name.yml 
- hosts: localhost 
    vars: 
    instance_tag : "{{ TAG }}" 
    instances_num: 2 
    tasks: 
    - name: Create new AWS instances 
    local_action: 
     module: ec2 
     region: us-east-1 
     key_name: integration 
     instance_type: m3.medium 
     image: ami-61dcvfa 
     group: mysecgroup 
     instance_tags: 
     Name: "{{ instance_tag }}" 
    with_sequence: count = {{ instances_num | int }} 

Когда я бегу это он бросает это:

TASK: [Create new AWS instances] ********************************************** 
fatal: [localhost] => unknown error parsing with_sequence arguments: u'count = 1' 

FATAL: all hosts have already failed -- aborting 

Что я делаю неправильно? Я тоже пробовал с 2, но бросает ту же ошибку. Я пробовал также с "{{instances_num}}", но ничего.

ответ

0

ec2 module имеет параметр count, который можно использовать напрямую, а не пытаться использовать loop the task over a sequence.

Вы можете использовать его как это:

--- 
# Run it like this: 
# ansible-playbook --extra-vars '{"VAR":"var-value", "VAR":"var-value"}' playbook-name.yml 
- hosts: localhost 
    vars: 
    instance_tag : "{{ TAG }}" 
    instances_num: 2 
    tasks: 
    - name: Create new AWS instances 
    local_action: 
     module: ec2 
     region: us-east-1 
     key_name: integration 
     instance_type: m3.medium 
     image: ami-61dcvfa 
     group: mysecgroup 
     instance_tags: 
     Name: "{{ instance_tag }}" 
     count: "{{ instances_num }}" 
+0

Спасибо, я использовал код из какого-то учебника, который я сейчас не могу найти, и это не работало. –

Смежные вопросы