Browse code

Merge "Disable Cinder v1 API support by default"

Jenkins authored on 2015/09/29 06:06:03
Showing 3 changed files
... ...
@@ -588,6 +588,13 @@ with ``VOLUME_BACKING_FILE_SIZE``.
588 588
         VOLUME_BACKING_FILE_SIZE=10250M
589 589
 
590 590
 
591
+Cinder v1 API is depricated and disabled by default. You can enable v1 API by
592
+setting ``CINDER_ENABLE_V1_API`` to ``True``.
593
+
594
+    ::
595
+        CINDER_ENABLE_V1_API=True
596
+
597
+
591 598
 Keystone
592 599
 ~~~~~~~~
593 600
 
... ...
@@ -27,6 +27,9 @@ set +o xtrace
27 27
 # Defaults
28 28
 # --------
29 29
 
30
+# NOTE (e0ne): Cinder API v1 is deprecated and will be disabled by default.
31
+CINDER_ENABLE_V1_API=$(trueorfalse False CINDER_ENABLE_V1_API)
32
+
30 33
 # set up default driver
31 34
 CINDER_DRIVER=${CINDER_DRIVER:-default}
32 35
 CINDER_PLUGINS=$TOP_DIR/lib/cinder_plugins
... ...
@@ -225,9 +228,12 @@ function configure_cinder {
225 225
     iniset $CINDER_CONF oslo_concurrency lock_path $CINDER_STATE_PATH
226 226
     iniset $CINDER_CONF DEFAULT periodic_interval $CINDER_PERIODIC_INTERVAL
227 227
     # NOTE(thingee): Cinder V1 API is deprecated and defaults to off as of
228
-    # Juno. Keep it enabled so we can continue testing while it's still
229
-    # supported.
230
-    iniset $CINDER_CONF DEFAULT enable_v1_api true
228
+    # Juno.
229
+    if [[ ${CINDER_ENABLE_V1_API} = True ]]; then
230
+        iniset $CINDER_CONF DEFAULT enable_v1_api true
231
+    else
232
+        iniset $CINDER_CONF DEFAULT enable_v1_api false
233
+    fi
231 234
 
232 235
     iniset $CINDER_CONF DEFAULT os_region_name "$REGION_NAME"
233 236
 
... ...
@@ -326,12 +332,13 @@ function create_cinder_accounts {
326 326
 
327 327
         if [[ "$KEYSTONE_CATALOG_BACKEND" = 'sql' ]]; then
328 328
 
329
-            get_or_create_service "cinder" "volume" "Cinder Volume Service"
330
-            get_or_create_endpoint "volume" "$REGION_NAME" \
331
-                "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s" \
332
-                "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s" \
333
-                "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s"
334
-
329
+            if [[ ${CINDER_ENABLE_V1_API} = True ]]; then
330
+                get_or_create_service "cinder" "volume" "Cinder Volume Service"
331
+                get_or_create_endpoint "volume" "$REGION_NAME" \
332
+                    "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s" \
333
+                    "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s" \
334
+                    "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(tenant_id)s"
335
+            fi
335 336
             get_or_create_service "cinderv2" "volumev2" "Cinder Volume Service V2"
336 337
             get_or_create_endpoint "volumev2" "$REGION_NAME" \
337 338
                 "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v2/\$(tenant_id)s" \
... ...
@@ -482,9 +489,7 @@ function create_volume_types {
482 482
         local be be_name
483 483
         for be in ${CINDER_ENABLED_BACKENDS//,/ }; do
484 484
             be_name=${be##*:}
485
-            # FIXME(jamielennox): Remove --os-volume-api-version pinning when
486
-            # osc supports volume type create on v2 api. bug #1475060
487
-            openstack volume type create --os-volume-api-version 1 --property volume_backend_name="${be_name}" ${be_name}
485
+            openstack volume type create --os-volume-api-version 2 --property volume_backend_name="${be_name}" ${be_name}
488 486
         done
489 487
     fi
490 488
 }
... ...
@@ -492,6 +492,15 @@ function configure_tempest {
492 492
         iniset $TEMPEST_CONFIG volume-feature-enabled backup False
493 493
     fi
494 494
 
495
+    # Use only Cinder API v2
496
+    if [[ ${CINDER_ENABLE_V1_API} = True ]]; then
497
+        iniset $TEMPEST_CONFIG volume-feature-enabled api_v1 True
498
+        iniset $TEMPEST_CONFIG volume catalog_type volume
499
+    else
500
+        iniset $TEMPEST_CONFIG volume-feature-enabled api_v1 False
501
+        iniset $TEMPEST_CONFIG volume catalog_type volumev2
502
+    fi
503
+
495 504
     # Using ``CINDER_ENABLED_BACKENDS``
496 505
     if [[ -n "$CINDER_ENABLED_BACKENDS" ]] && [[ $CINDER_ENABLED_BACKENDS =~ .*,.* ]]; then
497 506
         iniset $TEMPEST_CONFIG volume-feature-enabled multi_backend "True"