nova/playbooks/ceph/glance-setup.yaml
Dan Smith 010983e803 Test ceph-multistore with a real image
This inflates the cirros image to 1G for a more realistic scenario.
Technically we should have been doing something like this all along,
as the deployment guidance for ceph is to use a raw image, not a qcow2
one, so this also increases our accuracy to real-life.

We also need to up the volume size tempest uses for various tests
to make sure we will fit.

Change-Id: I5c447e630aaf1413a5eac89c2e8103506d245221
2022-11-09 11:34:02 -08:00

40 lines
1.5 KiB
YAML

- hosts: controller
tasks:
- name: create local.sh
become: yes
blockinfile:
path: /opt/stack/devstack/local.sh
create: True
mode: 0777
block: |
# Delete all existing images
source /opt/stack/devstack/openrc admin
for img in $(openstack image list -f value -c ID); do
openstack image show $img
echo Deleting $img
openstack image delete $img
done
# Inflate our cirros image to 1G raw
arch=$(uname -m)
image=$(ls /opt/stack/devstack/files/cirros*${arch}-disk.img | tail -n1)
rawimage="/opt/stack/devstack/files/cirros-raw.img"
qemu-img convert -O raw "$image" "$rawimage"
truncate --size $((950 << 20)) "$rawimage"
# Upload it to glance as the sole image available so tempest
# config will find it. Wait ten seconds after doing this
# before the restart below.
openstack image create --container-format bare --disk-format raw --public "cirros-raw" < "$rawimage"
sleep 10
openstack image list
openstack image show cirros-raw
# This policy is default to admin only in glance. Override
# here to allow everyone and every type of image (private
# or public) to copy. This way we will be able to test copy
# image via non-admin as well as on private images.
echo $'"copy_image": ""' >> /etc/glance/policy.yaml
sudo systemctl restart 'devstack@g-*'