ironic/devstack/common_settings
Riccardo Pittau df368cbd8a Read default cirros version from stackrc
Workaround for grenade jobs to read CIRROS_VERSION variable from
stackrc.
We also give the possibility to specify a custom CIRROS_VERSION

In addition, fix transient iDRAC WS-Man BIOS test.

Depends-On: https://review.opendev.org/c/openstack/ironic/+/786387

Change-Id: Ic7f5dae5e6aa6916f0a7d73f43cc9552349385c5
2021-04-19 13:47:10 -04:00

61 lines
2.5 KiB
Bash

#!/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 "bios".
IRONIC_BOOT_MODE=${IRONIC_BOOT_MODE:-bios}
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}-x86_64-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}-x86_64-uec.tar.gz
add_image_link http://download.cirros-cloud.net/${CIRROS_VERSION}/cirros-${CIRROS_VERSION}-x86_64-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