add an image_list tool

this is an interface from devstack to provide a more robust
listing of the possible image urls that we might ask for during
a devstack run. This allows tools like nodepool, or 3rd party CI
systems to precache all this content in advance.

Change-Id: I7474f553ecf28e51a2340bef5bcefa962dbadc24
This commit is contained in:
Sean Dague 2014-04-03 14:48:48 -04:00
parent 46d3ce7d4d
commit 0936e67f54

35
tools/image_list.sh Executable file
View File

@ -0,0 +1,35 @@
#!/bin/bash
# Keep track of the devstack directory
TOP_DIR=$(cd $(dirname "$0")/.. && pwd)
source $TOP_DIR/functions
# Possible virt drivers, if we have more, add them here. Always keep
# dummy in the end position to trigger the fall through case.
DRIVERS="openvz ironic libvirt vsphere xenserver dummy"
# Extra variables to trigger getting additional images.
ENABLED_SERVICES=h-api
HEAT_FETCHED_TEST_IMAGE="Fedora-i386-20-20131211.1-sda"
# Loop over all the virt drivers and collect all the possible images
ALL_IMAGES=""
for driver in $DRIVERS; do
VIRT_DRIVER=$driver
URLS=$(source $TOP_DIR/stackrc && echo $IMAGE_URLS)
if [[ ! -z "$ALL_IMAGES" ]]; then
ALL_IMAGES+=,
fi
ALL_IMAGES+=$URLS
done
# Make a nice list
echo $ALL_IMAGES | tr ',' '\n' | sort | uniq
# Sanity check - ensure we have a minimum number of images
num=$(echo $ALL_IMAGES | tr ',' '\n' | sort | uniq | wc -l)
if [[ "$num" -lt 5 ]]; then
echo "ERROR: We only found $num images in $ALL_IMAGES, which can't be right."
exit 1
fi