blob: fff04df9f2091aeaa1e9a648ed085b669a4de035 [file] [log] [blame]
Dean Troyer10670d12012-01-24 11:26:15 -06001#!/usr/bin/env bash
2
Dean Troyer83480532012-09-12 14:45:48 -05003# **client-env.sh**
Dean Troyerad101762012-06-27 22:04:40 -05004
Joe Gordon46400262013-06-30 04:32:27 -07005# Test OpenStack client environment variable handling
Dean Troyer10670d12012-01-24 11:26:15 -06006
Dean Troyer27e32692012-03-16 16:16:56 -05007echo "*********************************************************************"
Dean Troyer489bd2a2012-03-02 10:44:29 -06008echo "Begin DevStack Exercise: $0"
Dean Troyer27e32692012-03-16 16:16:56 -05009echo "*********************************************************************"
Dean Troyer489bd2a2012-03-02 10:44:29 -060010
Dean Troyerda85cda2013-02-15 11:07:14 -060011# This script exits on an error so that errors don't compound and you see
Joe Gordon46400262013-06-30 04:32:27 -070012# only the first error that occurred.
Dean Troyerda85cda2013-02-15 11:07:14 -060013set -o errexit
14
15# Print the commands being run so that we can see the command that triggers
igor01acdab2016-07-29 13:11:53 +020016# an error. It is also useful for following as the install occurs.
Dean Troyerda85cda2013-02-15 11:07:14 -060017set -o xtrace
18
Dean Troyer10670d12012-01-24 11:26:15 -060019
20# Settings
21# ========
22
Dean Troyer0bd24102012-03-08 00:33:54 -060023# Keep track of the current directory
24EXERCISE_DIR=$(cd $(dirname "$0") && pwd)
25TOP_DIR=$(cd $EXERCISE_DIR/..; pwd)
Dean Troyer489bd2a2012-03-02 10:44:29 -060026
27# Import common functions
Dean Troyer0bd24102012-03-08 00:33:54 -060028source $TOP_DIR/functions
Dean Troyer489bd2a2012-03-02 10:44:29 -060029
30# Import configuration
Bob Ball89012452014-05-08 13:35:28 +010031source $TOP_DIR/openrc admin
Dean Troyer10670d12012-01-24 11:26:15 -060032
Dean Troyer51fb4542012-03-09 22:21:59 -060033# Import exercise configuration
34source $TOP_DIR/exerciserc
35
Dean Troyerc5dfecd2012-09-08 14:20:43 -050036# Unset all of the known NOVA_* vars
Dean Troyer10670d12012-01-24 11:26:15 -060037unset NOVA_API_KEY
38unset NOVA_ENDPOINT_NAME
39unset NOVA_PASSWORD
40unset NOVA_PROJECT_ID
41unset NOVA_REGION_NAME
42unset NOVA_URL
43unset NOVA_USERNAME
Dean Troyer10670d12012-01-24 11:26:15 -060044
Dean Troyer10670d12012-01-24 11:26:15 -060045for i in OS_TENANT_NAME OS_USERNAME OS_PASSWORD OS_AUTH_URL; do
46 is_set $i
47 if [[ $? -ne 0 ]]; then
Dean Troyer489bd2a2012-03-02 10:44:29 -060048 echo "$i expected to be set"
Dean Troyer10670d12012-01-24 11:26:15 -060049 ABORT=1
50 fi
51done
52if [[ -n "$ABORT" ]]; then
53 exit 1
54fi
55
56# Set global return
57RETURN=0
58
59# Keystone client
60# ---------------
61if [[ "$ENABLED_SERVICES" =~ "key" ]]; then
Dean Troyercc6b4432013-04-08 15:38:03 -050062 if [[ "$SKIP_EXERCISES" =~ "key" ]]; then
Dean Troyer10670d12012-01-24 11:26:15 -060063 STATUS_KEYSTONE="Skipped"
64 else
Dean Troyer10670d12012-01-24 11:26:15 -060065 echo -e "\nTest Keystone"
Steve Martinelli2f6c30b2014-03-13 23:32:46 -050066 if openstack endpoint show identity; then
Dean Troyer10670d12012-01-24 11:26:15 -060067 STATUS_KEYSTONE="Succeeded"
68 else
69 STATUS_KEYSTONE="Failed"
70 RETURN=1
71 fi
Dean Troyer10670d12012-01-24 11:26:15 -060072 fi
73fi
74
75# Nova client
76# -----------
77
78if [[ "$ENABLED_SERVICES" =~ "n-api" ]]; then
Dean Troyercc6b4432013-04-08 15:38:03 -050079 if [[ "$SKIP_EXERCISES" =~ "n-api" ]]; then
Dean Troyer10670d12012-01-24 11:26:15 -060080 STATUS_NOVA="Skipped"
81 else
Dean Troyer0bd24102012-03-08 00:33:54 -060082 # Test OSAPI
Dean Troyer10670d12012-01-24 11:26:15 -060083 echo -e "\nTest Nova"
84 if nova flavor-list; then
85 STATUS_NOVA="Succeeded"
86 else
87 STATUS_NOVA="Failed"
88 RETURN=1
89 fi
Dean Troyer0bd24102012-03-08 00:33:54 -060090
Dean Troyer10670d12012-01-24 11:26:15 -060091 fi
92fi
93
Dean Troyerda85cda2013-02-15 11:07:14 -060094# Cinder client
95# -------------
96
97if [[ "$ENABLED_SERVICES" =~ "c-api" ]]; then
Dean Troyercc6b4432013-04-08 15:38:03 -050098 if [[ "$SKIP_EXERCISES" =~ "c-api" ]]; then
Dean Troyerda85cda2013-02-15 11:07:14 -060099 STATUS_CINDER="Skipped"
100 else
101 echo -e "\nTest Cinder"
102 if cinder list; then
103 STATUS_CINDER="Succeeded"
104 else
105 STATUS_CINDER="Failed"
106 RETURN=1
107 fi
108 fi
109fi
110
Dean Troyer10670d12012-01-24 11:26:15 -0600111# Glance client
112# -------------
113
114if [[ "$ENABLED_SERVICES" =~ "g-api" ]]; then
Dean Troyercc6b4432013-04-08 15:38:03 -0500115 if [[ "$SKIP_EXERCISES" =~ "g-api" ]]; then
Dean Troyer10670d12012-01-24 11:26:15 -0600116 STATUS_GLANCE="Skipped"
117 else
Dean Troyer10670d12012-01-24 11:26:15 -0600118 echo -e "\nTest Glance"
Steve Martinelli5c206c22014-08-02 20:32:31 -0400119 if openstack image list; then
Dean Troyer10670d12012-01-24 11:26:15 -0600120 STATUS_GLANCE="Succeeded"
121 else
122 STATUS_GLANCE="Failed"
123 RETURN=1
124 fi
125 fi
126fi
127
128# Swift client
129# ------------
130
Chmouel Boudjnah0c3a5582013-03-06 10:58:33 +0100131
132if [[ "$ENABLED_SERVICES" =~ "swift" || "$ENABLED_SERVICES" =~ "s-proxy" ]]; then
Dean Troyercc6b4432013-04-08 15:38:03 -0500133 if [[ "$SKIP_EXERCISES" =~ "swift" ]]; then
Dean Troyer10670d12012-01-24 11:26:15 -0600134 STATUS_SWIFT="Skipped"
135 else
136 echo -e "\nTest Swift"
Dean Troyer80756ea2012-02-01 18:01:01 -0600137 if swift stat; then
Dean Troyer10670d12012-01-24 11:26:15 -0600138 STATUS_SWIFT="Succeeded"
139 else
140 STATUS_SWIFT="Failed"
141 RETURN=1
142 fi
143 fi
144fi
145
Dean Troyerda85cda2013-02-15 11:07:14 -0600146set +o xtrace
147
Dean Troyercc6b4432013-04-08 15:38:03 -0500148
Dean Troyer10670d12012-01-24 11:26:15 -0600149# Results
Dean Troyercc6b4432013-04-08 15:38:03 -0500150# =======
Dean Troyer10670d12012-01-24 11:26:15 -0600151
Ian Wienandaee18c72014-02-21 15:35:08 +1100152function report {
Dean Troyer10670d12012-01-24 11:26:15 -0600153 if [[ -n "$2" ]]; then
154 echo "$1: $2"
155 fi
156}
157
158echo -e "\n"
159report "Keystone" $STATUS_KEYSTONE
160report "Nova" $STATUS_NOVA
Dean Troyerda85cda2013-02-15 11:07:14 -0600161report "Cinder" $STATUS_CINDER
Dean Troyer10670d12012-01-24 11:26:15 -0600162report "Glance" $STATUS_GLANCE
163report "Swift" $STATUS_SWIFT
164
Dean Troyer83480532012-09-12 14:45:48 -0500165if (( $RETURN == 0 )); then
166 echo "*********************************************************************"
167 echo "SUCCESS: End DevStack Exercise: $0"
168 echo "*********************************************************************"
169fi
Dean Troyer489bd2a2012-03-02 10:44:29 -0600170
Dean Troyer10670d12012-01-24 11:26:15 -0600171exit $RETURN