Fix generation of minion configuration
To support old and new way when client has single server to manage or multiple
profiles.
Change-Id: I2721d205e76d61cdf4686611406a0d6156d88295
diff --git a/keystone/meta/salt.yml b/keystone/meta/salt.yml
index 0be0720..b00f02c 100644
--- a/keystone/meta/salt.yml
+++ b/keystone/meta/salt.yml
@@ -11,35 +11,34 @@
{%- if pillar.keystone.server is defined or pillar.keystone.client is defined %}
keystone:
{%- if pillar.keystone.get('server', {'enabled': False}).enabled %}
- {%- from "keystone/map.jinja" import server with context %}
+ {%- from "keystone/map.jinja" import server with context %}
keystone.token: '{{ server.service_token }}'
keystone.endpoint: 'http://{{ server.bind.address }}:{{ server.bind.private_port }}/v2.0'
{%- else %}
- {%- from "keystone/map.jinja" import client with context %}
+ {%- from "keystone/map.jinja" import client with context %}
+ {%- if client.server.user is defined %}
keystone.user: '{{ client.server.user }}'
keystone.password: '{{ client.server.password }}'
keystone.tenant: '{{ client.server.tenant }}'
keystone.auth_url: 'http://{{ client.server.host }}:{{ client.server.public_port }}/v2.0/'
- {%- endif %}
+ {%- else %}
- # Profile based metadata
- {%- from "keystone/map.jinja" import client with context %}
- {%- for profile_name, identity in client.server.iteritems() %}
+ {#- Profile based metadata #}
+ {%- for profile_name, identity in client.server.iteritems() %}
+ {%- if identity.admin.get('protocol', 'http') == 'http' %}
+ {%- set protocol = 'http' %}
+ {%- else %}
+ {%- set protocol = 'https' %}
+ {%- endif %}
- {%- if identity.admin.get('protocol', 'http') == 'http' %}
- {%- set protocol = 'http' %}
- {%- else %}
- {%- set protocol = 'https' %}
- {%- endif %}
+ {%- if identity.admin.get('api_version', '2') == '3' %}
+ {%- set version = "v3" %}
+ {%- else %}
+ {%- set version = "v2.0" %}
+ {%- endif %}
- {%- if identity.admin.get('api_version', '2') == '3' %}
- {%- set version = "v3" %}
- {%- else %}
- {%- set version = "v2.0" %}
- {%- endif %}
-
- {%- if identity.admin.user is defined %}
- {%- if identity.admin.token is not defined %}
+ {%- if identity.admin.user is defined %}
+ {%- if identity.admin.token is not defined %}
{{ profile_name }}:
keystone.user: '{{ identity.admin.user }}'
@@ -48,10 +47,11 @@
keystone.auth_url: '{{ protocol+'://'+identity.admin.host+':'+identity.admin.port|string+'/'+version }}'
keystone.region_name: '{{ identity.admin.region_name }}'
- {%- endif %}
- {%- endif %}
- {%- endfor %}
-
+ {%- endif %}
+ {%- endif %}
+ {%- endfor %}
+ {%- endif %}
+ {%- endif %}
{%- endif %}
{#-