diff --git a/ansible/roles/ceph/defaults/main.yml b/ansible/roles/ceph/defaults/main.yml index a4b9ab47b4..456cf43560 100644 --- a/ansible/roles/ceph/defaults/main.yml +++ b/ansible/roles/ceph/defaults/main.yml @@ -29,7 +29,7 @@ swift_admin_endpoint: "{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ rgw_p swift_internal_endpoint: "{{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ rgw_port }}/swift/v1" swift_public_endpoint: "{{ public_protocol }}://{{ kolla_external_fqdn }}:{{ rgw_port }}/swift/v1" -openstack_swift_auth: "{'auth_url':'{{ openstack_auth.auth_url }}','username':'{{ openstack_auth.username }}','password':'{{ openstack_auth.password }}','project_name':'{{ openstack_auth.project_name }}','domain_name':'default'}" +openstack_swift_auth: "{{ openstack_auth }}" #################### # Kolla diff --git a/ansible/roles/ceph/tasks/start_rgw_keystone.yml b/ansible/roles/ceph/tasks/start_rgw_keystone.yml index 3df489c8b3..7560d2fe1e 100644 --- a/ansible/roles/ceph/tasks/start_rgw_keystone.yml +++ b/ansible/roles/ceph/tasks/start_rgw_keystone.yml @@ -4,22 +4,19 @@ when: enable_swift | bool - name: Creating the Swift service and endpoint - command: docker exec -t kolla_toolbox /usr/bin/ansible localhost - -m kolla_keystone_service - -a "service_name=swift - service_type=object-store - description='Openstack Object Storage' - endpoint_region={{ openstack_region_name }} - url='{{ item.url }}' - interface='{{ item.interface }}' - region_name={{ openstack_region_name }} - auth={{ '{{ openstack_swift_auth }}' }}" - -e "{'openstack_swift_auth':{{ openstack_swift_auth }}}" - register: swift_endpoint - changed_when: "{{ swift_endpoint.stdout.find('localhost | SUCCESS => ') != -1 and (swift_endpoint.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}" - until: swift_endpoint.stdout.split()[2] == 'SUCCESS' - retries: 10 - delay: 5 + kolla_toolbox: + module_name: kolla_keystone_service + module_args: + service_name: "swift" + service_type: "object-store" + description: "Openstack Object Storage" + endpoint_region: "{{ openstack_region_name }}" + url: "{{ item.url }}" + interface: "{{ item.interface }}" + region_name: "{{ openstack_region_name }}" + auth: "{{ '{{ openstack_swift_auth }}' }}" + module_extra_args: + openstack_swift_auth: "{{ openstack_swift_auth }}" run_once: True with_items: - {'interface': 'admin', 'url': '{{ swift_admin_endpoint }}'} diff --git a/ansible/roles/karbor/tasks/bootstrap.yml b/ansible/roles/karbor/tasks/bootstrap.yml index 8c36eedd3d..7742655b3d 100644 --- a/ansible/roles/karbor/tasks/bootstrap.yml +++ b/ansible/roles/karbor/tasks/bootstrap.yml @@ -1,41 +1,32 @@ --- - name: Creating Karbor database - command: docker exec -t kolla_toolbox /usr/bin/ansible localhost - -m mysql_db - -a "login_host='{{ database_address }}' - login_port='{{ database_port }}' - login_user='{{ database_user }}' - login_password='{{ database_password }}' - name='{{ karbor_database_name }}'" + kolla_toolbox: + module_name: mysql_db + module_args: + login_host: "{{ database_address }}" + login_port: "{{ database_port }}" + login_user: "{{ database_user }}" + login_password: "{{ database_password }}" + name: "{{ karbor_database_name }}" register: database - changed_when: "{{ database.stdout.find('localhost | SUCCESS => ') != -1 and - (database.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}" - failed_when: database.stdout.split()[2] != 'SUCCESS' run_once: True delegate_to: "{{ groups['karbor-api'][0] }}" -- name: Reading json from variable - set_fact: - database_created: "{{ (database.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}" - - name: Creating Karbor database user and setting permissions - command: docker exec -t kolla_toolbox /usr/bin/ansible localhost - -m mysql_user - -a "login_host='{{ database_address }}' - login_port='{{ database_port }}' - login_user='{{ database_user }}' - login_password='{{ database_password }}' - name='{{ karbor_database_name }}' - password='{{ karbor_database_password }}' - host='%' - priv='{{ karbor_database_name }}.*:ALL' - append_privs='yes'" - register: database_user_create - changed_when: "{{ database_user_create.stdout.find('localhost | SUCCESS => ') != -1 and - (database_user_create.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}" - failed_when: database_user_create.stdout.split()[2] != 'SUCCESS' + kolla_toolbox: + module_name: mysql_user + module_args: + login_host: "{{ database_address }}" + login_port: "{{ database_port }}" + login_user: "{{ database_user }}" + login_password: "{{ database_password }}" + name: "{{ karbor_database_name }}" + password: "{{ karbor_database_password }}" + host: "%" + priv: "{{ karbor_database_name }}.*:ALL" + append_privs: "yes" run_once: True delegate_to: "{{ groups['karbor-api'][0] }}" - include: bootstrap_service.yml - when: database_created + when: database | changed diff --git a/ansible/roles/mariadb/tasks/register.yml b/ansible/roles/mariadb/tasks/register.yml index bd9a3e7c88..0a23518047 100644 --- a/ansible/roles/mariadb/tasks/register.yml +++ b/ansible/roles/mariadb/tasks/register.yml @@ -1,20 +1,17 @@ --- - name: Creating haproxy mysql user - command: docker exec -t kolla_toolbox /usr/bin/ansible localhost - -m mysql_user - -a "login_host='{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}' - login_port='{{ mariadb_port }}' - login_user='{{ database_user }}' - login_password='{{ database_password }}' - name='haproxy' - password='' - host='%' - priv=*.*:USAGE" - register: haproxy_user - changed_when: "{{ haproxy_user.stdout.find('localhost | SUCCESS => ') != -1 and (haproxy_user.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}" - until: haproxy_user.stdout.split()[2] == 'SUCCESS' - retries: 10 - delay: 5 + kolla_toolbox: + module_name: mysql_user + module_args: + login_host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" + login_port: "{{ mariadb_port }}" + login_user: "{{ database_user }}" + login_password: "{{ database_password }}" + name: "haproxy" + password: "" + host: "%" + priv: "*.*:USAGE" + run_once: True - name: Cleaning up facts set_fact: