openstack-ansible-os_neutron/tasks/neutron_service_setup.yml
Travis Truman 744270e64b Cleanup/standardize usage of tags
The numerous tags within the role have been condensed
to two tags: neutron-install and neutron-config

These tags have been chosen as they are namespaced
and cover the two major functions of the role.

Documentation has been updated to inform how each tag
influences the function of the role.

Change-Id: I5beda5397f1f4f6d03a4a6946700eb7aeab245ec
2016-07-12 10:05:44 -04:00

92 lines
3.2 KiB
YAML

---
# Copyright 2014, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Create a service
- name: Ensure neutron service
keystone:
command: "ensure_service"
endpoint: "{{ keystone_service_adminurl }}"
login_user: "{{ keystone_admin_user_name }}"
login_password: "{{ keystone_auth_admin_password }}"
login_project_name: "{{ keystone_admin_tenant_name }}"
service_name: "{{ neutron_service_name }}"
service_type: "{{ neutron_service_type }}"
description: "{{ neutron_service_description }}"
insecure: "{{ keystone_service_adminuri_insecure }}"
register: add_service
until: add_service|success
retries: 5
delay: 2
# Create an admin user
- name: Ensure neutron user
keystone:
command: "ensure_user"
endpoint: "{{ keystone_service_adminurl }}"
login_user: "{{ keystone_admin_user_name }}"
login_password: "{{ keystone_auth_admin_password }}"
login_project_name: "{{ keystone_admin_tenant_name }}"
user_name: "{{ neutron_service_user_name }}"
tenant_name: "{{ neutron_service_project_name }}"
password: "{{ neutron_service_password }}"
insecure: "{{ keystone_service_adminuri_insecure }}"
register: add_service
when: not neutron_service_in_ldap | bool
until: add_service|success
retries: 5
delay: 10
# Add a role to the user
- name: Ensure neutron user to admin role
keystone:
command: "ensure_user_role"
endpoint: "{{ keystone_service_adminurl }}"
login_user: "{{ keystone_admin_user_name }}"
login_password: "{{ keystone_auth_admin_password }}"
login_project_name: "{{ keystone_admin_tenant_name }}"
user_name: "{{ neutron_service_user_name }}"
tenant_name: "{{ neutron_service_project_name }}"
role_name: "{{ neutron_service_role_name }}"
insecure: "{{ keystone_service_adminuri_insecure }}"
register: add_service
when: not neutron_service_in_ldap | bool
until: add_service|success
retries: 5
delay: 10
# Create an endpoint
- name: Ensure neutron endpoint
keystone:
command: "ensure_endpoint"
endpoint: "{{ keystone_service_adminurl }}"
login_user: "{{ keystone_admin_user_name }}"
login_password: "{{ keystone_auth_admin_password }}"
login_project_name: "{{ keystone_admin_tenant_name }}"
region_name: "{{ neutron_service_region }}"
service_name: "{{ neutron_service_name }}"
service_type: "{{ neutron_service_type }}"
insecure: "{{ keystone_service_adminuri_insecure }}"
endpoint_list:
- url: "{{ neutron_service_publicurl }}"
interface: "public"
- url: "{{ neutron_service_internalurl }}"
interface: "internal"
- url: "{{ neutron_service_adminurl }}"
interface: "admin"
register: add_service
until: add_service|success
retries: 5
delay: 10