Browse code

Clean up security groups in exercises

* fix problem with deleting security groups too early in
floating_ips.sh and euca.sh
* create and clean up security groups
* cosmetic cleanups

Change-Id: Ie45e03f889c540ec83f27a02b10e787060c5d4d7

Dean Troyer authored on 2012/08/18 04:11:55
Showing 4 changed files
... ...
@@ -49,6 +49,10 @@ DEFAULT_FLOATING_POOL=${DEFAULT_FLOATING_POOL:-nova}
49 49
 # Default user
50 50
 DEFAULT_INSTANCE_USER=${DEFAULT_INSTANCE_USER:-cirros}
51 51
 
52
+# Security group name
53
+SECGROUP=${SECGROUP:-boot_secgroup}
54
+
55
+
52 56
 # Launching servers
53 57
 # =================
54 58
 
... ...
@@ -72,7 +76,6 @@ if ! timeout $ACTIVE_TIMEOUT sh -c "while nova show $INSTANCE_NAME; do sleep 1;
72 72
 fi
73 73
 
74 74
 # Configure Security Groups
75
-SECGROUP=${SECGROUP:-test_secgroup}
76 75
 nova secgroup-delete $SECGROUP || true
77 76
 nova secgroup-create $SECGROUP "$SECGROUP description"
78 77
 nova secgroup-add-rule $SECGROUP icmp -1 -1 0.0.0.0/0
... ...
@@ -246,8 +249,8 @@ nova delete $INSTANCE_NAME || \
246 246
     die "Failure deleting instance $INSTANCE_NAME"
247 247
 
248 248
 # Wait for termination
249
-if ! timeout $ACTIVE_TIMEOUT sh -c "while nova show $INSTANCE_NAME; do sleep 1; done"; then
250
-    echo "server didn't terminate!"
249
+if ! timeout $TERMINATE_TIMEOUT sh -c "while nova list | grep -q $VM_UUID; do sleep 1; done"; then
250
+    echo "Server $NAME not deleted"
251 251
     exit 1
252 252
 fi
253 253
 
... ...
@@ -256,8 +259,7 @@ nova floating-ip-delete $FLOATING_IP || \
256 256
     die "Failure deleting floating IP $FLOATING_IP"
257 257
 
258 258
 # Delete a secgroup
259
-nova secgroup-delete $SECGROUP || \
260
-    die "Failure deleting security group $SECGROUP"
259
+nova secgroup-delete $SECGROUP || die "Failure deleting security group $SECGROUP"
261 260
 
262 261
 set +o xtrace
263 262
 echo "*********************************************************************"
... ...
@@ -43,6 +43,9 @@ DEFAULT_INSTANCE_TYPE=${DEFAULT_INSTANCE_TYPE:-m1.tiny}
43 43
 # Boot this image, use first AMI-format image if unset
44 44
 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ami}
45 45
 
46
+# Security group name
47
+SECGROUP=${SECGROUP:-euca_secgroup}
48
+
46 49
 
47 50
 # Launching a server
48 51
 # ==================
... ...
@@ -50,9 +53,6 @@ DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ami}
50 50
 # Find a machine image to boot
51 51
 IMAGE=`euca-describe-images | grep machine | grep ${DEFAULT_IMAGE_NAME} | cut -f2 | head -n1`
52 52
 
53
-# Define secgroup
54
-SECGROUP=euca_secgroup
55
-
56 53
 # Add a secgroup
57 54
 if ! euca-describe-groups | grep -q $SECGROUP; then
58 55
     euca-add-group -d "$SECGROUP description" $SECGROUP
... ...
@@ -119,14 +119,13 @@ euca-terminate-instances $INSTANCE || \
119 119
     die "Failure terminating instance $INSTANCE"
120 120
 
121 121
 # Assure it has terminated within a reasonable time
122
-if ! timeout $TERMINATE_TIMEOUT sh -c "while euca-describe-instances $INSTANCE | grep -q running; do sleep 1; done"; then
122
+if ! timeout $TERMINATE_TIMEOUT sh -c "while euca-describe-instances $INSTANCE | grep -q $INSTANCE; do sleep 1; done"; then
123 123
     echo "server didn't terminate within $TERMINATE_TIMEOUT seconds"
124 124
     exit 1
125 125
 fi
126 126
 
127 127
 # Delete group
128
-euca-delete-group $SECGROUP || \
129
-    die "Failure deleting security group $SECGROUP"
128
+euca-delete-group $SECGROUP || die "Failure deleting security group $SECGROUP"
130 129
 
131 130
 set +o xtrace
132 131
 echo "*********************************************************************"
... ...
@@ -200,12 +200,12 @@ nova floating-ip-delete $FLOATING_IP || die "Failure deleting floating IP $FLOAT
200 200
 # Delete second floating IP
201 201
 nova floating-ip-delete $TEST_FLOATING_IP || die "Failure deleting floating IP $TEST_FLOATING_IP"
202 202
 
203
-# shutdown the server
203
+# Shutdown the server
204 204
 nova delete $VM_UUID || die "Failure deleting instance $NAME"
205 205
 
206
-# make sure the VM shuts down within a reasonable time
207
-if ! timeout $TERMINATE_TIMEOUT sh -c "while nova show $VM_UUID | grep status | grep -q ACTIVE; do sleep 1; done"; then
208
-    echo "server didn't shut down!"
206
+# Wait for termination
207
+if ! timeout $TERMINATE_TIMEOUT sh -c "while nova list | grep -q $VM_UUID; do sleep 1; done"; then
208
+    echo "Server $NAME not deleted"
209 209
     exit 1
210 210
 fi
211 211
 
... ...
@@ -43,6 +43,9 @@ DEFAULT_INSTANCE_TYPE=${DEFAULT_INSTANCE_TYPE:-m1.tiny}
43 43
 # Boot this image, use first AMi image if unset
44 44
 DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ami}
45 45
 
46
+# Security group name
47
+SECGROUP=${SECGROUP:-vol_secgroup}
48
+
46 49
 
47 50
 # Launching a server
48 51
 # ==================
... ...
@@ -62,6 +65,25 @@ glance image-list
62 62
 # Grab the id of the image to launch
63 63
 IMAGE=$(glance image-list | egrep " $DEFAULT_IMAGE_NAME " | get_field 1)
64 64
 
65
+# Security Groups
66
+# ---------------
67
+
68
+# List of secgroups:
69
+nova secgroup-list
70
+
71
+# Create a secgroup
72
+if ! nova secgroup-list | grep -q $SECGROUP; then
73
+    nova secgroup-create $SECGROUP "$SECGROUP description"
74
+    if ! timeout $ASSOCIATE_TIMEOUT sh -c "while ! nova secgroup-list | grep -q $SECGROUP; do sleep 1; done"; then
75
+        echo "Security group not created"
76
+        exit 1
77
+    fi
78
+fi
79
+
80
+# Configure Security Group Rules
81
+nova secgroup-add-rule $SECGROUP icmp -1 -1 0.0.0.0/0
82
+nova secgroup-add-rule $SECGROUP tcp 22 22 0.0.0.0/0
83
+
65 84
 # determinine instance type
66 85
 # -------------------------
67 86
 
... ...
@@ -171,8 +193,17 @@ if ! timeout $ACTIVE_TIMEOUT sh -c "while ! nova volume-list | grep $VOL_NAME; d
171 171
     exit 1
172 172
 fi
173 173
 
174
-# shutdown the server
175
-nova delete $NAME || die "Failure deleting instance $NAME"
174
+# Shutdown the server
175
+nova delete $VM_UUID || die "Failure deleting instance $NAME"
176
+
177
+# Wait for termination
178
+if ! timeout $TERMINATE_TIMEOUT sh -c "while nova list | grep -q $VM_UUID; do sleep 1; done"; then
179
+    echo "Server $NAME not deleted"
180
+    exit 1
181
+fi
182
+
183
+# Delete a secgroup
184
+nova secgroup-delete $SECGROUP || die "Failure deleting security group $SECGROUP"
176 185
 
177 186
 set +o xtrace
178 187
 echo "*********************************************************************"