#!/bin/bash if [[ -f $TOP_DIR/../../old/devstack/.localrc.auto ]]; then source <(cat $TOP_DIR/../../old/devstack/.localrc.auto | grep -v 'enable_plugin') fi # Whether configure the nodes to boot in Legacy BIOS or UEFI mode. Accepted # values are: "bios" or "uefi", defaults to "uefi". IRONIC_BOOT_MODE=${IRONIC_BOOT_MODE:-uefi} IRONIC_HW_ARCH=${IRONIC_HW_ARCH:-x86_64} CIRROS_VERSION_DEVSTACK=$(set +o xtrace && source $TOP_DIR/stackrc && echo $CIRROS_VERSION) CIRROS_VERSION=${CIRROS_VERSION:-$CIRROS_VERSION_DEVSTACK} IRONIC_DEFAULT_IMAGE_NAME=cirros-${CIRROS_VERSION}-${IRONIC_HW_ARCH}-uec IRONIC_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-$IRONIC_DEFAULT_IMAGE_NAME} # Add link to download queue, ignore if already exist. # TODO(vsaienko) Move to devstack https://review.opendev.org/420656 function add_image_link { local i_link="$1" if ! [[ "$IMAGE_URLS" =~ "$i_link" ]]; then if [[ -z "$IMAGE_URLS" || "${IMAGE_URLS: -1}" == "," ]]; then IMAGE_URLS+="$i_link" else IMAGE_URLS+=",$i_link" fi fi } # NOTE (vsaienko) We are going to test mixed drivers/partitions in single setup. # Do not restrict downloading image only for specific case. Download both disk and uec images. # NOTE (vdrok): Here the images are actually pre-cached by devstack, in # the files folder, so they won't be downloaded again. add_image_link http://download.cirros-cloud.net/${CIRROS_VERSION}/cirros-${CIRROS_VERSION}-${IRONIC_HW_ARCH}-uec.tar.gz add_image_link http://download.cirros-cloud.net/${CIRROS_VERSION}/cirros-${CIRROS_VERSION}-${IRONIC_HW_ARCH}-disk.img export IRONIC_WHOLEDISK_IMAGE_NAME=${IRONIC_WHOLEDISK_IMAGE_NAME:-${IRONIC_IMAGE_NAME/-uec/-disk}} export IRONIC_PARTITIONED_IMAGE_NAME=${IRONIC_PARTITIONED_IMAGE_NAME:-${IRONIC_IMAGE_NAME/-disk/-uec}} # These parameters describe which image will be used to provision a node in # tempest tests if [[ -z "$IRONIC_TEMPEST_WHOLE_DISK_IMAGE" && "$IRONIC_VM_EPHEMERAL_DISK" == 0 ]]; then IRONIC_TEMPEST_WHOLE_DISK_IMAGE=True fi IRONIC_TEMPEST_WHOLE_DISK_IMAGE=$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE) if [[ "$IRONIC_TEMPEST_WHOLE_DISK_IMAGE" == "True" ]]; then export IRONIC_IMAGE_NAME=$IRONIC_WHOLEDISK_IMAGE_NAME else export IRONIC_IMAGE_NAME=$IRONIC_PARTITIONED_IMAGE_NAME fi # NOTE(vsaienko) set DEFAULT_IMAGE_NAME here, as it is still used by grenade # https://github.com/openstack-dev/grenade/blob/90c4ead2f2a7ed48c873c51cef415b83d655752e/projects/60_nova/resources.sh#L31 export DEFAULT_IMAGE_NAME=$IRONIC_IMAGE_NAME