--- /dev/null
+---
+# This playbook queries each OSD using `ceph-volume inventory` to report the
+# entire storage device inventory of a cluster.
+#
+# Usage:
+# ansible-playbook storage-inventory.yml
+
+- name: gather facts and check the init system
+
+ hosts:
+ - "{{ osd_group_name|default('osds') }}"
+
+ become: true
+
+ tasks:
+ - debug: msg="gather facts on all Ceph hosts for following reference"
+
+- name: query each host for storage device inventory
+
+ hosts:
+ - "{{ osd_group_name|default('osds') }}"
+
+ become: true
+
+ tasks:
+ - import_role:
+ name: ceph-defaults
+
+ - name: list storage inventory
+ ceph_volume:
+ action: "inventory"
+ environment:
+ CEPH_VOLUME_DEBUG: 1
+ CEPH_CONTAINER_IMAGE: "{{ ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment else None }}"
+ CEPH_CONTAINER_BINARY: "{{ container_binary }}"
[tox]
-envlist = {dev,luminous,mimic,rhcs}-{xenial_cluster,centos7_cluster,cluster,docker_cluster,update_cluster,update_docker_cluster,switch_to_containers,ooo_collocation,bluestore_lvm_osds,bluestore_lvm_osds_container,lvm_osds,purge_lvm_osds,purge_lvm_osds_container,shrink_mon,shrink_osd,shrink_mon_container,shrink_osd_container,docker_cluster_collocation,lvm_batch,lvm_osds_container,lvm_batch_container,infra_lv_create,add_osds,add_osds_container,rgw_multisite,rgw_multisite_container,container_podman}
+envlist = {dev,luminous,mimic,rhcs}-{xenial_cluster,centos7_cluster,cluster,docker_cluster,update_cluster,update_docker_cluster,switch_to_containers,ooo_collocation,bluestore_lvm_osds,bluestore_lvm_osds_container,lvm_osds,purge_lvm_osds,purge_lvm_osds_container,shrink_mon,shrink_osd,shrink_mon_container,shrink_osd_container,docker_cluster_collocation,lvm_batch,lvm_osds_container,lvm_batch_container,infra_lv_create,add_osds,add_osds_container,rgw_multisite,rgw_multisite_container,container_podman,storage_inventory,storage_inventory_container}
infra_lv_create
skipsdist = True
bash -c "cd {changedir}/secondary && vagrant destroy --force"
ansible -i localhost, all -c local -b -m iptables -a 'chain=FORWARD protocol=tcp source=192.168.0.0/16 destination=192.168.0.0/16 jump=ACCEPT action=insert rule_num=1 state=absent'
+[storage-inventory]
+commands=
+ cp {toxinidir}/infrastructure-playbooks/storage-inventory.yml {toxinidir}/storage-inventory.yml
+ ansible-playbook -vv -i {changedir}/hosts {toxinidir}/storage-inventory.yml --extra-vars "\
+ ceph_docker_image_tag={env:CEPH_DOCKER_IMAGE_TAG:latest-master} \
+ "
+
[testenv]
whitelist_externals =
vagrant
shrink_osd_container: COPY_ADMIN_KEY = True
shrink_osd: COPY_ADMIN_KEY = True
container_podman: PLAYBOOK = site-docker.yml.sample
+ storage_inventory: COPY_ADMIN_KEY = True
+ storage_inventory_container: PLAYBOOK = site-docker.yml.sample
rhcs: CEPH_STABLE_RELEASE = luminous
luminous: CEPH_STABLE_RELEASE = luminous
rgw_multisite: {toxinidir}/tests/functional/centos/7/rgw-multisite
rgw_multisite_container: {toxinidir}/tests/functional/centos/7/rgw-multisite-container
container_podman: {toxinidir}/tests/functional/fedora/29/container-podman
+ storage_inventory: {toxinidir}/tests/functional/centos/7/lvm-osds
+ storage_inventory_container: {toxinidir}/tests/functional/centos/7/lvm-osds-container
commands=
rhcs: ansible-playbook -vv -i "localhost," -c local {toxinidir}/tests/functional/rhcs_setup.yml --extra-vars "change_dir={changedir}" --tags "vagrant_setup"
switch_to_containers: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/lvm_setup.yml
container_podman: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/lvm_setup.yml
container_podman: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/simulate_rhel8.yml
+ storage_inventory: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/lvm_setup.yml
+ storage_inventory_container: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/lvm_setup.yml
rhcs: ansible-playbook -vv -i {changedir}/hosts {toxinidir}/tests/functional/rhcs_setup.yml --extra-vars "ceph_docker_registry={env:CEPH_DOCKER_REGISTRY:docker.io} repo_url={env:REPO_URL:} rhel7_repo_url={env:RHEL7_REPO_URL:}" --skip-tags "vagrant_setup"
add_osds_container: {[add-osds]commands}
rgw_multisite: {[rgw-multisite]commands}
rgw_multisite_container: {[rgw-multisite]commands}
+ storage_inventory: {[storage-inventory]commands}
+ storage_inventory_container: {[storage-inventory]commands}
vagrant destroy --force