3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# File 'modules/openstack/manifests/keystone/service/bobcat.pp', line 3
class openstack::keystone::service::bobcat(
Array[Stdlib::Fqdn] $memcached_nodes,
Integer $max_active_keys,
$osm_host,
$db_name,
$db_user,
$db_pass,
$db_host,
$public_workers,
$admin_workers,
$ldap_hosts,
$ldap_rw_host,
$ldap_base_dn,
$ldap_user_id_attribute,
$ldap_user_name_attribute,
$ldap_user_dn,
$ldap_user_pass,
$region,
String $keystone_admin_uri,
$wiki_status_page_prefix,
$wiki_status_consumer_token,
$wiki_status_consumer_secret,
$wiki_status_access_token,
$wiki_status_access_secret,
$wiki_consumer_token,
$wiki_consumer_secret,
$wiki_access_token,
$wiki_access_secret,
String $wsgi_server,
Stdlib::IP::Address::V4::CIDR $instance_ip_range,
String $wmcloud_domain_owner,
String $bastion_project_id,
Array[String] $prod_networks,
Array[String] $labs_networks,
Boolean $enforce_policy_scope,
Boolean $enforce_new_policy_defaults,
Stdlib::Port $public_bind_port,
Stdlib::Port $admin_bind_port,
Array[Stdlib::IP::Address::V4::Nosubnet] $prometheus_metricsinfra_reserved_ips,
Array[Stdlib::Port] $prometheus_metricsinfra_default_ports,
) {
class { "openstack::keystone::service::bobcat::${::lsbdistcodename}":
public_bind_port => $public_bind_port,
admin_bind_port => $admin_bind_port,
}
# Hint for conf sub-templates
$version = 'bobcat'
file {
'/etc/logrotate.d/keystone':
ensure => 'present',
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet:///modules/openstack/bobcat/keystone/keystone_logrotate',
require => Package['keystone'];
'/etc/keystone/keystone.conf':
ensure => 'present',
owner => 'keystone',
group => 'keystone',
mode => '0444',
show_diff => false,
content => template('openstack/bobcat/keystone/keystone.conf.erb'),
notify => Service[$wsgi_server],
require => Package['keystone'];
'/etc/keystone/keystone-paste.ini':
ensure => 'present',
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet:///modules/openstack/bobcat/keystone/keystone-paste.ini',
notify => Service[$wsgi_server],
require => Package['keystone'];
'/etc/keystone/policy.yaml':
ensure => 'present',
mode => '0644',
owner => 'root',
group => 'root',
source => 'puppet:///modules/openstack/bobcat/keystone/policy.yaml',
notify => Service[$wsgi_server],
require => Package['keystone'];
'/etc/keystone/logging.conf':
ensure => 'present',
source => 'puppet:///modules/openstack/bobcat/keystone/logging.conf',
owner => 'root',
group => 'root',
mode => '0644',
notify => Service[$wsgi_server],
require => Package['keystone'];
'/etc/keystone/keystone.my.cnf':
ensure => 'present',
owner => 'root',
group => 'root',
mode => '0400',
show_diff => false,
content => template('openstack/bobcat/keystone/keystone.my.cnf.erb');
'/usr/lib/python3/dist-packages/wmfkeystoneauth':
ensure => 'present',
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet:///modules/openstack/bobcat/keystone/wmfkeystoneauth',
notify => Service[$wsgi_server],
recurse => true;
'/usr/lib/python3/dist-packages/wmfkeystoneauth.egg-info':
ensure => 'present',
source => 'puppet:///modules/openstack/bobcat/keystone/wmfkeystoneauth.egg-info',
owner => 'root',
group => 'root',
mode => '0644',
notify => Service[$wsgi_server],
recurse => true;
}
# Specify that the Default domain uses ldap (while the default /config/ specifies
# mysql. Confusing, right?)
file {'/etc/keystone/domains/keystone.default.conf':
ensure => 'present',
owner => 'keystone',
group => 'keystone',
mode => '0444',
show_diff => false,
content => template('openstack/bobcat/keystone/keystone.default.conf.erb'),
notify => Service[$wsgi_server],
require => Package['keystone'];
}
# Map toolsbeta service users to keystone users in the 'toolsbeta' domain
# part of T358496
file {'/etc/keystone/domains/keystone.toolsbeta.conf':
ensure => 'present',
owner => 'keystone',
group => 'keystone',
mode => '0444',
show_diff => false,
content => template('openstack/bobcat/keystone/keystone.toolsbeta.conf.erb'),
notify => Service[$wsgi_server],
require => Package['keystone'];
}
}
|