diff --git a/tripleo_ansible/roles/tripleo_ceph_common/defaults/main.yml b/tripleo_ansible/roles/tripleo_ceph_common/defaults/main.yml deleted file mode 100644 index b7ab5de81..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/defaults/main.yml +++ /dev/null @@ -1,103 +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. - -# todo(fultonj): evolve this to derive more of these values from facts - -ceph_ansible_group_vars_all: - ceph_container_image: ceph/daemon - ceph_container_image_tag: v4.0.1-stable-4.0-nautilus-centos-7-x86_64 - ceph_container_registry: 192.168.24.1:8787 - ceph_origin: distro - ceph_stable: true - cluster: ceph - cluster_network: 192.168.24.0/24 - containerized_deployment: true - configure_firewall: false - fsid: b8df929e-7c29-11e9-b1bd-244253215215 - generate_fsid: false - ip_version: ipv4 - monitor_address_block: 192.168.24.0/24 - ntp_service_enabled: false - openstack_config: true - pools: [] - public_network: 192.168.24.0/24 - user_config: true - dashboard_enabled: false -blacklisted_hostnames: [] -ceph_ansible_extra_vars: - ireallymeanit: 'yes' - container_binary: 'podman' -uuid_content: {} -ceph_ansible_playbook_verbosity: 3 -ceph_ansible_playbooks_param: ['default'] -ceph_ansible_skip_tags: 'package-install,with_pkg' -ceph_ansible_environment_variables: [] -ceph_ansible_inherits_calling_ansible_environment: false - -ceph_pools: - gnocchi_pool: - name: 'metrics' - enabled: true - nova_pool: - name: 'vms' - enabled: true - glance_pool: - name: 'images' - enabled: true - cinder_pool: - name: 'volumes' - enabled: true - cinder_extra_pools: [altrbd, pool2, pool3] - cinder_backup_pool: - name: 'backups' - enabled: false - extra_pools: - - application: rbd - name: altrbd - pg_num: 1 - rule_name: replicated_rule - pg_num: 32 - -manila_pools: - data: 'manila_data' - data_pg_num: 16 - metadata: 'manila_metadata' - metadata_pg_num: 16 - -ceph_keys: - openstack_client: - name: "openstack" - key: "AQC+vYNXgDAgAhAAc8UoYt+OTz5uhV7ItLdwUw==" - manila: - name: "manila" - key: "AQDVdVZeAAAAABAAhhhLNK3G8Bb8kShtnPBXnA==" - radosgw: - name: "radosgw" - key: "AQDVdVZeAAAAABAAzv4Bo8gRRyuOvs2MaLtnYQ==" - extra_keys: - - caps: - mgr: allow * - mon: profile rbd - osd: profile rbd pool=images - key: AQBRgQ9eAAAAABAAv84zEilJYZPNuJ0Iwn9Ndg== - mode: '0600' - name: client.glance - -ceph_default_overrides: - global: - osd_pool_default_pg_num: 32 - osd_pool_default_pgp_num: 32 - osd_pool_default_size: 1 diff --git a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/Dockerfile b/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/Dockerfile deleted file mode 100644 index e0534b4d1..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/Dockerfile +++ /dev/null @@ -1,37 +0,0 @@ -# Molecule managed -# 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. - - -{% if item.registry is defined %} -FROM {{ item.registry.url }}/{{ item.image }} -{% else %} -FROM {{ item.image }} -{% endif %} - -RUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \ - elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install sudo python*-devel python*-dnf bash {{ item.pkg_extras | default('') }} && dnf clean all; \ - elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl python-setuptools bash {{ item.pkg_extras | default('') }} && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \ - elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml {{ item.pkg_extras | default('') }} && zypper clean -a; \ - elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates {{ item.pkg_extras | default('') }}; \ - elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates {{ item.pkg_extras | default('') }} && xbps-remove -O; fi - -{% for pkg in item.easy_install | default([]) %} -# install pip for centos where there is no python-pip rpm in default repos -RUN easy_install {{ pkg }} -{% endfor %} - - -CMD ["sh", "-c", "while true; do sleep 10000; done"] diff --git a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/converge.yml b/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/converge.yml deleted file mode 100644 index 1f7f05c49..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/converge.yml +++ /dev/null @@ -1,21 +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: Converge - hosts: all - roles: - - role: "tripleo_ceph_common" diff --git a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/molecule.yml b/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/molecule.yml deleted file mode 100644 index 8958b2f4f..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/molecule.yml +++ /dev/null @@ -1,51 +0,0 @@ ---- -driver: - name: podman - -log: true - -platforms: - - name: ubi8 - hostname: ubi8 - image: ubi8/ubi-init - registry: - url: registry.access.redhat.com - dockerfile: Dockerfile - pkg_extras: python*setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg - - /opt/yum.repos.d:/etc/yum.repos.d:rw - - /etc/dnf/vars:/etc/dnf/vars - privileged: true - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - ulimits: &ulimit - - host - -provisioner: - name: ansible - inventory: - hosts: - all: - hosts: - ubi8: - ansible_python_interpreter: /usr/bin/python3 - vars: - ansible_user: root - log: true - env: - ANSIBLE_STDOUT_CALLBACK: yaml - -scenario: - test_sequence: - - destroy - - create - - prepare - - converge - - verify - - destroy - -verifier: - name: testinfra diff --git a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/prepare.yml deleted file mode 100644 index ef85c3128..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/molecule/default/prepare.yml +++ /dev/null @@ -1,21 +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: Prepare - hosts: all - roles: - - role: test_deps diff --git a/tripleo_ansible/roles/tripleo_ceph_common/tasks/main.yml b/tripleo_ansible/roles/tripleo_ceph_common/tasks/main.yml deleted file mode 100644 index e6f1c0dc4..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_common/tasks/main.yml +++ /dev/null @@ -1,66 +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: set basic user fact - set_fact: - ansible_user: "{{ lookup('env', 'USER') }}" - when: - - ansible_user is undefined - -- name: set basic home fact - set_fact: - ansible_user_dir: "{{ lookup('env', 'HOME') }}" - when: - - ansible_user_dir is undefined - -- name: set calling_ansible_environment_variables fact - set_fact: - calling_ansible_environment_variables: [] - when: - - (not ceph_ansible_inherits_calling_ansible_environment | default(true)) | bool - -- name: Local environment inherit - when: - - (ceph_ansible_inherits_calling_ansible_environment | default(false)) | bool - block: - - name: get all ansible environment variables - shell: "env | grep ^ANSIBLE_ | grep -v CALLBACK" - register: env_shell_output - failed_when: false - delegate_to: localhost - connection: local - run_once: true - - - name: set calling_ansible_environment_variables - run_once: true - set_fact: - calling_ansible_environment_variables: "{{ env_shell_output.stdout_lines }}" - when: - - env_shell_output.rc is defined - - env_shell_output.rc == 0 - - env_shell_output.stdout_lines is defined - - (env_shell_output.stdout_lines|length) > 0 - -- name: Set common fact - set_fact: - ceph_common_done: true - -- name: set ceph_ansible_limit to ansible_limit, only if ansible_limit defined - set_fact: - ceph_ansible_limit: "{{ ansible_limit }}" - when: - - (ceph_ansible_limit is not defined) or (ceph_ansible_limit|length == 0) - - (ansible_limit is defined) and (ansible_limit|length > 0) diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/defaults/main.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/defaults/main.yml deleted file mode 100644 index fd6f0b15a..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/defaults/main.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -# Copyright 2020 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. - - -# All variables intended for modification should be placed in this file. -tripleo_ceph_run_ansible_hide_sensitive_logs: "{{ hide_sensitive_logs | default(true) }}" -tripleo_ceph_run_ansible_debug: "{{ ((ansible_verbosity | int) >= 2) | bool }}" diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/meta/main.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/meta/main.yml deleted file mode 100644 index 805616e41..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/meta/main.yml +++ /dev/null @@ -1,37 +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. - - -galaxy_info: - author: OpenStack - description: TripleO OpenStack Role -- tripleo_ceph_run_ansible - company: Red Hat - license: Apache-2.0 - min_ansible_version: 2.7 - # - # Provide a list of supported platforms, and for each platform a list of versions. - # If you don't wish to enumerate all versions for a particular platform, use 'all'. - # To view available platforms and versions (or releases), visit: - # https://galaxy.ansible.com/api/v1/platforms/ - # - platforms: - - name: CentOS - versions: - - 7 - - 8 - - galaxy_tags: - - tripleo diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/Dockerfile b/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/Dockerfile deleted file mode 100644 index e0534b4d1..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/Dockerfile +++ /dev/null @@ -1,37 +0,0 @@ -# Molecule managed -# 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. - - -{% if item.registry is defined %} -FROM {{ item.registry.url }}/{{ item.image }} -{% else %} -FROM {{ item.image }} -{% endif %} - -RUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \ - elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install sudo python*-devel python*-dnf bash {{ item.pkg_extras | default('') }} && dnf clean all; \ - elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl python-setuptools bash {{ item.pkg_extras | default('') }} && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \ - elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml {{ item.pkg_extras | default('') }} && zypper clean -a; \ - elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates {{ item.pkg_extras | default('') }}; \ - elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates {{ item.pkg_extras | default('') }} && xbps-remove -O; fi - -{% for pkg in item.easy_install | default([]) %} -# install pip for centos where there is no python-pip rpm in default repos -RUN easy_install {{ pkg }} -{% endfor %} - - -CMD ["sh", "-c", "while true; do sleep 10000; done"] diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/converge.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/converge.yml deleted file mode 100644 index 3850af80a..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/converge.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: Converge - hosts: all - roles: - - role: "tripleo_ceph_common" - - role: "tripleo_ceph_work_dir" - - role: "tripleo_ceph_uuid" - - role: "tripleo_ceph_run_ansible" diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/molecule.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/molecule.yml deleted file mode 100644 index 8958b2f4f..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/molecule.yml +++ /dev/null @@ -1,51 +0,0 @@ ---- -driver: - name: podman - -log: true - -platforms: - - name: ubi8 - hostname: ubi8 - image: ubi8/ubi-init - registry: - url: registry.access.redhat.com - dockerfile: Dockerfile - pkg_extras: python*setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg - - /opt/yum.repos.d:/etc/yum.repos.d:rw - - /etc/dnf/vars:/etc/dnf/vars - privileged: true - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - ulimits: &ulimit - - host - -provisioner: - name: ansible - inventory: - hosts: - all: - hosts: - ubi8: - ansible_python_interpreter: /usr/bin/python3 - vars: - ansible_user: root - log: true - env: - ANSIBLE_STDOUT_CALLBACK: yaml - -scenario: - test_sequence: - - destroy - - create - - prepare - - converge - - verify - - destroy - -verifier: - name: testinfra diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/prepare.yml deleted file mode 100644 index ef85c3128..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/molecule/default/prepare.yml +++ /dev/null @@ -1,21 +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: Prepare - hosts: all - roles: - - role: test_deps diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/create_ceph_ansible_remote_tmp.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/create_ceph_ansible_remote_tmp.yml deleted file mode 100644 index 82d5541eb..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/create_ceph_ansible_remote_tmp.yml +++ /dev/null @@ -1,65 +0,0 @@ ---- -# Copyright 2020 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: genereate create_ceph_ansible_remote_tmp playbook - copy: - dest: "{{ playbook_dir }}/ceph-ansible/create_ceph_ansible_remote_tmp.yml" - content: | - - hosts: all - gather_facts: no - tasks: - # Avoiding the following by creating directory owned by user who will - # SSH into nodes (not root). When root needs to write to this directory - # it will not have permission problems by definition. As per ansible: - # """ - # Module remote_tmp /tmp/ceph_ansible_tmp did not exist and was created - # with a mode of 0700, this may cause issues when running as another user. - # To avoid this, create the remote_tmp dir with the correct permissions - # manually. - # """ - - name: create ceph_ansible_remote_tmp on all nodes with necessary ownership - become: true - file: - path: "{{ ceph_ansible_remote_tmp }}" - owner: "{{ lookup('env','ANSIBLE_REMOTE_USER') | default(ansible_user, true) }}" - group: "{{ lookup('env','ANSIBLE_REMOTE_USER') | default(ansible_user, true) }}" - mode: "700" - state: directory - -- name: build create_ceph_ansible_remote_tmp command as list - set_fact: - create_ceph_ansible_remote_tmp_list: - - ANSIBLE_LOG_PATH="{{ playbook_dir }}/ceph-ansible/create_ceph_ansible_remote_tmp.log" - - ANSIBLE_SSH_CONTROL_PATH_DIR="/tmp/ceph_ansible_control_path" - - ANSIBLE_CONFIG=/usr/share/ceph-ansible/ansible.cfg - - ANSIBLE_REMOTE_TEMP=/tmp/create_ceph_ansible_remote_tmp - - "{{ calling_ansible_environment_variables|join(' ') }}" - - "{{ ceph_ansible_environment_variables|join(' ') }}" - - ansible-playbook - - '{% if ceph_ansible_private_key_file is defined %}--private-key {{ ceph_ansible_private_key_file }}{% endif %}' - - '-i' - - '{{ playbook_dir }}/ceph-ansible/inventory.yml' - - '{% if ansible_python_interpreter is defined %}-e ansible_python_interpreter={{ ansible_python_interpreter }}{% endif %}' - - "{{ playbook_dir }}/ceph-ansible/create_ceph_ansible_remote_tmp.yml" - - '{% if ceph_ansible_limit is defined and ceph_ansible_limit|length > 0 %}--limit {{ ceph_ansible_limit }}{% endif %}' - ceph_ansible_remote_tmp: '/tmp/ceph_ansible_tmp' - -- name: run create_ceph_ansible_remote_tmp command - # needs become to be able to read the ssh private key - become: true - shell: "{{ create_ceph_ansible_remote_tmp_list|join(' ') }}" - tags: - - run_ceph_ansible diff --git a/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/main.yml b/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/main.yml deleted file mode 100644 index c8155cf60..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_run_ansible/tasks/main.yml +++ /dev/null @@ -1,159 +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: set ceph-ansible playbook list - set_fact: - ceph_ansible_playbooks: > - {%- if ceph_ansible_playbooks_param != ['default'] -%} - {{ ceph_ansible_playbooks_param }} - {%- else -%} - {{ ceph_ansible_playbooks_default|default(['/usr/share/ceph-ansible/site-container.yml.sample']) }} - {%- endif -%} - -- import_tasks: create_ceph_ansible_remote_tmp.yml - vars: - ceph_ansible_remote_tmp: '/tmp/ceph_ansible_tmp' - -- name: set ceph-ansible command list - set_fact: - ceph_ansible_command_list: - - ANSIBLE_ACTION_PLUGINS=/usr/share/ceph-ansible/plugins/actions/ - - ANSIBLE_CALLBACK_PLUGINS=/usr/share/ceph-ansible/plugins/callback/ - - ANSIBLE_FILTER_PLUGINS=/usr/share/ceph-ansible/plugins/filter/ - - ANSIBLE_ROLES_PATH=/usr/share/ceph-ansible/roles/ - - ANSIBLE_LOG_PATH="{{ playbook_dir }}/ceph-ansible/ceph_ansible_command.log" - - ANSIBLE_SSH_CONTROL_PATH_DIR="/tmp/ceph_ansible_control_path" - - ANSIBLE_LIBRARY=/usr/share/ceph-ansible/library/ - - ANSIBLE_CONFIG=/usr/share/ceph-ansible/ansible.cfg - - ANSIBLE_REMOTE_TEMP="{{ ceph_ansible_remote_tmp }}" - - ANSIBLE_FORKS=25 - - ANSIBLE_GATHER_TIMEOUT=60 - - ANSIBLE_CALLBACK_WHITELIST=profile_tasks - - ANSIBLE_STDOUT_CALLBACK=default - - "{{ calling_ansible_environment_variables|join(' ') }}" - - "{{ ceph_ansible_environment_variables|join(' ') }}" - # NOTE(mwhahaha): we need to force this for now until ansible addresses fact stuff - - ANSIBLE_INJECT_FACT_VARS=True - - ANSIBLE_GATHER_SUBSET="all" - - ANSIBLE_CACHE_PLUGIN="memory" - - ansible-playbook - - '{% if ceph_ansible_private_key_file is defined %}--private-key {{ ceph_ansible_private_key_file }}{% endif %}' - - '{% if ansible_python_interpreter is defined %}-e ansible_python_interpreter={{ ansible_python_interpreter }}{% endif %}' - - '-{%- for number in range(0, ceph_ansible_playbook_verbosity) -%}v{% endfor %}' - - '{% if ceph_ansible_skip_tags is defined and ceph_ansible_skip_tags|length > 0%}--skip-tags {{ ceph_ansible_skip_tags }}{% endif %}' - - '--extra-vars' - - '@{{ playbook_dir }}/ceph-ansible/extra_vars.yml' - - '{% if ceph_ansible_limit is defined and ceph_ansible_limit|length > 0 %}--limit {{ ceph_ansible_limit }}{% endif %}' - -- name: try to find ANSIBLE_LOG_PATH in ceph_ansible_environment_variables - set_fact: - calling_ansible_log_path: "{{ item | regex_replace('ANSIBLE_LOG_PATH=', '') }}" - when: item is match("ANSIBLE_LOG_PATH.*") - loop: "{{ ceph_ansible_environment_variables }}" - -- name: do we need to keep looking for the ANSIBLE_LOG_PATH? - when: calling_ansible_log_path is undefined - block: - - name: try to find ANSIBLE_LOG_PATH in calling_ansible_environment_variables - set_fact: - calling_ansible_log_path: "{{ item | regex_replace('ANSIBLE_LOG_PATH=', '') }}" - when: item is match("ANSIBLE_LOG_PATH.*") - loop: "{{ calling_ansible_environment_variables }}" - - name: Set ANSIBLE_LOG_PATH to default - when: calling_ansible_log_path is undefined - set_fact: - calling_ansible_log_path: "{{ playbook_dir }}/ceph-ansible/ceph_ansible_command.log" - -- name: save ceph-ansible playbook command(s) to shell script - copy: - dest: "{{ playbook_dir }}/ceph-ansible/ceph_ansible_command.sh" - mode: '0755' - content: | - #!/usr/bin/env bash - set -e - echo "Running $0" >> {{ calling_ansible_log_path }} - {% set inv = "-i "+ playbook_dir +"/ceph-ansible/inventory.yml" %} - {% for playbook in ceph_ansible_playbooks %} - {{ ceph_ansible_command_list|join(' ') }} {{ inv }} {{ playbook }} 2>&1 - {% endfor %} - -- when: - - ceph_external_multi_config is defined - - (ceph_external_multi_config|length) > 0 - block: - - name: set default facts for ceph_scripts list - set_fact: - ceph_prefix: "{{ playbook_dir + '/ceph-ansible/external_' }}" - ceph_suffix: '_ceph_ansible_command.sh' - ceph_default: "{{ [playbook_dir + '/ceph-ansible/ceph_ansible_command.sh'] }}" - - - name: save external ceph-ansible playbook command(s) to shell script(s) - copy: - dest: "{{ ceph_prefix + item + ceph_suffix }}" - mode: '0755' - content: | - #!/usr/bin/env bash - set -e - echo "Running $0" >> {{ calling_ansible_log_path }} - {% set inv = "-i " + ceph_prefix + "inventory.ini" %} - {% set extra = "-e @" + ceph_prefix + item + "_extra_vars.yml" %} - {% for playbook in ceph_ansible_playbooks %} - {{ ceph_ansible_command_list|join(' ') }} {{ inv }} {{ extra }} {{ playbook }} 2>&1 - {% endfor %} - loop: "{{ ceph_external_multi_config | map(attribute='cluster') | list }}" - - - name: add external ceph-ansible shell script(s) to list of ceph_scripts - set_fact: - ceph_scripts: "{{ ceph_scripts|default(ceph_default) + [ceph_prefix + item + ceph_suffix] }}" - loop: "{{ ceph_external_multi_config | map(attribute='cluster') | list }}" - -- name: "Notify user about upcoming ceph-ansible execution(s)" - debug: - msg: "Running {{ ceph_scripts|default(['ceph_ansible_command.sh'])|length }} ceph-ansible playbook(s) (immediate log at {{ calling_ansible_log_path }})" - -- name: run ceph-ansible - # Needs become to be able to read the ssh private key - become: true - shell: "{{ item }}" - # We want the output chunked into bits to prevent - # overflowing Zaqar message size - no_log: "{{ not (tripleo_ceph_run_ansible_debug | bool) }}" - failed_when: false - register: outputs - tags: run_ceph_ansible - when: outputs.rc is undefined or outputs.rc == 0 - loop: "{{ ceph_scripts | default([playbook_dir + '/ceph-ansible/ceph_ansible_command.sh']) }}" - -- name: search output of ceph-ansible run(s) non-zero return codes - set_fact: - ceph_ansible_std_out_err: "{{ item.stdout_lines | default([]) | union(item.stderr_lines | default([])) }}" - no_log: "{{ tripleo_ceph_run_ansible_hide_sensitive_logs | bool }}" - when: - - item.rc is defined - - item.rc != 0 - loop: "{{ outputs.results }}" - tags: - - run_ceph_ansible - -- name: print ceph-ansible output in case of failure - debug: - var: ceph_ansible_std_out_err - when: - - ceph_ansible_std_out_err is defined - failed_when: - - ceph_ansible_std_out_err is defined - tags: - - run_ceph_ansible diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/meta/main.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/meta/main.yml deleted file mode 100644 index 2bf5f060d..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/meta/main.yml +++ /dev/null @@ -1,37 +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. - - -galaxy_info: - author: OpenStack - description: TripleO OpenStack Role -- tripleo_ceph_uuid - company: Red Hat - license: Apache-2.0 - min_ansible_version: 2.7 - # - # Provide a list of supported platforms, and for each platform a list of versions. - # If you don't wish to enumerate all versions for a particular platform, use 'all'. - # To view available platforms and versions (or releases), visit: - # https://galaxy.ansible.com/api/v1/platforms/ - # - platforms: - - name: CentOS - versions: - - 7 - - 8 - - galaxy_tags: - - tripleo diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/Dockerfile b/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/Dockerfile deleted file mode 100644 index e0534b4d1..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/Dockerfile +++ /dev/null @@ -1,37 +0,0 @@ -# Molecule managed -# 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. - - -{% if item.registry is defined %} -FROM {{ item.registry.url }}/{{ item.image }} -{% else %} -FROM {{ item.image }} -{% endif %} - -RUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \ - elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install sudo python*-devel python*-dnf bash {{ item.pkg_extras | default('') }} && dnf clean all; \ - elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl python-setuptools bash {{ item.pkg_extras | default('') }} && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \ - elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml {{ item.pkg_extras | default('') }} && zypper clean -a; \ - elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates {{ item.pkg_extras | default('') }}; \ - elif [ $(command -v xbps-install) ]; then xbps-install -Syu && xbps-install -y python sudo bash ca-certificates {{ item.pkg_extras | default('') }} && xbps-remove -O; fi - -{% for pkg in item.easy_install | default([]) %} -# install pip for centos where there is no python-pip rpm in default repos -RUN easy_install {{ pkg }} -{% endfor %} - - -CMD ["sh", "-c", "while true; do sleep 10000; done"] diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/converge.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/converge.yml deleted file mode 100644 index d3239d852..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/converge.yml +++ /dev/null @@ -1,21 +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: Converge - hosts: all - roles: - - role: "tripleo_ceph_uuid" diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/molecule.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/molecule.yml deleted file mode 100644 index 8958b2f4f..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/molecule.yml +++ /dev/null @@ -1,51 +0,0 @@ ---- -driver: - name: podman - -log: true - -platforms: - - name: ubi8 - hostname: ubi8 - image: ubi8/ubi-init - registry: - url: registry.access.redhat.com - dockerfile: Dockerfile - pkg_extras: python*setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg - - /opt/yum.repos.d:/etc/yum.repos.d:rw - - /etc/dnf/vars:/etc/dnf/vars - privileged: true - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - ulimits: &ulimit - - host - -provisioner: - name: ansible - inventory: - hosts: - all: - hosts: - ubi8: - ansible_python_interpreter: /usr/bin/python3 - vars: - ansible_user: root - log: true - env: - ANSIBLE_STDOUT_CALLBACK: yaml - -scenario: - test_sequence: - - destroy - - create - - prepare - - converge - - verify - - destroy - -verifier: - name: testinfra diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/prepare.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/prepare.yml deleted file mode 100644 index ef85c3128..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/molecule/default/prepare.yml +++ /dev/null @@ -1,21 +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: Prepare - hosts: all - roles: - - role: test_deps diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/gather.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/gather.yml deleted file mode 100644 index 204216523..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/gather.yml +++ /dev/null @@ -1,39 +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: build nodes-uuid command as list - set_fact: - nodes_uuid_list: - - ANSIBLE_LOG_PATH="{{ playbook_dir }}/ceph-ansible/nodes_uuid_command.log" - - ANSIBLE_SSH_CONTROL_PATH_DIR="/tmp/ceph_ansible_control_path" - - ANSIBLE_CONFIG=/usr/share/ceph-ansible/ansible.cfg - - ANSIBLE_REMOTE_TEMP=/tmp/nodes_uuid_tmp - - "{{ calling_ansible_environment_variables|join(' ') }}" - - "{{ ceph_ansible_environment_variables|join(' ') }}" - - ansible-playbook - - '{% if ceph_ansible_private_key_file is defined %}--private-key {{ ceph_ansible_private_key_file }}{% endif %}' - - '-i' - - '{{ playbook_dir }}/ceph-ansible/inventory.yml' - - '{% if ansible_python_interpreter is defined %}-e ansible_python_interpreter={{ ansible_python_interpreter }}{% endif %}' - - '{{ playbook_dir }}/ceph-ansible/nodes_uuid_playbook.yml' - - '{% if ceph_ansible_limit is defined and ceph_ansible_limit|length > 0 %}--limit {{ ceph_ansible_limit }}{% endif %}' - -- name: run nodes-uuid command - # needs become to be able to read the ssh private key - become: true - shell: "{{ nodes_uuid_list|join(' ') }}" - tags: - - run_uuid_ansible diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/main.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/main.yml deleted file mode 100644 index eae7e037d..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/main.yml +++ /dev/null @@ -1,22 +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. - -- import_tasks: prepare.yml - when: - - nodes_data is undefined -- import_tasks: gather.yml - when: - - nodes_uuid_list is undefined diff --git a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/prepare.yml b/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/prepare.yml deleted file mode 100644 index dfb3a7c5b..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_uuid/tasks/prepare.yml +++ /dev/null @@ -1,48 +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: generate nodes-uuid data file - copy: - dest: "{{ playbook_dir }}/ceph-ansible/nodes_uuid_data.json" - content: "{{ uuid_content }}" - -- name: generate nodes-uuid playbook - copy: - dest: "{{ playbook_dir }}/ceph-ansible/nodes_uuid_playbook.yml" - content: | - - hosts: all - gather_facts: no - tasks: - - name: set nodes data - set_fact: - nodes_data: "{% raw %}{{ lookup('file','./nodes_uuid_data.json') | from_json }}{% endraw %}" - - name: register machine id - become: true - # awk strips unwanted output, see LP bug #1762460 - shell: >- - dmidecode -s system-uuid | \ - awk 'match($0, /[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}/) { print substr($0, RSTART, RLENGTH) }' | \ - tr A-F a-f - register: machine_uuid - # NOTE(tonyb): 0 == no error, 1 == -EPERM or bad data and 2 == Command not found - # 1 and 2 aren't great but shouldn't cause the deploy to fail. If we're using - # the node specific data we'll fail then. If we aren't then lets keep moving - failed_when: machine_uuid.rc not in [0, 1, 2] - - name: generate host vars from nodes data - copy: - content: "{% raw %}{{ nodes_data[machine_uuid.stdout|default('')]|default({})|to_nice_yaml }}{% endraw %}" - dest: "{{ playbook_dir }}/ceph-ansible/host_vars/{% raw %}{{ inventory_hostname }}{% endraw %}.yml" - delegate_to: localhost diff --git a/tripleo_ansible/roles/tripleo_ceph_work_dir/meta/main.yml b/tripleo_ansible/roles/tripleo_ceph_work_dir/meta/main.yml index 495ac05f4..db95b2af8 100644 --- a/tripleo_ansible/roles/tripleo_ceph_work_dir/meta/main.yml +++ b/tripleo_ansible/roles/tripleo_ceph_work_dir/meta/main.yml @@ -35,8 +35,3 @@ galaxy_info: galaxy_tags: - tripleo - -dependencies: - - role: tripleo_ceph_common - when: - - ceph_common_done is undefined diff --git a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/get_ssh_private_key.yml b/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/get_ssh_private_key.yml deleted file mode 100644 index 4b58cc8c2..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/get_ssh_private_key.yml +++ /dev/null @@ -1,48 +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: detect private key file in $HOME/.ssh/id_rsa_tripleo - # needs become to be able to read the ssh private key - become: true - stat: - path: "{{ lookup('env','HOME') }}/.ssh/id_rsa_tripleo" - register: detect_private_key_file - -- name: set private key file - # needs become to be able to read the ssh private key - become: true - set_fact: - ceph_ansible_private_key_file: "{{ lookup('env','HOME') }}/.ssh/id_rsa_tripleo" - when: - - detect_private_key_file.stat.exists | bool - -- name: Falling back to looking for ssh_private_key in playbook_dir - when: ceph_ansible_private_key_file is undefined - block: - - name: detect private key file in playbook_dir - # needs become to be able to read the ssh private key - become: true - stat: - path: "{{ playbook_dir }}/ssh_private_key" - register: detect_private_key_file - - - name: set private key file - # needs become to be able to read the ssh private key - become: true - set_fact: - ceph_ansible_private_key_file: "{{ playbook_dir }}/ssh_private_key" - when: - - detect_private_key_file.stat.exists | bool diff --git a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/main.yml b/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/main.yml index 67c1cf595..dfd4c7352 100644 --- a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/main.yml +++ b/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/main.yml @@ -13,8 +13,3 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. - -- import_tasks: prepare.yml -- import_tasks: get_ssh_private_key.yml - when: - - ceph_ansible_private_key_file is undefined diff --git a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/prepare.yml b/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/prepare.yml deleted file mode 100644 index 99d9464cc..000000000 --- a/tripleo_ansible/roles/tripleo_ceph_work_dir/tasks/prepare.yml +++ /dev/null @@ -1,125 +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: create ceph-ansible temp dirs - file: - path: "{{ item }}" - state: directory - with_items: - - "{{ playbook_dir }}/ceph-ansible" - - "{{ playbook_dir }}/ceph-ansible/group_vars" - - "{{ playbook_dir }}/ceph-ansible/host_vars" - - "{{ playbook_dir }}/ceph-ansible/fetch_dir" - -- name: symbolic link to tripleo inventory from ceph-ansible work directory - # If we call ceph-ansible with the same inventory as the calling - # playbook, then config-download/groups_vars will be used instead - # of config-download/ceph-ansible/group_vars. - file: - src: "{{ inventory_file }}" - dest: "{{ playbook_dir }}/ceph-ansible/inventory.yml" - state: link - force: true - tags: - - run_uuid_ansible - - run_ceph_ansible - -- name: get the list of enabled services on the overcloud - set_fact: - tripleo_enabled_services: "{{ enabled_services | default([]) }}" - -- name: set dashboard_vip variable if dashboard is enabled - block: - - name: set dashboard_frontend variable - set_fact: - ceph_ansible_group_vars_all: "{{ ceph_ansible_group_vars_all | combine({ 'dashboard_frontend_vip': dashboard_vip | default() }) - | combine({ 'prometheus_frontend_vip': monitoring_stack_vip | default()}) - | combine({ 'alertmanager_frontend_vip': monitoring_stack_vip | default()}) }}" - vars: - dashboard_vip: |- - {% set dashboard_vip = control_virtual_ip %} - {% if 'StorageDashboard' in enabled_networks %} - {% set dashboard_vip = net_vip_map.get('storage_dashboard') %} - {% endif %} - {{ dashboard_vip }} - monitoring_stack_vip: |- - {% set monitoring_vip = control_virtual_ip %} - {% if 'Storage' in enabled_networks %} - {% set monitoring_vip = net_vip_map.get('storage') %} - {% endif %} - {{ monitoring_vip }} - when: - - tripleo_enabled_services | intersect(['ceph_grafana']) - -- name: build the openstack pool list - import_tasks: build_pools.yml - vars: - tripleo_pool_images: "{{ ceph_pools.glance_pool.enabled }}" - tripleo_pool_vms: "{{ ceph_pools.nova_pool.enabled }}" - tripleo_pool_volumes: "{{ ceph_pools.cinder_pool.enabled }}" - tripleo_pool_backup: "{{ ceph_pools.cinder_backup_pool.enabled }}" - tripleo_pool_metrics: "{{ ceph_pools.gnocchi_pool.enabled }}" - -- name: build openstack keys - include_tasks: build_keys.yml - -- name: build ceph config overrides - include_tasks: build_config_overrides.yml - -- name: generate ceph-ansible group vars all - copy: - dest: "{{ playbook_dir }}/ceph-ansible/group_vars/all.yml" - content: "{{ ceph_ansible_group_vars_all | combine(ceph_overrides|default({})) - | combine(openstack_pools|default({'openstack_pools': []})) | combine(openstack_keys|default({'openstack_keys': []})) - | combine(keys|default({'keys': []})) | combine(cephfs_data|default({})) | combine(cephfs_metadata|default({})) | to_nice_yaml }}" - -- name: generate ceph-ansible extra vars - copy: - dest: "{{ playbook_dir }}/ceph-ansible/extra_vars.yml" - content: "{{ ceph_ansible_extra_vars | to_nice_yaml }}" - -- when: - - ceph_external_multi_config is defined - - (ceph_external_multi_config|length) > 0 - block: - - - name: generate ceph-ansible extra vars foreach ceph in ceph_external_multi_config - copy: - dest: "{{ playbook_dir }}/ceph-ansible/external_{{ item.cluster }}_extra_vars.yml" - content: "{{ item | default('') | to_nice_yaml }}" - loop: "{{ ceph_external_multi_config }}" - - - name: get hosts of ceph_mon group and ceph_client group from inventory - # Any host in the internal ceph cluster clients group and mon group - # should also be a client of the additional external ceph cluster(s). - # The clients group is sufficient if all cases are external, but if - # default ceph-ansible run is internal, then roles with Ceph may not - # include the CephClient service like the CephMon service found in the - # Controller role. If the CephMon service is present, CephClient is - # not necessary to get a key and conf file, but the additional runs - # for the external Ceph cluster(s) do need the key and conf file on - # the hosts in that role. - set_fact: - mon_client_hosts: "{{ mon_client_hosts | default([]) + [ item ] }}" - with_inventory_hostnames: - - ceph_client - - ceph_mon - - - name: generate ceph-ansible/external_inventory.ini for ceph_external_multi_config - # Build a new inventory where the collected hosts are only clients - template: - src: "external_inventory.ini.j2" - dest: "{{ playbook_dir }}/ceph-ansible/external_inventory.ini" diff --git a/zuul.d/molecule.yaml b/zuul.d/molecule.yaml index 840ffad64..c42f871f2 100644 --- a/zuul.d/molecule.yaml +++ b/zuul.d/molecule.yaml @@ -14,7 +14,6 @@ - tripleo-ansible-centos-8-molecule-tripleo_cellv2 - tripleo-ansible-centos-8-molecule-tripleo_ceph_client - tripleo-ansible-centos-8-molecule-tripleo_ceph_distribute_keys - - tripleo-ansible-centos-8-molecule-tripleo_ceph_run_ansible - tripleo-ansible-centos-8-molecule-tripleo_cephadm - tripleo-ansible-centos-8-molecule-tripleo_clients_install - tripleo-ansible-centos-8-molecule-tripleo_collectd @@ -76,7 +75,6 @@ - tripleo-ansible-centos-8-molecule-tripleo_cellv2 - tripleo-ansible-centos-8-molecule-tripleo_ceph_client - tripleo-ansible-centos-8-molecule-tripleo_ceph_distribute_keys - - tripleo-ansible-centos-8-molecule-tripleo_ceph_run_ansible - tripleo-ansible-centos-8-molecule-tripleo_cephadm - tripleo-ansible-centos-8-molecule-tripleo_clients_install - tripleo-ansible-centos-8-molecule-tripleo_collectd @@ -139,7 +137,6 @@ - tripleo-ansible-centos-8-molecule-tripleo_cellv2 - tripleo-ansible-centos-8-molecule-tripleo_ceph_client - tripleo-ansible-centos-8-molecule-tripleo_ceph_distribute_keys - - tripleo-ansible-centos-8-molecule-tripleo_ceph_run_ansible - tripleo-ansible-centos-8-molecule-tripleo_cephadm - tripleo-ansible-centos-8-molecule-tripleo_clients_install - tripleo-ansible-centos-8-molecule-tripleo_collectd @@ -259,14 +256,6 @@ vars: tripleo_job_ansible_args: --skip-tags=ceph_fetch_admin_keyring,ceph_admin_key_rsync tripleo_role_name: tripleo_ceph_distribute_keys -- job: - files: - - ^tripleo_ansible/roles/tripleo_ceph_.* - name: tripleo-ansible-centos-8-molecule-tripleo_ceph_run_ansible - parent: tripleo-ansible-centos-8-base - vars: - tripleo_job_ansible_args: -v --skip-tags=run_uuid_ansible,run_ceph_ansible - tripleo_role_name: tripleo_ceph_run_ansible - job: files: - ^tripleo_ansible/roles/tripleo_cephadm/.*