Add a trigger to call ldap_backend define
authorCyril Lopez <cylopez@redhat.com>
Thu, 30 Mar 2017 13:54:32 +0000 (15:54 +0200)
committerJuan Antonio Osorio Robles <jaosorior@redhat.com>
Fri, 7 Apr 2017 07:23:33 +0000 (07:23 +0000)
commit44f627c8cd784fd3fa324643b3e131f557317e19
treeeba7007d75afc169b7f069759fd5f9d05e342318
parent58e4dc837f77a92585a8f54d3cf642014c40bd6e
Add a trigger to call ldap_backend define

Ldap_backend is a define so we need a resource to talk it. If
ldap_backend_enable set by tripleo-heat-templates, we call the
ldap_backend as a resource.

Given an environment such as the following:

parameter_defaults:
  KeystoneLdapDomainEnable: true
  KeystoneLDAPBackendConfigs:
    tripleoldap:
      url: ldap://192.0.2.250
      user: cn=openstack,ou=Users,dc=redhat,dc=example,dc=com
      password: Secrete
      suffix: dc=redhat,dc=example,dc=com
      user_tree_dn: ou=Users,dc=redhat,dc=example,dc=com
      user_filter: "(memberOf=cn=OSuser,ou=Groups,dc=redhat,dc=example,dc=com)"
      user_objectclass: person
      user_id_attribute: cn
      user_allow_create: false
      user_allow_update: false
      user_allow_delete: false
  ControllerExtraConfig:
    nova::keystone::authtoken::auth_version: v3
    cinder::keystone::authtoken::auth_version: v3

It would then create a domain called tripleoldap with an LDAP
configuration as defined by the hash. The parameters from the
hash are defined by the keystone::ldap_backend resource in
puppet-keystone.

More backends can be added as more entries to that hash.

Partial-Bug: 1677603
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Co-Authored-By: Guillaume Coré <gucore@redhat.com>
Signed-off-by: Cyril Lopez <cylopez@redhat.com>
Change-Id: I1593c6a33ed1a0ea51feda9dfb6e1690eaeac5db
(cherry picked from commit b8388e378a9151bccbac0db0478b1ef5d1e2e3fb)
manifests/profile/base/keystone.pp
releasenotes/notes/add-ldap-backend-48e875e971343e2a.yaml [new file with mode: 0644]