Skip to content
Snippets Groups Projects
Commit a5e402f1 authored by Dave Walker (Daviey)'s avatar Dave Walker (Daviey) Committed by Dave Walker
Browse files

Support Keystone Domain specific files


Currently, it is not possible to make use of Keystone Domain
specific settings. Such as different domains using different
LDAP servers or SQL.

To enable for example domain ACME - domain settings would be
put into:
{{ node_custom_config }}keystone/domains/keystone.ACME.conf

Change-Id: I23620978c618dd4a3598d7cb74c3e9cf8c2394ac
Closes-Bug: #1599868
Signed-off-by: default avatarDave Walker (Daviey) <email@daviey.com>
parent 5c2c0a9c
No related branches found
No related tags found
No related merge requests found
--- ---
- name: Check if Keystone Domain specific settings enabled
local_action: stat path="{{ node_custom_config }}/keystone/domains"
register: keystone_domain_cfg
- name: Ensuring config directories exist - name: Ensuring config directories exist
file: file:
path: "{{ node_config_directory }}/{{ item }}" path: "{{ node_config_directory }}/{{ item }}"
...@@ -7,6 +11,15 @@ ...@@ -7,6 +11,15 @@
with_items: with_items:
- "keystone" - "keystone"
- name: Creating Keystone Domain directory
file:
dest: "{{ node_config_directory }}/{{ item }}/domains/"
state: "directory"
when:
keystone_domain_cfg.stat.exists
with_items:
- "keystone"
- name: Copying over config.json files for services - name: Copying over config.json files for services
template: template:
src: "{{ item }}.json.j2" src: "{{ item }}.json.j2"
...@@ -29,6 +42,13 @@ ...@@ -29,6 +42,13 @@
with_items: with_items:
- "keystone" - "keystone"
- name: Copying Keystone Domain specific settings
copy:
src: "{{ item }}"
dest: "{{ node_config_directory }}/keystone/domains/"
with_fileglob:
- "{{ node_custom_config }}/keystone/domains/*"
- name: Copying over wsgi-keystone.conf - name: Copying over wsgi-keystone.conf
template: template:
src: "wsgi-keystone.conf.j2" src: "wsgi-keystone.conf.j2"
......
...@@ -10,6 +10,12 @@ secure_proxy_ssl_header = HTTP_X_FORWARDED_PROTO ...@@ -10,6 +10,12 @@ secure_proxy_ssl_header = HTTP_X_FORWARDED_PROTO
connection = mysql+pymysql://{{ keystone_database_user }}:{{ keystone_database_password }}@{{ keystone_database_address }}/{{ keystone_database_name }} connection = mysql+pymysql://{{ keystone_database_user }}:{{ keystone_database_password }}@{{ keystone_database_address }}/{{ keystone_database_name }}
max_retries = -1 max_retries = -1
{% if keystone_domain_cfg.stat.exists %}
[identity]
domain_specific_drivers_enabled = true
domain_config_dir = /etc/keystone/domains
{% endif %}
[cache] [cache]
backend = oslo_cache.memcache_pool backend = oslo_cache.memcache_pool
enabled = True enabled = True
......
...@@ -9,6 +9,13 @@ ...@@ -9,6 +9,13 @@
"owner": "keystone", "owner": "keystone",
"perm": "0600" "perm": "0600"
}, },
{
"source": "{{ container_config_directory }}/domains",
"dest": "/etc/keystone/domains",
"owner": "keystone",
"perm": "0600",
"optional": true
},
{ {
"source": "{{ container_config_directory }}/wsgi-keystone.conf", "source": "{{ container_config_directory }}/wsgi-keystone.conf",
"dest": "/etc/{{ keystone_dir }}/wsgi-keystone.conf", "dest": "/etc/{{ keystone_dir }}/wsgi-keystone.conf",
......
---
features:
- LDAP & AD support has been added to the base images, and support
for Keystone multidomains config files.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment