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('   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 #} | ||||
| {%- for keyword in ssh_config.keys() %} | ||||
|   {#- Matches have to be at the bottom and should be handled differently -#} | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 ketzacoatl
						ketzacoatl