blob: 17db1448c53fd250f86d6b997419a80ee7cf5718 [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 Bakerb63ea792016-08-11 10:24:48 -070035
36 - name: Create project for "{{ project }}"
37 os_project:
Scott Bakerb63ea792016-08-11 10:24:48 -070038 auth:
Zack Williams9cb1f3a2017-08-20 19:35:03 -070039 auth_url: "{{ endpoint }}"
40 username: "{{ admin_user }}"
41 password: "{{ admin_password }}"
42 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070043 {% if domain -%}
44 project_domain_name: "{{ domain }}"
45 user_domain_name: "{{ domain }}"
46 {%- endif %}
Zack Williamsdb373ef2018-04-01 14:10:21 -070047 interface: "admin"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070048 name: "{{ project }}"
Scott Bakerb63ea792016-08-11 10:24:48 -070049
50{% for role in roles %}
Zack Williams9cb1f3a2017-08-20 19:35:03 -070051 - name: Create role "{{ role }}"
52 os_keystone_role:
53 auth:
54 auth_url: "{{ endpoint }}"
55 username: "{{ admin_user }}"
56 password: "{{ admin_password }}"
57 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070058 {% if domain -%}
59 project_domain_name: "{{ domain }}"
60 user_domain_name: "{{ domain }}"
61 {%- endif %}
Zack Williamsdb373ef2018-04-01 14:10:21 -070062 interface: "admin"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070063 name: "{{ role }}"
64
65 - name: Add role "{{ role }}" to user "{{ name }}" on project "{{ project }}"
66 os_user_role:
67 auth:
68 auth_url: "{{ endpoint }}"
69 username: "{{ admin_user }}"
70 password: "{{ admin_password }}"
71 project_name: "{{ admin_project }}"
Andy Bavier66f9f342018-04-12 16:16:03 -070072 {% if domain -%}
73 project_domain_name: "{{ domain }}"
74 user_domain_name: "{{ domain }}"
75 {%- endif %}
Scott Bakerb63ea792016-08-11 10:24:48 -070076 user: "{{ name }}"
77 role: "{{ role }}"
Zack Williams9cb1f3a2017-08-20 19:35:03 -070078 project: "{{ project }}"
79
Scott Bakerb63ea792016-08-11 10:24:48 -070080{% endfor %}
81