blob: 853a585dba62aba4245590d1674311f7f5a00e40 [file] [log] [blame]
Zack Williamsdb373ef2018-04-01 14:10:21 -07001---
Matteo Scandolof0441032017-08-08 13:05:26 -07002# Copyright 2017-present Open Networking Foundation
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
Scott Bakerb63ea792016-08-11 10:24:48 -070016- hosts: 127.0.0.1
17 connection: local
18 tasks:
19
20 - name: Create user account for "{{ name }}"
21 os_user:
Zack Williams9cb1f3a2017-08-20 19:35:03 -070022 auth:
23 auth_url: "{{ endpoint }}"
24 username: "{{ admin_user }}"
25 password: "{{ admin_password }}"
26 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070027 {% if domain -%}
28 project_domain_name: "{{ domain }}"
29 user_domain_name: "{{ domain }}"
30 {%- endif %}
Zack Williamsdb373ef2018-04-01 14:10:21 -070031 interface: "admin"
Scott Bakerb63ea792016-08-11 10:24:48 -070032 name: "{{ name }}"
33 email: "{{ email }}"
34 password: "{{ password }}"
Scott Baker62c7eaf2018-05-22 15:59:26 -070035 domain: "{{ domain }}"
Scott Bakerb63ea792016-08-11 10:24:48 -070036
37 - name: Create project for "{{ project }}"
38 os_project:
Scott Bakerb63ea792016-08-11 10:24:48 -070039 auth:
Zack Williams9cb1f3a2017-08-20 19:35:03 -070040 auth_url: "{{ endpoint }}"
41 username: "{{ admin_user }}"
42 password: "{{ admin_password }}"
43 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070044 {% if domain -%}
45 project_domain_name: "{{ domain }}"
46 user_domain_name: "{{ domain }}"
47 {%- endif %}
Zack Williamsdb373ef2018-04-01 14:10:21 -070048 interface: "admin"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070049 name: "{{ project }}"
Scott Baker62c7eaf2018-05-22 15:59:26 -070050 domain: "{{ domain }}"
Scott Bakerb63ea792016-08-11 10:24:48 -070051
52{% for role in roles %}
Zack Williams9cb1f3a2017-08-20 19:35:03 -070053 - name: Create role "{{ role }}"
54 os_keystone_role:
55 auth:
56 auth_url: "{{ endpoint }}"
57 username: "{{ admin_user }}"
58 password: "{{ admin_password }}"
59 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070060 {% if domain -%}
61 project_domain_name: "{{ domain }}"
62 user_domain_name: "{{ domain }}"
63 {%- endif %}
Zack Williamsdb373ef2018-04-01 14:10:21 -070064 interface: "admin"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070065 name: "{{ role }}"
66
67 - name: Add role "{{ role }}" to user "{{ name }}" on project "{{ project }}"
68 os_user_role:
69 auth:
70 auth_url: "{{ endpoint }}"
71 username: "{{ admin_user }}"
72 password: "{{ admin_password }}"
73 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070074 {% if domain -%}
75 project_domain_name: "{{ domain }}"
76 user_domain_name: "{{ domain }}"
77 {%- endif %}
Scott Bakerb63ea792016-08-11 10:24:48 -070078 user: "{{ name }}"
79 role: "{{ role }}"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070080 project: "{{ project }}"
81
Scott Bakerb63ea792016-08-11 10:24:48 -070082{% endfor %}
83