From b1e61be9c68be798ba82827401043b2866538dfe Mon Sep 17 00:00:00 2001 From: Guillaume Abrioux Date: Tue, 24 Sep 2019 19:13:31 +0200 Subject: [PATCH] tests: set copy_admin_key at group_vars level setting it at extra vars level prevent from setting it per node. Signed-off-by: Guillaume Abrioux (cherry picked from commit 5bb6a4da4267b987aec6e20a8d09b18eebc2c693) --- roles/ceph-client/tasks/pre_requisite.yml | 31 +++++++++++++------ .../shrink_mds/container/group_vars/all | 3 +- .../shrink_osd/container/group_vars/all | 3 +- tests/functional/shrink_osd/group_vars/all | 3 +- .../shrink_rbdmirror/container/group_vars/all | 3 +- .../shrink_rgw/container/group_vars/all | 1 + tox-podman.ini | 3 +- tox-update.ini | 1 - tox.ini | 11 ++----- 9 files changed, 34 insertions(+), 25 deletions(-) diff --git a/roles/ceph-client/tasks/pre_requisite.yml b/roles/ceph-client/tasks/pre_requisite.yml index 582fb2f60..a05a91d37 100644 --- a/roles/ceph-client/tasks/pre_requisite.yml +++ b/roles/ceph-client/tasks/pre_requisite.yml @@ -1,11 +1,24 @@ --- - name: copy ceph admin keyring - copy: - src: "{{ fetch_directory }}/{{ fsid }}/etc/ceph/{{ cluster }}.client.admin.keyring" - dest: "/etc/ceph/" - owner: "{{ ceph_uid if containerized_deployment else 'ceph' }}" - group: "{{ ceph_uid if containerized_deployment else 'ceph' }}" - mode: "{{ ceph_keyring_permissions }}" - when: - - cephx | bool - - copy_admin_key | bool + block: + - name: get keys from monitors + command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} auth get {{ item.name }}" + register: _client_keys + with_items: + - { name: "client.admin", path: "/etc/ceph/{{ cluster }}.client.admin.keyring", copy_key: "{{ copy_admin_key }}" } + delegate_to: "{{ groups.get(mon_group_name)[0] }}" + when: + - cephx | bool + - item.copy_key | bool + + - name: copy ceph key(s) if needed + copy: + dest: "{{ item.item.path }}" + content: "{{ item.stdout + '\n' }}" + owner: "{{ ceph_uid if containerized_deployment else 'ceph' }}" + group: "{{ ceph_uid if containerized_deployment else 'ceph' }}" + mode: "{{ ceph_keyring_permissions }}" + with_items: "{{ _client_keys.results }}" + when: + - item.item.copy_key | bool + when: cephx | bool diff --git a/tests/functional/shrink_mds/container/group_vars/all b/tests/functional/shrink_mds/container/group_vars/all index cab635755..306cf41a0 100644 --- a/tests/functional/shrink_mds/container/group_vars/all +++ b/tests/functional/shrink_mds/container/group_vars/all @@ -13,4 +13,5 @@ ceph_conf_overrides: global: osd_pool_default_size: 1 openstack_config: False -dashboard_enabled: False \ No newline at end of file +dashboard_enabled: False +copy_admin_key: True \ No newline at end of file diff --git a/tests/functional/shrink_osd/container/group_vars/all b/tests/functional/shrink_osd/container/group_vars/all index c9f7e9983..bc458f80a 100644 --- a/tests/functional/shrink_osd/container/group_vars/all +++ b/tests/functional/shrink_osd/container/group_vars/all @@ -13,4 +13,5 @@ ceph_conf_overrides: global: osd_pool_default_size: 1 openstack_config: False -dashboard_enabled: False \ No newline at end of file +dashboard_enabled: False +copy_admin_key: True \ No newline at end of file diff --git a/tests/functional/shrink_osd/group_vars/all b/tests/functional/shrink_osd/group_vars/all index 6cc7c95da..d6999b17e 100644 --- a/tests/functional/shrink_osd/group_vars/all +++ b/tests/functional/shrink_osd/group_vars/all @@ -7,4 +7,5 @@ ceph_conf_overrides: global: osd_pool_default_size: 3 openstack_config: False -dashboard_enabled: False \ No newline at end of file +dashboard_enabled: False +copy_admin_key: True \ No newline at end of file diff --git a/tests/functional/shrink_rbdmirror/container/group_vars/all b/tests/functional/shrink_rbdmirror/container/group_vars/all index f380626a6..0594e228e 100644 --- a/tests/functional/shrink_rbdmirror/container/group_vars/all +++ b/tests/functional/shrink_rbdmirror/container/group_vars/all @@ -12,4 +12,5 @@ ceph_conf_overrides: global: osd_pool_default_size: 1 openstack_config: False -dashboard_enabled: False \ No newline at end of file +dashboard_enabled: False +copy_admin_key: True \ No newline at end of file diff --git a/tests/functional/shrink_rgw/container/group_vars/all b/tests/functional/shrink_rgw/container/group_vars/all index d51eb5e9c..1b376c9ca 100644 --- a/tests/functional/shrink_rgw/container/group_vars/all +++ b/tests/functional/shrink_rgw/container/group_vars/all @@ -15,3 +15,4 @@ ceph_conf_overrides: osd_pool_default_size: 1 openstack_config: False dashboard_enabled: False +copy_admin_key: True \ No newline at end of file diff --git a/tox-podman.ini b/tox-podman.ini index a801d54e1..017ffcd18 100644 --- a/tox-podman.ini +++ b/tox-podman.ini @@ -51,7 +51,6 @@ commands= ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} \ ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} \ ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-nautilus} \ - copy_admin_key={env:COPY_ADMIN_KEY:False} \ container_binary=podman \ container_package_name=podman \ container_service_name=podman \ @@ -71,4 +70,4 @@ commands= # retest to ensure cluster came back up correctly after rebooting py.test --reruns 5 --reruns-delay 1 -n 8 --durations=0 --sudo -v --connection=ansible --ansible-inventory={changedir}/{env:INVENTORY} --ssh-config={changedir}/vagrant_ssh_config {toxinidir}/tests/functional/tests - vagrant destroy -f \ No newline at end of file + vagrant destroy -f diff --git a/tox-update.ini b/tox-update.ini index b6b7642b2..079a81c32 100644 --- a/tox-update.ini +++ b/tox-update.ini @@ -61,7 +61,6 @@ commands= ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} \ ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} \ ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-luminous} \ - copy_admin_key={env:COPY_ADMIN_KEY:False} \ "' pip install -r {toxinidir}/tests/requirements.txt diff --git a/tox.ini b/tox.ini index 36cbaa4bf..405f21868 100644 --- a/tox.ini +++ b/tox.ini @@ -44,7 +44,6 @@ commands= ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} \ ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} \ ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-master} \ - copy_admin_key={env:COPY_ADMIN_KEY:False} \ " # wait 30sec for services to be ready @@ -378,14 +377,9 @@ setenv= container: CONTAINER_DIR = /container container: PLAYBOOK = site-docker.yml.sample container: PURGE_PLAYBOOK = purge-docker-cluster.yml - storage_inventory: COPY_ADMIN_KEY = True non_container: PLAYBOOK = site.yml.sample shrink_mon: MON_TO_KILL = mon2 - shrink_osd: COPY_ADMIN_KEY = True shrink_mgr: MGR_TO_KILL = mgr1 - shrink_mds: COPY_ADMIN_KEY = True - shrink_rbdmirror: COPY_ADMIN_KEY = True - shrink_rgw: COPY_ADMIN_KEY = True rhcs: CEPH_STABLE_RELEASE = luminous lvm_osds: CEPH_STABLE_RELEASE = nautilus @@ -444,8 +438,7 @@ commands= ceph_stable_release={env:CEPH_STABLE_RELEASE:nautilus} \ ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} \ ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} \ - ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-master} \ - copy_admin_key={env:COPY_ADMIN_KEY:False} \ + ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-nautilus} \ " # wait 30sec for services to be ready @@ -462,7 +455,7 @@ commands= all_daemons: py.test --reruns 5 --reruns-delay 1 -n 8 --durations=0 --sudo -v --connection=ansible --ansible-inventory={changedir}/{env:INVENTORY} --ssh-config={changedir}/vagrant_ssh_config {toxinidir}/tests/functional/tests # handlers/idempotency test - all_daemons: ansible-playbook -vv -i {changedir}/{env:INVENTORY} {toxinidir}/{env:PLAYBOOK:site.yml.sample} --extra-vars "delegate_facts_host={env:DELEGATE_FACTS_HOST:True} fetch_directory={env:FETCH_DIRECTORY:{changedir}/fetch} ceph_stable_release={env:CEPH_STABLE_RELEASE:nautilus} ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG_BIS:latest-bis-master} copy_admin_key={env:COPY_ADMIN_KEY:False} " --extra-vars @ceph-override.json + all_daemons: ansible-playbook -vv -i {changedir}/{env:INVENTORY} {toxinidir}/{env:PLAYBOOK:site.yml.sample} --extra-vars "delegate_facts_host={env:DELEGATE_FACTS_HOST:True} fetch_directory={env:FETCH_DIRECTORY:{changedir}/fetch} ceph_stable_release={env:CEPH_STABLE_RELEASE:nautilus} ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} ceph_docker_image={env:CEPH_DOCKER_IMAGE:ceph/daemon} ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG_BIS:latest-bis-nautilus} " --extra-vars @ceph-override.json purge: {[purge]commands} switch_to_containers: {[switch-to-containers]commands} -- 2.39.5