Fix #11 #12
|
@ -35,7 +35,8 @@ users:
|
||||||
#multiline
|
#multiline
|
||||||
state: absent
|
state: absent
|
||||||
ssh_config:
|
ssh_config:
|
||||||
- ServerAliveInterval: 10
|
- line: "ServerAliveInterval: 10"
|
||||||
|
- line: "Compression no"
|
||||||
- name: test
|
- name: test
|
||||||
state: present
|
state: present
|
||||||
keys:
|
keys:
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
10.106.116.157 ssh_short_name=host1 ansible_user=root
|
10.106.116.157 ansible_user=root
|
||||||
10.106.116.139 ssh_short_name=host2 ansible_user=root
|
10.106.116.139 ansible_user=root
|
||||||
34.242.108.38 ssh_short_name=freebsd1 ansible_user=ec2-user ansible_python_interpreter=/usr/local/bin/python2.7
|
#34.242.108.38 ssh_short_name=freebsd1 ansible_user=ec2-user ansible_python_interpreter=/usr/local/bin/python2.7
|
||||||
|
|
|
@ -19,27 +19,37 @@
|
||||||
no_log: True
|
no_log: True
|
||||||
|
|
||||||
|
|
||||||
- name: Configure ~/.ssh/config
|
- name: CHECK VARS
|
||||||
blockinfile:
|
debug:
|
||||||
path: "/home/{{ item.0.name }}/.ssh/config"
|
msg: "{{ item.1 }}"
|
||||||
owner: "{{ item.0.name }}"
|
|
||||||
group: "{{ item.0.name }}"
|
|
||||||
mode: 0600
|
|
||||||
marker: "# {mark} ANSIBLE MANAGED BLOCK"
|
|
||||||
content: |
|
|
||||||
{% for host in groups['all'] -%}
|
|
||||||
Host {{ hostvars[host]['ssh_short_name'] }}
|
|
||||||
Hostname {{ hostvars[host]['inventory_hostname'] }}
|
|
||||||
RemoteForward /home/{{ item.0.name }}/.gnupg/S.gpg-agent $HOME/.gnupg/S.gpg-agent
|
|
||||||
RemoteForward /home/{{ item.0.name }}/.gnupg/S.gpg-agent.ssh $HOME/.gnupg/S.gpg-agent.ssh
|
|
||||||
{% for k,v in item.1.items() %}
|
|
||||||
{% if k|lower != "host" and k|lower != "hostname" %}
|
|
||||||
{{k}} {{v}}
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
{% endfor %}
|
|
||||||
with_subelements:
|
with_subelements:
|
||||||
- "{{ users }}"
|
- "{{ users }}"
|
||||||
- ssh_config
|
- ssh_config
|
||||||
- skip_missing: true
|
- skip_missing: true
|
||||||
when: item.0.state == "present"
|
when: item.0.state == "present"
|
||||||
|
|
||||||
|
- name: Configure ~/.ssh/config
|
||||||
|
blockinfile:
|
||||||
|
#path: "/home/{{ item.0.name }}/.ssh/config"
|
||||||
|
path: "/home/{{ item.name }}/.ssh/config"
|
||||||
|
#owner: "{{ item.0.name }}"
|
||||||
|
owner: "{{ item.name }}"
|
||||||
|
#group: "{{ item.0.name }}"
|
||||||
|
group: "{{ item.name }}"
|
||||||
|
mode: 0600
|
||||||
|
marker: "# {mark} ANSIBLE MANAGED BLOCK"
|
||||||
|
content: |
|
||||||
|
{% for host in groups['all'] -%}
|
||||||
|
Host {{ hostvars[host]['ansible_hostname'] }}
|
||||||
|
Hostname {{ hostvars[host]['inventory_hostname'] }}
|
||||||
|
RemoteForward /home/{{ item.name }}/.gnupg/S.gpg-agent $HOME/.gnupg/S.gpg-agent
|
||||||
|
RemoteForward /home/{{ item.name }}/.gnupg/S.gpg-agent.ssh $HOME/.gnupg/S.gpg-agent.ssh
|
||||||
|
{% for item in item.ssh_config %}
|
||||||
|
{{ item.line }}
|
||||||
|
{% endfor %}
|
||||||
|
{% endfor %}
|
||||||
|
with_items:
|
||||||
|
- "{{ users }}"
|
||||||
|
- skip_missing: true
|
||||||
|
when: item.ssh_config is defined and item.state == "present"
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue