##############################################################################
# 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