add support for config generation
Change-Id: Iccc9f21e6d867203242daf513d6c20408bb29bf0
diff --git a/keystone/map.jinja b/keystone/map.jinja
index 7eeff81..91eff9c 100644
--- a/keystone/map.jinja
+++ b/keystone/map.jinja
@@ -24,7 +24,7 @@
'notification': False,
'roles': ['admin', 'Member']
},
-}, merge=salt['pillar.get']('keystone:server')) %}
+}, merge=pillar.keystone.get('server', {})) %}
{% set client = salt['grains.filter_by']({
'Debian': {
@@ -36,7 +36,7 @@
'pkgs': ['python-keystoneclient'],
'roles': ['admin', 'Member'],
},
-}, merge=salt['pillar.get']('keystone:client')) %}
+}, merge=pillar.keystone.get('client', {})) %}
{% set control = salt['grains.filter_by']({
'Debian': {
@@ -45,4 +45,4 @@
'RedHat': {
'pkgs': [],
},
-}, merge=salt['pillar.get']('keystone:control')) %}
+}, merge=pillar.keystone.get('control', {})) %}
diff --git a/keystone/meta/config.yml b/keystone/meta/config.yml
new file mode 100644
index 0000000..79ebc05
--- /dev/null
+++ b/keystone/meta/config.yml
@@ -0,0 +1,13 @@
+config:
+ {%- if pillar.keystone.server is defined %}
+ {%- from "keystone/map.jinja" import server with context %}
+ keystone.conf:
+ source: "salt://keystone/files/{{ server.version }}/keystone.conf.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ keystone-paste.ini:
+ source: "salt://keystone/files/{{ server.version }}/keystone-paste.ini.{{ grains.os_family|default('Debian') }}"
+ template: jinja
+ policy.json:
+ source: "salt://keystone/files/{{ server.version }}/policy-v{{ server.api_version }}.json"
+ template: jinja
+ {%- endif %}
\ No newline at end of file
diff --git a/metadata/service/server/container.yml b/metadata/service/server/container.yml
new file mode 100644
index 0000000..a949a10
--- /dev/null
+++ b/metadata/service/server/container.yml
@@ -0,0 +1,44 @@
+parameters:
+ kubernetes:
+ control:
+ configmap:
+ keystone-server:
+ grains:
+ os_family: Debian
+ pillar:
+ keystone:
+ server:
+ enabled: true
+ version: ${_param:keystone_version}
+ service_token: ${_param:keystone_service_token}
+ service_tenant: service
+ admin_tenant: admin
+ admin_name: admin
+ admin_password: ${_param:keystone_admin_password}
+ admin_email: root@localhost
+ bind:
+ address: 0.0.0.0
+ private_address: ${_param:keystone_service_host}
+ private_port: 35357
+ public_address: ${_param:keystone_service_host}
+ public_port: 5000
+ region: RegionOne
+ database:
+ engine: mysql
+ host: ${_param:mysql_service_host}
+ port: 3306
+ name: 'keystone'
+ password: '${_param:mysql_keystone_password}'
+ user: 'keystone'
+ tokens:
+ engine: fernet
+ expiration: 43200
+ location: /etc/keystone/fernet-keys/
+ message_queue:
+ engine: rabbitmq
+ host: ${_param:rabbitmq_service_host}
+ port: 5672
+ user: openstack
+ password: ${_param:rabbitmq_openstack_password}
+ virtual_host: '/openstack'
+ ha_queues: true
\ No newline at end of file
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index 1c21fb8..d982699 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -9,3 +9,5 @@
enabled: true
sphinx:
enabled: true
+ config:
+ enabled: true
\ No newline at end of file