diff options
author | wutianwei <wutianwei1@huawei.com> | 2017-10-24 09:28:08 +0800 |
---|---|---|
committer | wutianwei <wutianwei1@huawei.com> | 2017-10-28 01:35:40 +0000 |
commit | 6c6c426adc92183046b7baf9f9a03e34516e5a79 (patch) | |
tree | 37a0f0f2307b78832c5e2d728e350528cd77455e /deploy/adapters/ansible/roles/storage | |
parent | 466732f9477b9ad208761651290c6c046ba5f690 (diff) |
bugfix
When not define ceph role in DHA, there are somes issue on config-osa.
This patch add the judgement to check the parameter define or not.
Change-Id: If221fd3d02c87fc60f545b44f94043f38e34d283
Signed-off-by: wutianwei <wutianwei1@huawei.com>
(cherry picked from commit 660b8bfbb0546322f35f8c7f54d62e1bf5d5dd95)
Diffstat (limited to 'deploy/adapters/ansible/roles/storage')
-rwxr-xr-x | deploy/adapters/ansible/roles/storage/tasks/main.yml | 66 | ||||
-rwxr-xr-x | deploy/adapters/ansible/roles/storage/tasks/storage.yml | 68 |
2 files changed, 77 insertions, 57 deletions
diff --git a/deploy/adapters/ansible/roles/storage/tasks/main.yml b/deploy/adapters/ansible/roles/storage/tasks/main.yml index 3d9635cc..e04019ae 100755 --- a/deploy/adapters/ansible/roles/storage/tasks/main.yml +++ b/deploy/adapters/ansible/roles/storage/tasks/main.yml @@ -7,69 +7,21 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- -- name: check if physical device exists - stat: path={{ physical_device }} - register: status - tags: - - storage - -- name: load loop.yml - include: loop.yml - when: status.stat.exists == False or status.stat.isblk == False - tags: - - storage - -- name: load real.yml - include: real.yml - when: status.stat.exists == True and status.stat.isblk == True - tags: - - storage - -- name: make setup_storage directory - file: path=/opt/setup_storage state=directory mode=0755 - tags: - - storage - -- name: copy setup storage scripts - copy: src={{ item }} dest=/opt/setup_storage mode=0755 - with_items: - - losetup.sh - tags: - - storage - -- name: set autostart file - copy: src=storage dest=/etc/init.d/storage mode=0755 - tags: - - storage - -- name: set autostart file for centos - copy: - src: storage.service - dest: /usr/lib/systemd/system/storage.service - mode: 0755 - when: ansible_os_family == "RedHat" - tags: - - storage - -- name: add to boot scripts - shell: update-rc.d storage defaults - when: ansible_os_family == "Debian" - tags: - - storage - -- name: add to boot scripts - shell: | - chkconfig --add storage; - chkconfig --level 2345 storage on; - when: ansible_os_family == 'RedHat' +- name: load storage.yml + include: storage.yml + when: + - hostvars[inventory_hostname]['groups']['ceph_mon'] is not defined + - hostvars[inventory_hostname]['groups']['ceph_osd'] is not defined tags: - storage - name: load ceph.yml include: ceph.yml when: - - "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] |length > 0 }}" - - "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_mon'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_osd'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" tags: - storage diff --git a/deploy/adapters/ansible/roles/storage/tasks/storage.yml b/deploy/adapters/ansible/roles/storage/tasks/storage.yml new file mode 100755 index 00000000..b054be9e --- /dev/null +++ b/deploy/adapters/ansible/roles/storage/tasks/storage.yml @@ -0,0 +1,68 @@ +############################################################################## +# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +- name: check if physical device exists + stat: path={{ physical_device }} + register: status + tags: + - storage + +- name: load loop.yml + include: loop.yml + when: status.stat.exists == False or status.stat.isblk == False + tags: + - storage + +- name: load real.yml + include: real.yml + when: status.stat.exists == True and status.stat.isblk == True + tags: + - storage + +- name: make setup_storage directory + file: path=/opt/setup_storage state=directory mode=0755 + tags: + - storage + +- name: copy setup storage scripts + copy: src={{ item }} dest=/opt/setup_storage mode=0755 + with_items: + - losetup.sh + tags: + - storage + +- name: set autostart file + copy: src=storage dest=/etc/init.d/storage mode=0755 + tags: + - storage + +- name: set autostart file for centos + copy: + src: storage.service + dest: /usr/lib/systemd/system/storage.service + mode: 0755 + when: ansible_os_family == "RedHat" + tags: + - storage + +- name: add to boot scripts + shell: update-rc.d storage defaults + when: ansible_os_family == "Debian" + tags: + - storage + +- name: add to boot scripts + shell: | + chkconfig --add storage; + chkconfig --level 2345 storage on; + when: ansible_os_family == 'RedHat' + tags: + - storage + +- meta: flush_handlers |