diff options
author | zhihui wu <wu.zhihui1@zte.com.cn> | 2018-03-04 16:23:58 +0800 |
---|---|---|
committer | zhihui wu <wu.zhihui1@zte.com.cn> | 2018-03-06 14:25:50 +0800 |
commit | 8126d8250b7c7782d2a391d5bb450e784a31e857 (patch) | |
tree | 8cdbfde8bf12df39c826fad607a5622984078da5 | |
parent | 44b6f29402625d1d29d482a5524efa27112886ce (diff) |
generate inventory file and ssh configuration file
Generate inventory file and ssh configuration file for VM.
The default image is ubuntu 16.04. So the ansible user is
ubuntu.
Change-Id: Ie14ebcdcfbc24f045ffd32785eec07df5798c5fb
Signed-off-by: zhihui wu <wu.zhihui1@zte.com.cn>
4 files changed, 40 insertions, 0 deletions
diff --git a/resources/ansible_roles/openstack/defaults/main.yml b/resources/ansible_roles/openstack/defaults/main.yml index 830def62..261504ea 100644 --- a/resources/ansible_roles/openstack/defaults/main.yml +++ b/resources/ansible_roles/openstack/defaults/main.yml @@ -16,3 +16,4 @@ temp_dir: /tmp/qtip flavor_name: qtip_flavor stack_name: qtip_stack image_name: qtip_image +ansible_user: ubuntu diff --git a/resources/ansible_roles/openstack/tasks/main.yml b/resources/ansible_roles/openstack/tasks/main.yml index ed043831..6fabfb01 100644 --- a/resources/ansible_roles/openstack/tasks/main.yml +++ b/resources/ansible_roles/openstack/tasks/main.yml @@ -84,3 +84,14 @@ flavor: "{{ flavor_name }}" keypair: QtipKey external_network: "{{ external_network }}" + register: stack + +- name: generating inventory file + template: + src: hosts.j2 + dest: ./hosts + +- name: generating ssh.cfg + template: + src: ssh.cfg.j2 + dest: ./ssh.cfg diff --git a/resources/ansible_roles/openstack/templates/hosts.j2 b/resources/ansible_roles/openstack/templates/hosts.j2 new file mode 100644 index 00000000..6756d2a2 --- /dev/null +++ b/resources/ansible_roles/openstack/templates/hosts.j2 @@ -0,0 +1,17 @@ +localhost ansible_connection=local + +[SUT:children] +compute + +[node-groups:children] +compute + +[node-groups:vars] +ansible_ssh_common_args=-F ./ssh.cfg + +[compute] +{% for item in stack.stack.outputs %} +{% if item.output_key == 'instance_ip' %} +{{item.output_value}} +{% endif %} +{% endfor %} diff --git a/resources/ansible_roles/openstack/templates/ssh.cfg.j2 b/resources/ansible_roles/openstack/templates/ssh.cfg.j2 new file mode 100644 index 00000000..c0a1f94e --- /dev/null +++ b/resources/ansible_roles/openstack/templates/ssh.cfg.j2 @@ -0,0 +1,11 @@ +# Connect to target node + +{% for item in stack.stack.outputs %} +{% if item.output_key == 'instance_ip' %} +Host {{ item.output_value }} + HostName {{ item.output_value }} + User {{ ansible_user }} + IdentityFile {{ temp_dir }}/QtipKey +{% endif %} + +{% endfor %} |