我正在尝试使用Ansible在aws中创建一个密钥对,但确实如此 把我扔到错误之下: 错误! with_dict需要一个字典
以下是我的keypair.yml
---
- hosts: localhost
connection: local
gather_facts: no
vars:
region: ap-southeast-1
keyname: aws_ansible
tasks:
- name: create a key-pair
local_action:
module: ec2_key
region: "{{region}}"
name: "{{keyname}}"
state: present
register: mykey
- name: write private key to a file
local_action: shell echo -e "{{ item.value.private_key }}" > ~/.ssh/"{{ keyname }}".pem &&
chmod 600 ~/.ssh/"{{ keyname }}".pem
with_dict: mykey
when: item.value.private_key is defined
答案 0 :(得分:2)
我假设您正在使用Ansible 2.x,请尝试:
with_dict: "{{ mykey }}"
如果仍然无效,请使用以下输出更新您的问题:
- name: create a key-pair
...
- debug:
var: result
- name: write private key to a file
...