Merge pull request #225 from bradthurber/non-templated-cloud-config
Ability to create non-templated cloud maps/providers/profiles
This commit is contained in:
		
						commit
						4388d06963
					
				| @ -83,6 +83,37 @@ salt: | ||||
|   # salt cloud config | ||||
|   cloud: | ||||
|     master: salt | ||||
|      | ||||
|     # For non-templated custom cloud provider/profile/map files | ||||
|     providers: | ||||
|       provider-filename1.conf: | ||||
|         vmware-prod: | ||||
|           driver: vmware | ||||
|           user: myusernameprod | ||||
|           password: mypassword | ||||
|         vmware-nonprod: | ||||
|           driver: vmware | ||||
|           user: myusernamenonprod | ||||
|           password: mypassword | ||||
|     profiles: | ||||
|       profile-filename1.conf: | ||||
|         server-non-prod: | ||||
|           clonefrom: rhel6xtemplatenp | ||||
|           grains: | ||||
|             platform: | ||||
|               name: salt | ||||
|               realm: lab | ||||
|             subscription_level: standard | ||||
|           memory: 8GB | ||||
|           num_cpus: 4 | ||||
|           password: sUpErsecretey | ||||
|           provider: vmware-nonprod | ||||
|     maps: | ||||
|       map-filename1.map: | ||||
|         server-non-prod: | ||||
|           - host.mycompany.com: | ||||
|               grains:  | ||||
|                 environment: dev1 | ||||
| 
 | ||||
|     # You can take profile and map templates from an alternate location | ||||
|     # if you want to write your own. | ||||
|  | ||||
| @ -1,5 +1,9 @@ | ||||
| {% from "salt/map.jinja" import salt_settings with context %} | ||||
| 
 | ||||
| {% set cloudmaps = salt['pillar.get']('salt:cloud:maps', {}) -%} | ||||
| {% set cloudprofiles = salt['pillar.get']('salt:cloud:profiles', {}) -%} | ||||
| {% set cloudproviders = salt['pillar.get']('salt:cloud:providers', {}) -%} | ||||
| 
 | ||||
| python-pip: | ||||
|   pkg.installed | ||||
| 
 | ||||
| @ -58,6 +62,27 @@ salt-cloud-{{ dir }}: | ||||
|     - makedirs: True | ||||
| {%- endfor %} | ||||
| 
 | ||||
| {% for key, value in cloudmaps.items() %} | ||||
| /etc/salt/cloud.maps.d/{{ key }}: | ||||
|   file.managed: | ||||
|     - contents: | | ||||
|         {{ value|yaml(False) | indent(8) }} | ||||
| {% endfor %} | ||||
| 
 | ||||
| {% for key, value in cloudprofiles.items() %} | ||||
| /etc/salt/cloud.profiles.d/{{ key }}: | ||||
|   file.managed: | ||||
|     - contents: | | ||||
|         {{ value|yaml(False) | indent(8) }} | ||||
| {% endfor %} | ||||
| 
 | ||||
| {% for key, value in cloudproviders.items() %} | ||||
| /etc/salt/cloud.providers.d/{{ key }}: | ||||
|   file.managed: | ||||
|     - contents: | | ||||
|         {{ value|yaml(False) | indent(8) }} | ||||
| {% endfor %} | ||||
| 
 | ||||
| salt-cloud-providers-permissions: | ||||
|   file.directory: | ||||
|     - name: {{ salt_settings.config_path }}/cloud.providers.d | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Forrest
						Forrest