From 6bc7e08cc5d80941c80e8d36d3a2b1373f147a05 Mon Sep 17 00:00:00 2001 From: leonwang Date: Thu, 15 Mar 2018 08:25:05 +0000 Subject: Merge nbp installation into opensds ansible script In this update, the nbp-ansible is removed from stor4nfv repo and all code has been merged into ansible repo. Besides, the latest update reduce a lot of work to download and build opensds source code. And some installation docs are also updated. Remove license statement for the moment. Change-Id: Ib8504d96e2d41e1c3ab7e0c94689111679d56abd Signed-off-by: leonwang --- ci/ansible/roles/cleaner/tasks/main.yml | 355 +++++++++++++++++--------------- 1 file changed, 188 insertions(+), 167 deletions(-) mode change 100755 => 100644 ci/ansible/roles/cleaner/tasks/main.yml (limited to 'ci/ansible/roles/cleaner/tasks/main.yml') diff --git a/ci/ansible/roles/cleaner/tasks/main.yml b/ci/ansible/roles/cleaner/tasks/main.yml old mode 100755 new mode 100644 index c1c465c..4b3b0c2 --- a/ci/ansible/roles/cleaner/tasks/main.yml +++ b/ci/ansible/roles/cleaner/tasks/main.yml @@ -1,167 +1,188 @@ ---- -- name: remove golang tarball - file: - path: "/opt/{{ golang_tarball }}" - state: absent - force: yes - ignore_errors: yes - -- name: kill etcd daemon service - shell: killall etcd - ignore_errors: yes - when: db_driver == "etcd" and container_enabled == false - -- name: kill etcd containerized service - docker: - image: quay.io/coreos/etcd:latest - state: stopped - when: container_enabled == true - -- name: remove etcd service data - file: - path: "{{ etcd_dir }}" - state: absent - force: yes - ignore_errors: yes - when: db_driver == "etcd" - -- name: remove etcd tarball - file: - path: "/opt/{{ etcd_tarball }}" - state: absent - force: yes - ignore_errors: yes - when: db_driver == "etcd" - -- name: kill osdslet daemon service - shell: killall osdslet - ignore_errors: yes - when: container_enabled == false - -- name: kill osdslet containerized service - docker: - image: opensdsio/opensds-controller:latest - state: stopped - when: container_enabled == true - -- name: kill osdsdock daemon service - shell: killall osdsdock - ignore_errors: yes - when: container_enabled == false - -- name: kill osdsdock containerized service - docker: - image: opensdsio/opensds-dock:latest - state: stopped - when: container_enabled == true - -- name: clean all opensds build files - shell: . /etc/profile; make clean - args: - chdir: "{{ opensds_root_dir }}" - -- name: clean all opensds configuration files - file: - path: "{{ opensds_config_dir }}" - state: absent - force: yes - ignore_errors: yes - -- name: clean all opensds log files - file: - path: "{{ opensds_log_dir }}" - state: absent - force: yes - ignore_errors: yes - -- name: check if it existed before cleaning a volume group - shell: vgdisplay {{ vg_name }} - ignore_errors: yes - register: vg_existed - when: enabled_backend == "lvm" - -- name: remove a volume group if lvm backend specified - shell: vgremove {{ vg_name }} - when: enabled_backend == "lvm" and vg_existed.rc == 0 - -- name: check if it existed before cleaning a physical volume - shell: pvdisplay {{ pv_device }} - ignore_errors: yes - register: pv_existed - when: enabled_backend == "lvm" - -- name: remove a physical volume if lvm backend specified - shell: pvremove {{ pv_device }} - when: enabled_backend == "lvm" and pv_existed.rc == 0 - -- name: stop cinder-standalone service - shell: docker-compose down - become: true - args: - chdir: "{{ cinder_data_dir }}/cinder/contrib/block-box" - when: enabled_backend == "cinder" - -- name: clean the volume group of cinder - shell: - _raw_params: | - - # _clean_lvm_volume_group removes all default LVM volumes - # - # Usage: _clean_lvm_volume_group $vg - function _clean_lvm_volume_group { - local vg=$1 - - # Clean out existing volumes - sudo lvremove -f $vg - } - - # _remove_lvm_volume_group removes the volume group - # - # Usage: _remove_lvm_volume_group $vg - function _remove_lvm_volume_group { - local vg=$1 - - # Remove the volume group - sudo vgremove -f $vg - } - - # _clean_lvm_backing_file() removes the backing file of the - # volume group - # - # Usage: _clean_lvm_backing_file() $backing_file - function _clean_lvm_backing_file { - local backing_file=$1 - - # If the backing physical device is a loop device, it was probably setup by DevStack - if [[ -n "$backing_file" ]] && [[ -e "$backing_file" ]]; then - local vg_dev - vg_dev=$(sudo losetup -j $backing_file | awk -F':' '/'.img'/ { print $1}') - if [[ -n "$vg_dev" ]]; then - sudo losetup -d $vg_dev - fi - rm -f $backing_file - fi - } - - # clean_lvm_volume_group() cleans up the volume group and removes the - # backing file - # - # Usage: clean_lvm_volume_group $vg - function clean_lvm_volume_group { - local vg=$1 - - _clean_lvm_volume_group $vg - _remove_lvm_volume_group $vg - # if there is no logical volume left, it's safe to attempt a cleanup - # of the backing file - if [[ -z "$(sudo lvs --noheadings -o lv_name $vg 2>/dev/null)" ]]; then - _clean_lvm_backing_file {{ cinder_data_dir }}/${vg}.img - fi - } - - clean_lvm_volume_group {{cinder_volume_group}} - - args: - executable: /bin/bash - become: true - when: enabled_backend == "cinder" +--- +- name: kill osdslet daemon service + shell: killall osdslet + ignore_errors: yes + when: container_enabled == false + +- name: kill osdslet containerized service + docker: + image: opensdsio/opensds-controller:latest + state: stopped + when: container_enabled == true + +- name: kill osdsdock daemon service + shell: killall osdsdock + ignore_errors: yes + when: container_enabled == false + +- name: kill osdsdock containerized service + docker: + image: opensdsio/opensds-dock:latest + state: stopped + when: container_enabled == true + +- name: kill etcd daemon service + shell: killall etcd + ignore_errors: yes + when: db_driver == "etcd" and container_enabled == false + +- name: kill etcd containerized service + docker: + image: quay.io/coreos/etcd:latest + state: stopped + when: db_driver == "etcd" and container_enabled == true + +- name: remove etcd service data + file: + path: "{{ etcd_dir }}" + state: absent + force: yes + ignore_errors: yes + when: db_driver == "etcd" + +- name: remove etcd tarball + file: + path: "/opt/{{ etcd_tarball }}" + state: absent + force: yes + ignore_errors: yes + when: db_driver == "etcd" + +- name: clean opensds release files + file: + path: "{{ opensds_dir }}" + state: absent + force: yes + ignore_errors: yes + +- name: clean opensds release tarball file + file: + path: "{{ opensds_tarball_url }}" + state: absent + force: yes + ignore_errors: yes + +- name: clean opensds flexvolume plugins binary file + file: + path: "{{ flexvolume_plugin_dir }}" + state: absent + force: yes + ignore_errors: yes + when: nbp_plugin_type == "flexvolume" + +- name: clean nbp release files + file: + path: "{{ nbp_dir }}" + state: absent + force: yes + ignore_errors: yes + +- name: clean nbp release tarball file + file: + path: "{{ nbp_tarball_url }}" + state: absent + force: yes + ignore_errors: yes + +- name: clean all opensds configuration files + file: + path: "{{ opensds_config_dir }}" + state: absent + force: yes + ignore_errors: yes + +- name: clean all opensds log files + file: + path: "{{ opensds_log_dir }}" + state: absent + force: yes + ignore_errors: yes + +- name: check if it existed before cleaning a volume group + shell: vgdisplay {{ vg_name }} + ignore_errors: yes + register: vg_existed + when: enabled_backend == "lvm" + +- name: remove a volume group if lvm backend specified + lvg: + vg: "{{ vg_name }}" + state: absent + when: enabled_backend == "lvm" and vg_existed.rc == 0 + +- name: remove physical volumes if lvm backend specified + shell: pvremove {{ item }} + with_items: "{{ pv_devices }}" + when: enabled_backend == "lvm" + +- name: stop cinder-standalone service + shell: docker-compose down + become: true + args: + chdir: "{{ cinder_data_dir }}/cinder/contrib/block-box" + when: enabled_backend == "cinder" + +- name: clean the volume group of cinder + shell: + _raw_params: | + + # _clean_lvm_volume_group removes all default LVM volumes + # + # Usage: _clean_lvm_volume_group $vg + function _clean_lvm_volume_group { + local vg=$1 + + # Clean out existing volumes + sudo lvremove -f $vg + } + + # _remove_lvm_volume_group removes the volume group + # + # Usage: _remove_lvm_volume_group $vg + function _remove_lvm_volume_group { + local vg=$1 + + # Remove the volume group + sudo vgremove -f $vg + } + + # _clean_lvm_backing_file() removes the backing file of the + # volume group + # + # Usage: _clean_lvm_backing_file() $backing_file + function _clean_lvm_backing_file { + local backing_file=$1 + + # If the backing physical device is a loop device, it was probably setup by DevStack + if [[ -n "$backing_file" ]] && [[ -e "$backing_file" ]]; then + local vg_dev + vg_dev=$(sudo losetup -j $backing_file | awk -F':' '/'.img'/ { print $1}') + if [[ -n "$vg_dev" ]]; then + sudo losetup -d $vg_dev + fi + rm -f $backing_file + fi + } + + # clean_lvm_volume_group() cleans up the volume group and removes the + # backing file + # + # Usage: clean_lvm_volume_group $vg + function clean_lvm_volume_group { + local vg=$1 + + _clean_lvm_volume_group $vg + _remove_lvm_volume_group $vg + # if there is no logical volume left, it's safe to attempt a cleanup + # of the backing file + if [[ -z "$(sudo lvs --noheadings -o lv_name $vg 2>/dev/null)" ]]; then + _clean_lvm_backing_file {{ cinder_data_dir }}/${vg}.img + fi + } + + clean_lvm_volume_group {{cinder_volume_group}} + + args: + executable: /bin/bash + become: true + when: enabled_backend == "cinder" -- cgit 1.2.3-korg