--- # Copyright 2019, Rackspace US, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: Prepare manila_shares share group hosts: localhost # This set of tasks runs against localhost # and requires root access, but tests run as # the user running the playbook (zuul). As # such, we use a local connection and become. connection: local become: yes tasks: - name: Install lvm2 package package: name: lvm2 - name: Create sparse Manila file command: "truncate -s {{ manila_sparse_file_size | default('10G') }} /openstack/{{ manila_sparse_file_name | default('manila') }}.img" args: creates: /openstack/manila.img register: manila_create - name: Get a loopback device for manila file command: losetup -f when: manila_create is changed register: manila_losetup - name: Create the loopback device command: "losetup {{ manila_losetup.stdout }} /openstack/manila.img" when: manila_create is changed - name: Make LVM physical share on the manila device command: "{{ item }}" when: manila_create is changed with_items: - "pvcreate {{ manila_losetup.stdout }}" - "pvscan" - name: Add manila_shares share group lvg: vg: "{{ manila_lvm_vg_name | default('manila-shares') }}" pvs: "{{ manila_losetup.stdout }}" when: manila_create is changed