instack-undercloud/scripts/instack-prepare-for-overcloud

92 lines
3.7 KiB
Bash
Executable File

#!/bin/bash
set -eux
IMAGE_PATH=${IMAGE_PATH:-"."}
export DEPLOY_NAME=${DEPLOY_NAME:-deploy-ramdisk-ironic}
export DISCOVERY_NAME=${DISCOVERY_NAME:-discovery-ramdisk}
command $(sudo cat /root/stackrc | xargs)
OS_AUTH_URL=${OS_AUTH_URL:-""}
if [ -z "$OS_AUTH_URL" ]; then
echo "You must source a stackrc file for the Undercloud."
exit 1
fi
function check_image {
local image_name=$IMAGE_PATH/$1
if [ ! -f $image_name ]; then
echo "$image_name does not exist."
exit 1
fi
}
function load_image {
local image_name=$IMAGE_PATH/$1
tripleo load-image -d $image_name
}
check_image $DEPLOY_NAME.initramfs
check_image $DEPLOY_NAME.kernel
check_image $DISCOVERY_NAME.initramfs
check_image $DISCOVERY_NAME.kernel
check_image overcloud-control.qcow2
check_image overcloud-compute.qcow2
check_image overcloud-cinder-volume.qcow2
check_image overcloud-swift-storage.qcow2
load_image overcloud-control.qcow2
load_image overcloud-compute.qcow2
load_image overcloud-cinder-volume.qcow2
load_image overcloud-swift-storage.qcow2
glance image-delete bm-deploy-kernel 2>/dev/null || :
glance image-create --name bm-deploy-kernel --public \
--disk-format aki < $IMAGE_PATH/$DEPLOY_NAME.kernel
glance image-delete bm-deploy-ramdisk 2>/dev/null || :
glance image-create --name bm-deploy-ramdisk --public \
--disk-format ari < $IMAGE_PATH/$DEPLOY_NAME.initramfs
glance image-delete discovery-kernel 2>/dev/null || :
glance image-create --name discovery-kernel --public \
--disk-format aki < $IMAGE_PATH/$DISCOVERY_NAME.kernel
glance image-delete discovery-ramdisk 2>/dev/null || :
glance image-create --name discovery-ramdisk --public \
--disk-format ari < $IMAGE_PATH/$DISCOVERY_NAME.initramfs
glance image-update --property type='discovery ramdisk' discovery-ramdisk
glance image-update --property type='discovery kernel' discovery-kernel
glance image-update --property type='deploy ramdisk' bm-deploy-ramdisk
glance image-update --property type='deploy kernel' bm-deploy-kernel
glance image-update --property type='overcloud provisioning' overcloud-control
glance image-update --property type='overcloud provisioning ramdisk' overcloud-control-initrd
glance image-update --property type='overcloud provisioning kernel' overcloud-control-vmlinuz
glance image-update --property type='overcloud provisioning' overcloud-compute
glance image-update --property type='overcloud provisioning ramdisk' overcloud-compute-initrd
glance image-update --property type='overcloud provisioning kernel' overcloud-compute-vmlinuz
glance image-update --property type='overcloud provisioning' overcloud-cinder-volume
glance image-update --property type='overcloud provisioning ramdisk' overcloud-cinder-volume-initrd
glance image-update --property type='overcloud provisioning kernel' overcloud-cinder-volume-vmlinuz
glance image-update --property type='overcloud provisioning' overcloud-swift-storage
glance image-update --property type='overcloud provisioning ramdisk' overcloud-swift-storage-initrd
glance image-update --property type='overcloud provisioning kernel' overcloud-swift-storage-vmlinuz
DEPLOYMENT_MODE=$(sudo os-apply-config --key deployment-mode --key-default 'poc')
if [ "$DEPLOYMENT_MODE" = "poc" ]; then
if ! nova flavor-show baremetal 2>&1 1>/dev/null; then
nova flavor-create baremetal auto 4096 30 1
deploy_kernel_id=$(glance image-show bm-deploy-kernel | awk ' / id / {print $4}')
deploy_ramdisk_id=$(glance image-show bm-deploy-ramdisk | awk ' / id / {print $4}')
nova flavor-key baremetal set \
"cpu_arch"="x86_64" \
"baremetal:deploy_kernel_id"="$deploy_kernel_id" \
"baremetal:deploy_ramdisk_id"="$deploy_ramdisk_id"
fi
fi