blob: 28c4d95e009b994cd79dedb5df71244cb85fa444 [file] [log] [blame]
Dean Troyer10670d12012-01-24 11:26:15 -06001#!/usr/bin/env bash
2
3# Test OpenStack client enviroment variable handling
4
Dean Troyer489bd2a2012-03-02 10:44:29 -06005echo "**************************************************"
6echo "Begin DevStack Exercise: $0"
7echo "**************************************************"
8
Dean Troyer10670d12012-01-24 11:26:15 -06009# Verify client workage
10VERIFY=${1:-""}
11
12# Settings
13# ========
14
15# Use openrc + stackrc + localrc for settings
16pushd $(cd $(dirname "$0")/.. && pwd) >/dev/null
Dean Troyer489bd2a2012-03-02 10:44:29 -060017
18# Import common functions
19source ./functions
20
21# Import configuration
Dean Troyer10670d12012-01-24 11:26:15 -060022source ./openrc
23popd >/dev/null
24
25# Unset all of the known NOVA_ vars
26unset NOVA_API_KEY
27unset NOVA_ENDPOINT_NAME
28unset NOVA_PASSWORD
29unset NOVA_PROJECT_ID
30unset NOVA_REGION_NAME
31unset NOVA_URL
32unset NOVA_USERNAME
33unset NOVA_VERSION
34
Dean Troyer10670d12012-01-24 11:26:15 -060035for i in OS_TENANT_NAME OS_USERNAME OS_PASSWORD OS_AUTH_URL; do
36 is_set $i
37 if [[ $? -ne 0 ]]; then
Dean Troyer489bd2a2012-03-02 10:44:29 -060038 echo "$i expected to be set"
Dean Troyer10670d12012-01-24 11:26:15 -060039 ABORT=1
40 fi
41done
42if [[ -n "$ABORT" ]]; then
43 exit 1
44fi
45
46# Set global return
47RETURN=0
48
49# Keystone client
50# ---------------
51if [[ "$ENABLED_SERVICES" =~ "key" ]]; then
52 if [[ "$SKIP_EXERCISES" =~ "key" ]] ; then
53 STATUS_KEYSTONE="Skipped"
54 else
Dean Troyer10670d12012-01-24 11:26:15 -060055 echo -e "\nTest Keystone"
56 if keystone service-list; then
57 STATUS_KEYSTONE="Succeeded"
58 else
59 STATUS_KEYSTONE="Failed"
60 RETURN=1
61 fi
Dean Troyer10670d12012-01-24 11:26:15 -060062 fi
63fi
64
65# Nova client
66# -----------
67
68if [[ "$ENABLED_SERVICES" =~ "n-api" ]]; then
69 if [[ "$SKIP_EXERCISES" =~ "n-api" ]] ; then
70 STATUS_NOVA="Skipped"
71 else
Dean Troyer10670d12012-01-24 11:26:15 -060072 echo -e "\nTest Nova"
73 if nova flavor-list; then
74 STATUS_NOVA="Succeeded"
75 else
76 STATUS_NOVA="Failed"
77 RETURN=1
78 fi
79 fi
80fi
81
82# Glance client
83# -------------
84
85if [[ "$ENABLED_SERVICES" =~ "g-api" ]]; then
86 if [[ "$SKIP_EXERCISES" =~ "g-api" ]] ; then
87 STATUS_GLANCE="Skipped"
88 else
Dean Troyer10670d12012-01-24 11:26:15 -060089 echo -e "\nTest Glance"
90 if glance index; then
91 STATUS_GLANCE="Succeeded"
92 else
93 STATUS_GLANCE="Failed"
94 RETURN=1
95 fi
96 fi
97fi
98
99# Swift client
100# ------------
101
102if [[ "$ENABLED_SERVICES" =~ "swift" ]]; then
103 if [[ "$SKIP_EXERCISES" =~ "swift" ]] ; then
104 STATUS_SWIFT="Skipped"
105 else
106 echo -e "\nTest Swift"
Dean Troyer80756ea2012-02-01 18:01:01 -0600107 if swift stat; then
Dean Troyer10670d12012-01-24 11:26:15 -0600108 STATUS_SWIFT="Succeeded"
109 else
110 STATUS_SWIFT="Failed"
111 RETURN=1
112 fi
113 fi
114fi
115
116# Results
117# -------
118
119function report() {
120 if [[ -n "$2" ]]; then
121 echo "$1: $2"
122 fi
123}
124
125echo -e "\n"
126report "Keystone" $STATUS_KEYSTONE
127report "Nova" $STATUS_NOVA
128report "Glance" $STATUS_GLANCE
129report "Swift" $STATUS_SWIFT
130
Dean Troyer489bd2a2012-03-02 10:44:29 -0600131echo "**************************************************"
132echo "End DevStack Exercise: $0"
133echo "**************************************************"
134
Dean Troyer10670d12012-01-24 11:26:15 -0600135exit $RETURN