Add support for Host definitions in ssh_config
This gives us the ability to define system-wide definitions for specific Hosts, and their options.
For example, with this in pillar:
```
# this is the place for host-wide SSH config
ssh_config:
...
Hosts:
# this simplifies cloning with custom params
# eg: git clone my-git:foo/bar
my-git:
User: git
HostName: git.example.com
Port: 2222
```
This would add a section in `/etc/ssh/ssh_config`:
```
Host my-git
User git
HostName git.example.com
Port 2222
```
This commit is contained in:
parent
d14f8db721
commit
143451eb19
@ -68,6 +68,15 @@
|
|||||||
{{ option(' PermitLocalCommand', 'no') }}
|
{{ option(' PermitLocalCommand', 'no') }}
|
||||||
{{ option(' VisualHostKey', 'no') }}
|
{{ option(' VisualHostKey', 'no') }}
|
||||||
|
|
||||||
|
{%- if 'Hosts' in ssh_config %}
|
||||||
|
{%- do processed_options.append('Hosts') %}
|
||||||
|
{% for host, conf in ssh_config['Hosts'].items() %}
|
||||||
|
Host {{ host }}
|
||||||
|
{%- for key, val in conf.items() %}
|
||||||
|
{{ key }} {{ val }}{%- endfor %}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
{# Handling unknown in salt template options #}
|
{# Handling unknown in salt template options #}
|
||||||
{%- for keyword in ssh_config.keys() %}
|
{%- for keyword in ssh_config.keys() %}
|
||||||
{#- Matches have to be at the bottom and should be handled differently -#}
|
{#- Matches have to be at the bottom and should be handled differently -#}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user