Initial commit
[ta/infra-ansible.git] / roles / yarf / tasks / restful_service_setup.yml
1 # Copyright 2019 Nokia
2
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 # Create a service
16 - name: Ensure restful service
17   keystone:
18     command: "ensure_service"
19     endpoint: "{{ keystone_service_adminurl }}"
20     login_user: "{{ keystone_admin_user_name }}"
21     login_password: "{{ keystone_auth_admin_password }}"
22     login_project_name: "{{ keystone_admin_tenant_name }}"
23     service_name: "{{ restful_service_name }}"
24     service_type: "{{ restful_service_type }}"
25     description: "{{ restful_service_description }}"
26     insecure: "{{ keystone_service_adminuri_insecure }}"
27   register: add_service
28   until: add_service|success
29   retries: 5
30   delay: 2
31
32 # Create an admin user
33 - name: Ensure restful user
34   keystone:
35     command: "ensure_user"
36     endpoint: "{{ keystone_service_adminurl }}"
37     login_user: "{{ keystone_admin_user_name }}"
38     login_password: "{{ keystone_auth_admin_password }}"
39     login_project_name: "{{ keystone_admin_tenant_name }}"
40     user_name: "{{ restful_service_user_name }}"
41     tenant_name: "{{ restful_service_project_name }}"
42     password: "{{ restful_service_password }}"
43     insecure: "{{ keystone_service_adminuri_insecure }}"
44   register: add_service
45   until: add_service|success
46   retries: 5
47   delay: 10
48
49 # Add a role to the user
50 - name: Ensure restful user to admin role
51   keystone:
52     command: "ensure_user_role"
53     endpoint: "{{ keystone_service_adminurl }}"
54     login_user: "{{ keystone_admin_user_name }}"
55     login_password: "{{ keystone_auth_admin_password }}"
56     login_project_name: "{{ keystone_admin_tenant_name }}"
57     user_name: "{{ restful_service_user_name }}"
58     tenant_name: "{{ restful_service_project_name }}"
59     role_name: "{{ restful_role_name }}"
60     insecure: "{{ keystone_service_adminuri_insecure }}"
61   register: add_service
62   until: add_service|success
63   retries: 5
64   delay: 10
65
66 # Create an endpoint
67 - name: Ensure restful endpoint
68   keystone:
69     command: "ensure_endpoint"
70     endpoint: "{{ keystone_service_adminurl }}"
71     login_user: "{{ keystone_admin_user_name }}"
72     login_password: "{{ keystone_auth_admin_password }}"
73     login_project_name: "{{ keystone_admin_tenant_name }}"
74     region_name: "{{ restful_service_region }}"
75     service_name: "{{ restful_service_name }}"
76     service_type: "{{ restful_service_type }}"
77     insecure: "{{ keystone_service_adminuri_insecure }}"
78     endpoint_list:
79       - url: "{{ restful_service_publicurl }}"
80         interface: "public"
81       - url: "{{ restful_service_internalurl }}"
82         interface: "internal"
83   register: add_service
84   until: add_service|success
85   retries: 5
86   delay: 10