|
1 | | -service_env = { 'SERVICE_TOKEN' => new_resource.keystone_service_pass, |
2 | | - 'SERVICE_ENDPOINT' => 'http://localhost:35357/v2.0' } |
3 | | - |
4 | | -id_regex = %r(/[a-f0-9]{25,}/) |
5 | | - |
| 1 | +id_regex = /[a-f0-9]{25,}/ |
6 | 2 |
|
7 | 3 |
|
8 | 4 | action :create_user do |
9 | 5 | shell = Mixlib::ShellOut.new('keystone', 'user-get', |
10 | 6 | new_resource.user, |
11 | | - :environment => service_env) |
| 7 | + :environment => new_resource.env) |
12 | 8 | shell.run_command |
13 | 9 |
|
14 | 10 | if shell.stderr.index('No user with a name') |
15 | 11 | create = Mixlib::ShellOut.new('keystone', 'user-create', |
16 | 12 | "--name=#{new_resource.user}", |
17 | 13 | "--pass=#{new_resource.password}", |
18 | 14 | "--email=#{new_resource.email}", |
19 | | - :environment => service_env) |
| 15 | + :environment => new_resource.env) |
20 | 16 | create.run_command |
21 | 17 | create.error! # Tell chef user if something went wrong |
22 | 18 |
|
|
26 | 22 | user_id = shell.stdout.match id_regex |
27 | 23 | puts "\nUser #{new_resource.user} already exists with ID #{user_id}" |
28 | 24 | end |
29 | | - |
30 | 25 | end |
31 | 26 |
|
32 | 27 |
|
33 | 28 |
|
34 | 29 | action :create_tenant do |
35 | 30 | find = Mixlib::ShellOut.new('keystone', 'tenant-get', |
36 | 31 | new_resource.tenant, |
37 | | - :environment => service_env) |
| 32 | + :environment => new_resource.env) |
38 | 33 | find.run_command |
39 | 34 |
|
40 | 35 | if find.stderr.index('No tenant with a name') |
41 | 36 | create = Mixlib::ShellOut.new('keystone', 'tenant-create', |
42 | 37 | "--name=#{new_resource.tenant}", |
43 | | - :environment => service_env) |
| 38 | + :environment => new_resource.env) |
44 | 39 | create.run_command |
45 | 40 | create.error! # Tell chef user if something went wrong |
46 | 41 |
|
|
57 | 52 | action :create_role do |
58 | 53 | find = Mixlib::ShellOut.new('keystone', 'role-get', |
59 | 54 | new_resource.role, |
60 | | - :environment => service_env) |
| 55 | + :environment => new_resource.env) |
61 | 56 | find.run_command |
62 | 57 |
|
63 | 58 | if find.stderr.index('No role with a name') |
64 | 59 | create = Mixlib::ShellOut.new('keystone', 'role-create', |
65 | 60 | "--name=#{new_resource.role}", |
66 | | - :environment => service_env) |
| 61 | + :environment => new_resource.env) |
67 | 62 | create.run_command |
68 | 63 | create.error! # Tell chef user if something went wrong |
69 | 64 |
|
|
84 | 79 |
|
85 | 80 | find = Mixlib::ShellOut.new('keystone', 'user-get', |
86 | 81 | new_resource.user, |
87 | | - :environment => service_env) |
| 82 | + :environment => new_resource.env) |
88 | 83 | find.run_command |
89 | 84 |
|
90 | 85 | if find.stderr.index('No user with a name') |
|
96 | 91 |
|
97 | 92 | find = Mixlib::ShellOut.new('keystone', 'tenant-get', |
98 | 93 | new_resource.tenant, |
99 | | - :environment => service_env) |
| 94 | + :environment => new_resource.env) |
100 | 95 | find.run_command |
101 | 96 |
|
102 | 97 | if find.stderr.index('No tenant with a name') |
|
108 | 103 |
|
109 | 104 | find = Mixlib::ShellOut.new('keystone', 'role-get', |
110 | 105 | new_resource.role, |
111 | | - :environment => service_env) |
| 106 | + :environment => new_resource.env) |
112 | 107 | find.run_command |
113 | 108 |
|
114 | 109 | if find.stderr.index('No role with a name') |
|
121 | 116 | '--user-id', user_id.to_s, |
122 | 117 | '--tenant-id', tenant_id.to_s, |
123 | 118 | '--role-id', role_id.to_s, |
124 | | - :environment => service_env) |
| 119 | + :environment => new_resource.env) |
125 | 120 | update.run_command |
126 | 121 |
|
127 | 122 | if update.stderr.index('already has') |
|
137 | 132 | action :create_service do |
138 | 133 | find = Mixlib::ShellOut.new('keystone', 'service-get', |
139 | 134 | new_resource.name, |
140 | | - :environment => service_env) |
| 135 | + :environment => new_resource.env) |
141 | 136 | find.run_command |
142 | 137 |
|
143 | 138 | if find.stderr.index('No service with a name') |
144 | 139 | create = Mixlib::ShellOut.new('keystone', 'service-create', |
145 | 140 | '--name', new_resource.name, |
146 | 141 | '--type', new_resource.service_type, |
147 | 142 | '--description', new_resource.description, |
148 | | - :environment => service_env) |
| 143 | + :environment => new_resource.env) |
149 | 144 | create.run_command |
150 | 145 | create.error! #Let chef user know something then wrong. |
151 | 146 |
|
|
162 | 157 | action :create_endpoint do |
163 | 158 | find = Mixlib::ShellOut.new('keystone', 'service-get', |
164 | 159 | new_resource.service_type, |
165 | | - :environment => service_env) |
| 160 | + :environment => new_resource.env) |
166 | 161 | find.run_command |
167 | 162 |
|
168 | 163 | if find.stderr.index('No service with a name') |
|
173 | 168 | endpoint_found = false |
174 | 169 |
|
175 | 170 | find = Mixlib::ShellOut.new('keystone', 'endpoint-list', |
176 | | - :environment => service_env) |
| 171 | + :environment => new_resource.env) |
177 | 172 | find.run_command |
178 | 173 |
|
179 | 174 | find.stdout.each_line do |line| |
|
194 | 189 | '--publicurl', new_resource.public_url, |
195 | 190 | '--adminurl', new_resource.admin_url, |
196 | 191 | '--internalurl', new_resource.internal_url, |
197 | | - :environment => service_env) |
| 192 | + :environment => new_resource.env) |
198 | 193 | create.run_command |
199 | 194 | create.error! |
200 | 195 |
|
|
0 commit comments