01acdabb1d
Stops propagation of initially erroneous construct. Change-Id: I2197de57cbac98e87fb39fa0dca4c691fe5e856f
70 lines
2.0 KiB
Bash
Executable File
70 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# **swift.sh**
|
|
|
|
# Test swift via the ``python-openstackclient`` command line
|
|
|
|
echo "*********************************************************************"
|
|
echo "Begin DevStack Exercise: $0"
|
|
echo "*********************************************************************"
|
|
|
|
# This script exits on an error so that errors don't compound and you see
|
|
# only the first error that occurred.
|
|
set -o errexit
|
|
|
|
# Print the commands being run so that we can see the command that triggers
|
|
# an error. It is also useful for following as the install occurs.
|
|
set -o xtrace
|
|
|
|
|
|
# Settings
|
|
# ========
|
|
|
|
# Keep track of the current directory
|
|
EXERCISE_DIR=$(cd $(dirname "$0") && pwd)
|
|
TOP_DIR=$(cd $EXERCISE_DIR/..; pwd)
|
|
|
|
# Import common functions
|
|
source $TOP_DIR/functions
|
|
|
|
# Import configuration
|
|
source $TOP_DIR/openrc
|
|
|
|
# Import exercise configuration
|
|
source $TOP_DIR/exerciserc
|
|
|
|
# If swift is not enabled we exit with exitcode 55 which mean
|
|
# exercise is skipped.
|
|
is_service_enabled s-proxy || exit 55
|
|
|
|
# Container name
|
|
CONTAINER=ex-swift
|
|
OBJECT=/etc/issue
|
|
|
|
|
|
# Testing Swift
|
|
# =============
|
|
|
|
# Check if we have to swift via keystone
|
|
openstack object store account show || die $LINENO "Failure getting account status"
|
|
|
|
# We start by creating a test container
|
|
openstack container create $CONTAINER || die $LINENO "Failure creating container $CONTAINER"
|
|
|
|
# add a file into it.
|
|
openstack object create $CONTAINER $OBJECT || die $LINENO "Failure uploading file to container $CONTAINER"
|
|
|
|
# list the objects
|
|
openstack object list $CONTAINER || die $LINENO "Failure listing contents of container $CONTAINER"
|
|
|
|
# delete the object first
|
|
openstack object delete $CONTAINER $OBJECT || die $LINENO "Failure deleting object $OBJECT in container $CONTAINER"
|
|
|
|
# delete the container
|
|
openstack container delete $CONTAINER || die $LINENO "Failure deleting container $CONTAINER"
|
|
|
|
set +o xtrace
|
|
echo "*********************************************************************"
|
|
echo "SUCCESS: End DevStack Exercise: $0"
|
|
echo "*********************************************************************"
|