diff --git a/tripleo_ansible/playbooks/overcloud-delete.yaml b/tripleo_ansible/playbooks/overcloud-delete.yaml index 25839abd6..ab0e5dc1e 100644 --- a/tripleo_ansible/playbooks/overcloud-delete.yaml +++ b/tripleo_ansible/playbooks/overcloud-delete.yaml @@ -27,7 +27,7 @@ - stack_name tasks: - name: Delete heat stack - os_stack: + openstack.cloud.stack: name: "{{ stack_name }}" state: absent register: stack_delete diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo-keystone-resources/molecule/default/prepare.yml index 4a7925a41..51c405006 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/molecule/default/prepare.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/molecule/default/prepare.yml @@ -33,6 +33,7 @@ - python3-openstackclient - python3-keystoneclient - ansible + - ansible-collections-openstack - name: Build keystone container shell: "podman build -t keystone-img -f {{ playbook_dir }}/Dockerfile.keystone ." diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/admin.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/admin.yml index e77d44f49..da9366a99 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/admin.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/admin.yml @@ -15,7 +15,7 @@ # under the License. - name: Create default domain - os_keystone_domain: + openstack.cloud.identity_domain: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: default @@ -27,12 +27,12 @@ - service - name: Create admin role - os_keystone_role: + openstack.cloud.identity_role: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: admin - name: Create _member_ role - os_keystone_role: + openstack.cloud.identity_role: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: _member_ when: @@ -40,7 +40,7 @@ - name: Create admin user no_log: "{{ tripleo_keystone_resources_hide_sensitive_logs | bool }}" - os_user: + openstack.cloud.identity_user: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: admin password: "{{ tripleo_keystone_resources_admin_password }}" @@ -49,14 +49,14 @@ domain: default - name: Assign admin role to admin project for admin user - os_user_role: + openstack.cloud.role_assignment: cloud: "{{ tripleo_keystone_resources_cloud_name }}" user: admin project: admin role: admin - name: Assign _member_ role to admin project for admin user - os_user_role: + openstack.cloud.role_assignment: cloud: "{{ tripleo_keystone_resources_cloud_name }}" user: admin project: admin @@ -65,13 +65,13 @@ - keystone_enable_member | default(tripleo_keystone_resources_member_role_enabled) - name: Create identity service - os_keystone_service: + openstack.cloud.catalog_service: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: keystone service_type: identity - name: Create identity public endpoint - os_keystone_endpoint: + openstack.cloud.endpoint: cloud: "{{ tripleo_keystone_resources_cloud_name }}" service: keystone url: "{{ tripleo_keystone_resources_public_endpoint }}" @@ -79,7 +79,7 @@ region: "{{ tripleo_keystone_resources_region }}" - name: Create identity internal endpoint - os_keystone_endpoint: + openstack.cloud.endpoint: cloud: "{{ tripleo_keystone_resources_cloud_name }}" service: keystone url: "{{ tripleo_keystone_resources_internal_endpoint }}" @@ -87,7 +87,7 @@ region: "{{ tripleo_keystone_resources_region }}" - name: Create identity admin endpoint - os_keystone_endpoint: + openstack.cloud.endpoint: cloud: "{{ tripleo_keystone_resources_cloud_name }}" service: keystone url: "{{ tripleo_keystone_resources_admin_endpoint }}" diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/domains.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/domains.yml index 276cb1dcb..53a2bd552 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/domains.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/domains.yml @@ -15,7 +15,7 @@ # under the License. - name: Async creation of Keystone domains - os_keystone_domain: + openstack.cloud.identity_domain: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: "{{ tripleo_keystone_resources_domain }}" state: present diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/endpoints.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/endpoints.yml index d89e7f79b..5f61a315a 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/endpoints.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/endpoints.yml @@ -15,7 +15,7 @@ # under the License. - name: "Async creation of Keystone {{ keystone_endpoint_type }} endpoint" - os_keystone_endpoint: + openstack.cloud.endpoint: cloud: "{{ tripleo_keystone_resources_cloud_name }}" service: "{{ tripleo_keystone_resources_data.key }}" url: "{{ tripleo_keystone_resources_data['value']['endpoints'][keystone_endpoint_type] }}" diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_new.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains.yml similarity index 95% rename from tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_new.yml rename to tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains.yml index eb194d718..a323c4268 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_new.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains.yml @@ -15,7 +15,7 @@ # under the License. - name: Collect OpenStack Keystone domains infos - os_keystone_domain_info: + openstack.cloud.identity_domain_info: cloud: "{{ tripleo_keystone_resources_cloud_name }}" register: domain_result diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_old.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_old.yml deleted file mode 100644 index d55bb5214..000000000 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/gather_domains_old.yml +++ /dev/null @@ -1,24 +0,0 @@ ---- -# Copyright 2019 Red Hat, Inc. -# All Rights Reserved. -# -# 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. -# -- name: Collect OpenStack Keystone domains facts - os_keystone_domain_facts: - cloud: "{{ tripleo_keystone_resources_cloud_name }}" - register: tripleo_domains_facts - -- name: Create openstack_domains fact - set_fact: - openstack_domains: "{{ tripleo_domains_facts['ansible_facts']['openstack_domains'] }}" diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/main.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/main.yml index cbb6f2f4c..e1f187d28 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/main.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/main.yml @@ -47,23 +47,8 @@ loop_control: loop_var: batched_tripleo_keystone_resources_domains -# We need to gather domains so later we can convert a domain name into a domain ID. -# This is needed because os_user_role doesn't do the conversion yet in the version -# of Ansible that we use. This block will disappear once we use the new modules -# from OpenStack collections. -# In recents version of Ansible, this module was renamed to os_keystone_domain_info. -# Which is why we don't use the same module to gather domains infos. -- name: Gather all OpenStack domains for Ansible < 2.9.0 - include_tasks: gather_domains_old.yml - # See https://github.com/ansible/ansible/commit/c91929b2b302b37af22d785641a7fe704003662a - when: - - ansible_version.full is version_compare('2.9.0', '<') - - name: Gather all OpenStack domains for Ansible >= 2.9.0 - include_tasks: gather_domains_new.yml - # See https://github.com/ansible/ansible/commit/c91929b2b302b37af22d785641a7fe704003662a - when: - - ansible_version.full is version_compare('2.9.0', '>=') + include_tasks: gather_domains.yml - name: Create Keystone Services include_tasks: services.yml diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/projects.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/projects.yml index e43eaacd0..a3ad69e75 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/projects.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/projects.yml @@ -15,7 +15,7 @@ # under the License. - name: Async creation of Keystone project - os_project: + openstack.cloud.project: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: "{{ tripleo_keystone_resources_project }}" domain_id: default diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/roles.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/roles.yml index 6db7a965b..a45a6eb18 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/roles.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/roles.yml @@ -15,7 +15,7 @@ # under the License. - name: Async creation of Keystone role - os_keystone_role: + openstack.cloud.identity_role: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: "{{ tripleo_keystone_resources_role }}" state: present diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/services.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/services.yml index 50b8ccb8f..604e63a99 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/services.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/services.yml @@ -15,7 +15,7 @@ # under the License. - name: Async creation of Keystone service - os_keystone_service: + openstack.cloud.catalog_service: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: "{{ tripleo_keystone_resources_data.key }}" service_type: "{{ tripleo_keystone_resources_data.value.service }}" diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_per_role.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_per_role.yml index 83bcb5d9b..52fb5b0bd 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_per_role.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_per_role.yml @@ -15,7 +15,7 @@ # under the License. - name: "Async assignment of Keystone user to roles" - os_user_role: + openstack.cloud.role_assignment: cloud: "{{ tripleo_keystone_resources_cloud_name }}" user: "{{ lookup('dict', tripleo_keystone_resources_data_user).key }}" project: "{{ lookup('dict', tripleo_keystone_resources_data_user).value.project | default(omit) }}" diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_roles.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_roles.yml index c6c494857..bd260b522 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_roles.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/user_roles.yml @@ -16,7 +16,7 @@ - name: "Async assignment of Keystone user per role" include_tasks: user_per_role.yml - # This loop is required as a user can have multiple roles but the os_user_role doesn't handle it. + # This loop is required as a user can have multiple roles but the role_assignment module doesn't handle it. loop: "{{ batched_tripleo_keystone_resources_roles_data.value | batch(tripleo_keystone_resources_batch) | list }}" loop_control: loop_var: tripleo_keystone_resources_data_users diff --git a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/users.yml b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/users.yml index 1d2779975..604e2bf10 100644 --- a/tripleo_ansible/roles/tripleo-keystone-resources/tasks/users.yml +++ b/tripleo_ansible/roles/tripleo-keystone-resources/tasks/users.yml @@ -17,7 +17,7 @@ - name: "Async creation of Keystone user" # needed because it'll throw a warning if you have update_password without it no_log: "{{ tripleo_keystone_resources_hide_sensitive_logs | bool }}" - os_user: + openstack.cloud.identity_user: cloud: "{{ tripleo_keystone_resources_cloud_name }}" name: "{{ lookup('dict', tripleo_keystone_resources_data).key }}" password: "{{ lookup('dict', tripleo_keystone_resources_data).value.password }}"