2015-10-21 06:28:35 +08:00
---
# This playbook purges a containerized Ceph cluster
2016-07-15 03:45:56 +08:00
# It removes: packages, containers, configuration files and ALL THE DATA
2015-10-21 06:28:35 +08:00
2016-07-15 03:45:56 +08:00
- name : confirm whether user really meant to purge the cluster
hosts :
- localhost
2016-07-22 13:29:58 +08:00
gather_facts : false
2016-07-15 03:45:56 +08:00
vars_prompt :
- name : ireallymeanit
prompt : Are you sure you want to purge the cluster?
default : 'no'
private : no
2016-07-22 13:29:58 +08:00
- name : remove_packages
prompt : >
If --skip-tags=with_pkg is not set docker packages
and more will be uninstalled from non-atomic hosts.
Do you want to continue?
default : 'no'
private : no
2016-07-15 03:45:56 +08:00
tasks :
- name : exit playbook, if user did not mean to purge cluster
fail :
msg : >
"Exiting purge-docker-cluster playbook, cluster was NOT purged.
To purge the cluster, either say 'yes' on the prompt or
or use `-e ireallymeanit=yes` on the command line when
invoking the playbook"
when : ireallymeanit != 'yes'
2016-07-22 13:29:58 +08:00
- name : exit playbook, if user did not mean to remove packages
fail :
msg : >
"Exiting purge-docker-cluster playbook. No packages were removed.
To skip removing packages use --skip-tag=with_pkg. To continue
with removing packages, do not specify --skip-tag=with_pkg and
either say 'yes' on the prompt or use `-e remove_packages=yes`
on the command line when invoking the playbook"
when : remove_packages != 'yes'
2016-07-15 03:45:56 +08:00
2017-06-02 20:42:34 +08:00
- name : set ceph_docker_registry value if not set
set_fact :
ceph_docker_registry : "docker.io"
when : ceph_docker_registry is not defined
2016-07-15 03:45:56 +08:00
- name : purge ceph mds cluster
hosts :
2017-03-08 03:23:40 +08:00
- "{{ mds_group_name|default('mdss') }}"
2016-07-15 03:45:56 +08:00
become : true
2015-10-21 06:28:35 +08:00
tasks :
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : disable ceph mds service
service :
name : "ceph-mds@{{ ansible_hostname }}"
state : stopped
enabled : no
ignore_errors : true
- name : remove ceph mds container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-mds-{{ ansible_hostname }}"
2016-07-15 03:45:56 +08:00
state : absent
ignore_errors : true
- name : remove ceph mds service
file :
2016-08-13 00:47:10 +08:00
path : /etc/systemd/system/ceph-mds@.service
state : absent
2016-07-15 03:45:56 +08:00
- name : remove ceph mds image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-07-15 03:45:56 +08:00
tags :
remove_img
2017-09-24 00:02:49 +08:00
- name : purge ceph mgr cluster
hosts :
- "{{ mgr_group_name|default('mgrs') }}"
become : true
tasks :
- name : disable ceph mgr service
service :
name : "ceph-mgr@{{ ansible_hostname }}"
state : stopped
enabled : no
ignore_errors : true
- name : remove ceph mgr container
docker :
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
name : "ceph-mgr-{{ ansible_hostname }}"
state : absent
ignore_errors : true
- name : remove ceph mgr service
file :
path : /etc/systemd/system/ceph-mgr@.service
state : absent
- name : remove ceph mgr image
docker_image :
state : absent
repository : "{{ ceph_docker_registry }}"
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
force : yes
tags :
remove_img
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : purge ceph rgw cluster
hosts :
2017-03-08 03:23:40 +08:00
- "{{ rgw_group_name|default('rgws') }}"
2016-07-15 03:45:56 +08:00
become : true
tasks :
2016-07-22 13:29:58 +08:00
2017-07-29 07:00:06 +08:00
# For backward compatibility
- name : disable ceph rgw service (old unit name, for backward compatibility)
2016-07-15 03:45:56 +08:00
service :
name : "ceph-rgw@{{ ansible_hostname }}"
state : stopped
enabled : no
ignore_errors : true
2017-07-29 07:00:06 +08:00
- name : disable ceph rgw service (new unit name)
service :
2017-09-24 10:52:51 +08:00
name : "ceph-radosgw@rgw.{{ ansible_hostname }}"
2017-07-29 07:00:06 +08:00
state : stopped
enabled : no
ignore_errors : true
2016-07-15 03:45:56 +08:00
- name : remove ceph rgw container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-rgw-{{ ansible_hostname }}"
2016-07-15 03:45:56 +08:00
state : absent
ignore_errors : true
- name : remove ceph rgw service
file :
2017-07-29 07:00:06 +08:00
path : "{{ item }}"
2016-08-13 00:47:10 +08:00
state : absent
2017-07-29 07:00:06 +08:00
with_items :
# For backward compatibility
- /etc/systemd/system/ceph-rgw@.service
- /etc/systemd/system/ceph-radosgw@.service
2016-07-15 03:45:56 +08:00
- name : remove ceph rgw image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-07-15 03:45:56 +08:00
tags :
remove_img
2015-10-21 06:28:35 +08:00
2016-08-12 09:24:26 +08:00
- name : purge ceph rbd-mirror cluster
hosts :
2017-03-08 03:23:40 +08:00
- "{{ rbdmirror_group_name|default('rbdmirrors') }}"
2016-08-12 09:24:26 +08:00
become : true
tasks :
- name : disable ceph rbd-mirror service
service :
2017-09-25 03:11:04 +08:00
name : "ceph-rbd-mirror@rbd-mirror.{{ ansible_hostname }}"
2016-08-12 09:24:26 +08:00
state : stopped
enabled : no
ignore_errors : true
- name : remove ceph rbd-mirror container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-rbd-mirror-{{ ansible_hostname }}"
2016-08-12 09:24:26 +08:00
state : absent
ignore_errors : true
- name : remove ceph rbd-mirror service
file :
2016-08-13 00:47:10 +08:00
path : /etc/systemd/system/ceph-rbd-mirror@.service
state : absent
2016-08-12 09:24:26 +08:00
- name : remove ceph rbd-mirror image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-08-12 09:24:26 +08:00
tags :
remove_img
2016-07-15 03:45:56 +08:00
- name : purge ceph nfs cluster
2016-04-25 22:40:41 +08:00
2016-07-15 03:45:56 +08:00
hosts :
2017-03-08 03:23:40 +08:00
- "{{ nfs_group_name|default('nfss') }}"
2015-10-21 06:28:35 +08:00
2016-07-15 03:45:56 +08:00
become : true
2015-10-21 06:28:35 +08:00
2016-07-15 03:45:56 +08:00
tasks :
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : disable ceph nfs service
service :
name : "ceph-nfs@{{ ansible_hostname }}"
state : stopped
enabled : no
ignore_errors : true
- name : remove ceph nfs container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-nfs-{{ ansible_hostname }}"
2016-07-15 03:45:56 +08:00
state : absent
ignore_errors : true
- name : remove ceph nfs service
file :
path : /etc/systemd/system/ceph-nfs@.service
state : absent
- name : remove ceph nfs directories for "{{ ansible_hostname }}"
2016-04-25 22:40:41 +08:00
file :
2016-06-22 00:29:02 +08:00
path : "{{ item }}"
2016-04-25 22:40:41 +08:00
state : absent
2015-10-21 06:28:35 +08:00
with_items :
2016-07-15 03:45:56 +08:00
- /etc/ganesha
- /var/lib/nfs/ganesha
- /var/run/ganesha
- name : remove ceph nfs image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-07-15 03:45:56 +08:00
tags :
remove_img
- name : purge ceph osd cluster
hosts :
2017-03-08 03:23:40 +08:00
- "{{ osd_group_name|default('osds') }}"
2016-07-15 03:45:56 +08:00
become : true
tasks :
2016-07-22 13:29:58 +08:00
2017-10-07 01:50:15 +08:00
- name : get all the running osds
shell : |
systemctl list-units | grep "loaded active" | grep -oE "ceph-osd@([0-9]{1,2}|[a-z]+).service"
register : osd_units
2016-07-15 03:45:56 +08:00
- name : disable ceph osd service
service :
2017-10-25 13:48:42 +08:00
name : "{{ item }}"
2016-07-15 03:45:56 +08:00
state : stopped
enabled : no
2017-10-07 01:50:15 +08:00
with_items : "{{ osd_units.stdout_lines }}"
2016-07-15 03:45:56 +08:00
2017-10-07 01:50:15 +08:00
- name : get prepare container
command : "docker ps -a -q --filter='name=ceph-osd-prepare'"
register : prepare_containers
2017-09-28 06:17:12 +08:00
2016-07-15 03:45:56 +08:00
- name : remove ceph osd prepare container
2017-10-07 01:50:15 +08:00
command : "docker rm -f {{ item }}"
with_items : "{{ prepare_containers.stdout_lines }}"
2016-07-15 03:45:56 +08:00
2017-10-07 01:50:15 +08:00
- name : see if ceph-disk-created data partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*.data"
failed_when : false
register : ceph_data_partlabels
- name : see if ceph-disk-created block partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*block$"
failed_when : false
register : ceph_block_partlabels
- name : see if ceph-disk-created journal partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*.journal"
failed_when : false
register : ceph_journal_partlabels
- name : see if ceph-disk-created block db partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*.block.db"
failed_when : false
register : ceph_db_partlabels
- name : see if ceph-disk-created block wal partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*.block.wal"
failed_when : false
register : ceph_wal_partlabels
- name : see if ceph-disk-created lockbox partitions are present
shell : |
ls /dev/disk/by-partlabel | grep -q "ceph.*.lockbox"
failed_when : false
register : ceph_lockbox_partlabels
# NOTE(leseb): hope someone will find a more elegant way one day...
- name : see if encrypted partitions are present
shell : |
blkid -t TYPE=crypto_LUKS -s PARTLABEL -s PARTUUID | grep "ceph.*." | grep -o PARTUUID.* | cut -d '"' -f 2
register : encrypted_ceph_partuuid
- name : remove osd mountpoint tree
file :
path : /var/lib/ceph/osd/
2016-07-15 03:45:56 +08:00
state : absent
2017-10-07 01:50:15 +08:00
register : remove_osd_mountpoints
2016-07-15 03:45:56 +08:00
ignore_errors : true
2017-10-07 01:50:15 +08:00
- name : get ceph data partitions
shell : |
blkid | awk -F : '/ceph data/ { print $1 }'
when : ceph_data_partlabels.rc == 0
failed_when : false
register : ceph_data_partition_to_erase_path
- name : get ceph lockbox partitions
shell : |
blkid | awk '/ceph lockbox/ { sub (":", "", $1); print $1 }'
when : ceph_lockbox_partlabels.rc == 0
failed_when : false
register : ceph_lockbox_partition_to_erase_path
- name : get ceph block partitions
shell : |
blkid | awk '/ceph block"/ { sub (":", "", $1); print $1 }'
when : ceph_block_partlabels.rc == 0
failed_when : false
register : ceph_block_partition_to_erase_path
- name : get ceph journal partitions
shell : |
blkid | awk '/ceph journal/ { sub (":", "", $1); print $1 }'
when : ceph_journal_partlabels.rc == 0
failed_when : false
register : ceph_journal_partition_to_erase_path
- name : get ceph db partitions
shell : |
blkid | awk '/ceph block.db/ { sub (":", "", $1); print $1 }'
when : ceph_db_partlabels.rc == 0
failed_when : false
register : ceph_db_partition_to_erase_path
- name : get ceph wal partitions
shell : |
blkid | awk '/ceph block.wal/ { sub (":", "", $1); print $1 }'
when : ceph_wal_partlabels.rc == 0
failed_when : false
register : ceph_wal_partition_to_erase_path
2017-02-18 09:54:47 +08:00
- name : zap ceph osd disks
shell : |
2017-10-07 01:50:15 +08:00
docker run --rm \
2017-02-18 09:54:47 +08:00
--privileged=true \
2017-10-07 01:50:15 +08:00
--name ceph-osd-zap-{{ ansible_hostname }}-{{ item[:-1] | regex_replace('/dev/', '') }} \
2017-02-18 09:54:47 +08:00
-v /dev/:/dev/ \
2017-10-07 01:50:15 +08:00
-e OSD_DEVICE={{ item[:-1] }} \
2017-06-02 20:42:34 +08:00
{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }} \
2017-02-18 09:54:47 +08:00
zap_device
2017-02-08 04:55:36 +08:00
with_items :
2017-10-07 01:50:15 +08:00
- "{{ ceph_data_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_lockbox_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_block_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_journal_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_db_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_wal_partition_to_erase_path.stdout_lines | default([]) }}"
when :
- (ceph_data_partlabels.rc == 0 or ceph_block_partlabels.rc == 0 or ceph_journal_partlabels.rc == 0 or ceph_db_partlabels.rc == 0 or ceph_wal_partlabels.rc == 0)
2016-07-15 03:45:56 +08:00
2017-02-18 09:54:47 +08:00
- name : wait until the zap containers die
shell : |
2017-09-28 06:17:12 +08:00
docker ps | grep -sq ceph-osd-zap-{{ ansible_hostname }}
2017-02-18 09:54:47 +08:00
register : zap_alive
failed_when : false
until : zap_alive.rc != 0
retries : 5
delay : 10
2016-07-22 13:29:58 +08:00
- name : remove ceph osd zap disk container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-10-07 01:50:15 +08:00
name : "ceph-osd-zap-{{ ansible_hostname }}-{{ item[:-1] | regex_replace('/dev/', '') }}"
2016-07-22 13:29:58 +08:00
state : absent
2017-02-08 04:55:36 +08:00
with_items :
2017-10-07 01:50:15 +08:00
- "{{ ceph_data_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_lockbox_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_block_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_journal_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_db_partition_to_erase_path.stdout_lines | default([]) }}"
- "{{ ceph_wal_partition_to_erase_path.stdout_lines | default([]) }}"
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : remove ceph osd service
file :
2016-08-13 00:47:10 +08:00
path : /etc/systemd/system/ceph-osd@.service
state : absent
2016-07-15 03:45:56 +08:00
- name : remove ceph osd image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-07-15 03:45:56 +08:00
tags :
remove_img
2017-11-09 17:42:14 +08:00
- name : include vars from group_vars/osds.yml
include_vars :
file : "{{ item }}"
with_first_found :
- files :
- "{{ playbook_dir }}/group_vars/osds"
- "{{ playbook_dir }}/group_vars/osds.yml"
skip : true
- name : ensure all osd_disk_prepare logs are removed
file :
path : "{{ item }}"
state : absent
with_fileglob :
- "{{ ceph_osd_docker_run_script_path | default('/usr/share') }}/ceph-osd-prepare-*.log"
2016-07-15 03:45:56 +08:00
- name : purge ceph mon cluster
hosts :
2017-03-08 03:23:40 +08:00
- "{{ mon_group_name|default('mons') }}"
2016-07-15 03:45:56 +08:00
become : true
tasks :
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : disable ceph mon service
service :
name : "ceph-mon@{{ ansible_hostname }}"
state : stopped
enabled : no
ignore_errors : true
- name : remove ceph mon container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-mon-{{ ansible_hostname }}"
2016-07-15 03:45:56 +08:00
state : absent
ignore_errors : true
- name : remove restapi container
docker :
2017-06-02 20:42:34 +08:00
image : "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
2017-02-20 17:03:49 +08:00
name : "ceph-restapi-{{ ansible_hostname }}"
2016-07-15 03:45:56 +08:00
state : absent
2016-08-13 00:47:10 +08:00
ignore_errors : true
2016-07-15 03:45:56 +08:00
- name : remove ceph mon service
file :
2016-08-13 00:47:10 +08:00
path : /etc/systemd/system/ceph-mon@.service
state : absent
2016-07-15 03:45:56 +08:00
- name : remove ceph mon image
docker_image :
state : absent
2017-06-02 20:42:34 +08:00
repository : "{{ ceph_docker_registry }}"
2017-02-09 22:16:39 +08:00
name : "{{ ceph_docker_image }}"
tag : "{{ ceph_docker_image_tag }}"
2017-02-06 21:58:39 +08:00
force : yes
2016-07-15 03:45:56 +08:00
tags :
remove_img
- name : remove installed packages
hosts :
2017-03-08 03:23:40 +08:00
- "{{ mon_group_name|default('mons') }}"
- "{{ osd_group_name|default('osds') }}"
- "{{ mds_group_name|default('mdss') }}"
- "{{ rgw_group_name|default('rgws') }}"
- "{{ rbdmirror_group_name|default('rbdmirrors') }}"
- "{{ nfs_group_name|default('nfss') }}"
2017-09-24 00:02:49 +08:00
- "{{ mgr_group_name|default('mgrs') }}"
2016-07-15 03:45:56 +08:00
become : true
tags :
with_pkg
tasks :
2016-07-22 13:29:58 +08:00
- name : check if it is Atomic host
stat : path=/run/ostree-booted
register : stat_ostree
- name : set fact for using Atomic host
set_fact :
is_atomic : "{{ stat_ostree.stat.exists }}"
2016-07-15 03:45:56 +08:00
- name : stop docker service
service :
name : docker
state : stopped
enabled : no
when : not is_atomic
2017-05-31 04:06:46 +08:00
- name : remove docker-py on Debian
2016-07-28 22:55:37 +08:00
pip :
name : docker-py
state : absent
when :
2017-05-31 04:06:46 +08:00
- ansible_distribution == 'Debian'
2016-07-28 22:55:37 +08:00
2017-05-31 04:06:46 +08:00
- name : remove six on Debian
2016-07-28 22:55:37 +08:00
pip :
name : six
state : absent
2017-05-31 04:06:46 +08:00
when :
- ansible_distribution == 'Debian'
2016-07-28 22:55:37 +08:00
2016-07-15 03:45:56 +08:00
- name : remove pip and docker on ubuntu
apt :
name : "{{ item }}"
state : absent
update_cache : yes
2016-07-28 22:55:37 +08:00
autoremove : yes
2016-07-15 03:45:56 +08:00
with_items :
- python-pip
- docker
- docker.io
when : ansible_distribution == 'Ubuntu'
- name : remove pip and docker on debian
apt :
name : "{{ item }}"
state : absent
update_cache : yes
2016-07-28 22:55:37 +08:00
autoremove : yes
2016-07-15 03:45:56 +08:00
with_items :
- python-pip
- docker-engine
when : ansible_distribution == 'Debian'
- name : remove epel-release on redhat
yum :
name : epel-release
state : absent
when :
ansible_os_family == 'RedHat' and
not is_atomic
- name : remove pip on redhat
yum :
name : "{{ item }}"
state : absent
with_items :
- python-pip
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "yum" and
not is_atomic
- name : remove docker-engine on redhat
yum :
name : "{{ item }}"
state : absent
with_items :
- docker-engine
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "yum" and
not is_atomic
# for CentOS
- name : remove docker on redhat
yum :
name : "{{ item }}"
state : absent
with_items :
- docker
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "yum" and
not is_atomic
- name : remove pip and docker on redhat
dnf :
name : "{{ item }}"
state : absent
with_items :
- python-pip
- docker-engine
- docker
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "dnf" and
not is_atomic
2016-07-28 22:55:37 +08:00
- name : remove package dependencies on redhat
command : yum -y autoremove
2017-10-12 21:38:01 +08:00
args :
warn : no
2016-07-28 22:55:37 +08:00
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "yum" and
not is_atomic
2015-10-21 06:28:35 +08:00
2016-07-28 22:55:37 +08:00
- name : remove package dependencies on redhat again
command : yum -y autoremove
2017-10-12 21:38:01 +08:00
args :
warn : no
2016-07-15 03:45:56 +08:00
when :
2016-07-28 22:55:37 +08:00
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "yum" and
2016-07-15 03:45:56 +08:00
not is_atomic
2016-07-28 22:55:37 +08:00
- name : remove package dependencies on redhat
command : dnf -y autoremove
2017-10-12 21:38:01 +08:00
args :
warn : no
2016-07-15 03:45:56 +08:00
when :
2016-07-28 22:55:37 +08:00
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "dnf" and
not is_atomic
- name : remove package dependencies on redhat again
command : dnf -y autoremove
2017-10-12 21:38:01 +08:00
args :
warn : no
2016-07-28 22:55:37 +08:00
when :
ansible_os_family == 'RedHat' and
ansible_pkg_mgr == "dnf" and
2016-07-15 03:45:56 +08:00
not is_atomic
- name : purge ceph directories
hosts :
2017-03-08 03:23:40 +08:00
- "{{ mon_group_name|default('mons') }}"
- "{{ osd_group_name|default('osds') }}"
- "{{ mds_group_name|default('mdss') }}"
- "{{ rgw_group_name|default('rgws') }}"
- "{{ rbdmirror_group_name|default('rbdmirrors') }}"
- "{{ nfs_group_name|default('nfss') }}"
2017-09-24 00:02:49 +08:00
- "{{ mgr_group_name|default('mgrs') }}"
2016-07-22 13:29:58 +08:00
gather_facts : false # Already gathered previously
2016-07-15 03:45:56 +08:00
become : true
2015-10-21 06:28:35 +08:00
tasks :
2016-07-15 03:45:56 +08:00
- name : purge ceph directories for "{{ ansible_hostname }}"
file :
path : "{{ item }}"
state : absent
with_items :
- /etc/ceph
- /var/lib/ceph
- /var/log/ceph
- name : purge fetch directory
2015-10-21 06:28:35 +08:00
2016-07-15 03:45:56 +08:00
hosts :
- localhost
2015-10-21 06:28:35 +08:00
2016-07-22 13:29:58 +08:00
gather_facts : false
2016-07-15 03:45:56 +08:00
tasks :
2017-03-08 03:45:22 +08:00
- name : set fetch_directory value if not set
set_fact :
fetch_directory : "fetch/"
when : fetch_directory is not defined
2016-07-22 13:29:58 +08:00
2016-07-15 03:45:56 +08:00
- name : purge fetch directory for localhost
file :
path : "{{ fetch_directory }}"
state : absent