)]}'
{"lib/tempest":[{"author":{"_account_id":1420,"name":"Adam Gandelman","email":"adamg@ubuntu.com","username":"gandelman-a"},"change_message_id":"17260413e69a77317df3ad6e2eee79d5b5b10d1a","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    compute_api_extensions\u003d$(remove_disabled_extensions $compute_api_extensions $DISABLE_COMPUTE_API_EXTENSIONS)"},{"line_number":305,"context_line":"    network_api_extensions\u003d$(remove_disabled_extensions $network_api_extensions $DISABLE_NETWORK_API_EXTENSIONS)"},{"line_number":306,"context_line":"    object_storage_api_extensions\u003d$(remove_disabled_extensions $object_storage_api_extensions $DISABLE_STORAGE_API_EXTENSIONS)"},{"line_number":307,"context_line":"    volume_api_extensions\u003d$(remove_disabled_extensions $volume_api_extensions $DISABLE_VOLUME_API_EXTENSIONS)"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    # Compute"},{"line_number":310,"context_line":"    iniset $TEMPEST_CONFIG compute allow_tenant_isolation ${TEMPEST_ALLOW_TENANT_ISOLATION:-True}"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"baa201ad_15b3604d","line":307,"updated":"2014-10-09 00:04:57.000000000","message":"all of the declarations above should be local-ized","commit_id":"5062cef18877aa43d0212a8330ee7b13eb19ec88"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"ca6aa2b0cedbb665755749f46cd59c4aaaf71157","unresolved":false,"context_lines":[{"line_number":304,"context_line":"    compute_api_extensions\u003d$(remove_disabled_extensions $compute_api_extensions $DISABLE_COMPUTE_API_EXTENSIONS)"},{"line_number":305,"context_line":"    network_api_extensions\u003d$(remove_disabled_extensions $network_api_extensions $DISABLE_NETWORK_API_EXTENSIONS)"},{"line_number":306,"context_line":"    object_storage_api_extensions\u003d$(remove_disabled_extensions $object_storage_api_extensions $DISABLE_STORAGE_API_EXTENSIONS)"},{"line_number":307,"context_line":"    volume_api_extensions\u003d$(remove_disabled_extensions $volume_api_extensions $DISABLE_VOLUME_API_EXTENSIONS)"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    # Compute"},{"line_number":310,"context_line":"    iniset $TEMPEST_CONFIG compute allow_tenant_isolation ${TEMPEST_ALLOW_TENANT_ISOLATION:-True}"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"baa201ad_fc7a40b8","line":307,"in_reply_to":"baa201ad_15b3604d","updated":"2014-10-09 08:39:10.000000000","message":"sure","commit_id":"5062cef18877aa43d0212a8330ee7b13eb19ec88"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"63eb6f5c5f174ef12d0154fa6aceb695ed55758b","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    local extensions_list\u003d$1"},{"line_number":81,"context_line":"    shift"},{"line_number":82,"context_line":"    local disabled_exts\u003d$*"},{"line_number":83,"context_line":"    OLDIFS\u003d$IFS"},{"line_number":84,"context_line":"    local IFS\u003d,"},{"line_number":85,"context_line":"    disabled_exts_array\u003d($disabled_exts)"},{"line_number":86,"context_line":"    IFS\u003d$OLDIFS"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_f3884624","line":83,"updated":"2014-10-14 04:26:33.000000000","message":"this is done in several other places with a simpler \n\n for x in ${FOO//,/ }; do\n\ncan we just do that?","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"3aa2cbdfdb22c088c26d4560dc7314b4d07f545c","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    local extensions_list\u003d$1"},{"line_number":81,"context_line":"    shift"},{"line_number":82,"context_line":"    local disabled_exts\u003d$*"},{"line_number":83,"context_line":"    OLDIFS\u003d$IFS"},{"line_number":84,"context_line":"    local IFS\u003d,"},{"line_number":85,"context_line":"    disabled_exts_array\u003d($disabled_exts)"},{"line_number":86,"context_line":"    IFS\u003d$OLDIFS"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_1f03b610","line":83,"in_reply_to":"baa201ad_f3884624","updated":"2014-10-16 16:08:03.000000000","message":"I can do that.","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"7f040f6c96f505928e1791f27f4c72fd16541bfe","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":296,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":297,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":298,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-$(iniget $tmp_cfg_file compute-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":299,"context_line":"    local network_api_extensions\u003d${NETWORK_API_EXTENSIONS:-$(iniget $tmp_cfg_file network-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":300,"context_line":"    local object_storage_api_extensions\u003d${OBJECT_STORAGE_API_EXTENSIONS:-$(iniget $tmp_cfg_file object-storage-feature-enabled discoverable_apis | tr -d \" \")}"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_0449ad30","line":297,"updated":"2014-10-16 15:23:43.000000000","message":"So my concern here is on master we might inadvertently mask a bug in api discovery resulting a valid test being skipped.\n\nI think on the master branch (on stable we should do this unconditionally) we should put a conditional around this block for whether there are any disabled extensions listed or not and just use the default all if we don\u0027t need to play with the list.","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"3aa2cbdfdb22c088c26d4560dc7314b4d07f545c","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":296,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":297,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":298,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-$(iniget $tmp_cfg_file compute-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":299,"context_line":"    local network_api_extensions\u003d${NETWORK_API_EXTENSIONS:-$(iniget $tmp_cfg_file network-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":300,"context_line":"    local object_storage_api_extensions\u003d${OBJECT_STORAGE_API_EXTENSIONS:-$(iniget $tmp_cfg_file object-storage-feature-enabled discoverable_apis | tr -d \" \")}"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_7f3762ff","line":297,"in_reply_to":"baa201ad_0449ad30","updated":"2014-10-16 16:08:03.000000000","message":"you\u0027re right.\nI did not do that out of laziness and indolence.","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"747d0e1e2404b637a7c0ac6d54bf664df3e65ebc","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":296,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":297,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":298,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-$(iniget $tmp_cfg_file compute-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":299,"context_line":"    local network_api_extensions\u003d${NETWORK_API_EXTENSIONS:-$(iniget $tmp_cfg_file network-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":300,"context_line":"    local object_storage_api_extensions\u003d${OBJECT_STORAGE_API_EXTENSIONS:-$(iniget $tmp_cfg_file object-storage-feature-enabled discoverable_apis | tr -d \" \")}"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_f82b697f","line":297,"in_reply_to":"baa201ad_7f3762ff","updated":"2014-10-16 16:33:22.000000000","message":"btw, why do we have to do this unconditionally for stable branches?","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"55913b8d3ff4196fdf2fbe20d3da0351b369cdeb","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":296,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":297,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":298,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-$(iniget $tmp_cfg_file compute-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":299,"context_line":"    local network_api_extensions\u003d${NETWORK_API_EXTENSIONS:-$(iniget $tmp_cfg_file network-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":300,"context_line":"    local object_storage_api_extensions\u003d${OBJECT_STORAGE_API_EXTENSIONS:-$(iniget $tmp_cfg_file object-storage-feature-enabled discoverable_apis | tr -d \" \")}"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_f89a8912","line":297,"in_reply_to":"baa201ad_f82b697f","updated":"2014-10-16 16:52:14.000000000","message":"On the stable branches we want to ensure that the extension list is not using \u0027all\u0027, but the full list isntead. So that we can easily add tests to tempest for new extensions added on the master branch of a project. If we didn\u0027t run verify_tempest_config to generate the list on the stable branches it would default to using \u0027all\u0027 which would be the current situation we\u0027re stuck in. \n\nThere\u0027s probably a better solution around this, but just running this unconditionally on stable branches was my first thought after looking at this code.","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"14659c586748e37fd0b3601666252865baed7869","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":296,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":297,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":298,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-$(iniget $tmp_cfg_file compute-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":299,"context_line":"    local network_api_extensions\u003d${NETWORK_API_EXTENSIONS:-$(iniget $tmp_cfg_file network-feature-enabled api_extensions | tr -d \" \")}"},{"line_number":300,"context_line":"    local object_storage_api_extensions\u003d${OBJECT_STORAGE_API_EXTENSIONS:-$(iniget $tmp_cfg_file object-storage-feature-enabled discoverable_apis | tr -d \" \")}"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"baa201ad_a1f0cc91","line":297,"in_reply_to":"baa201ad_f89a8912","updated":"2014-10-16 18:13:41.000000000","message":"cool thanks - I just did not understand if you meant skip unconditionally or run unconditionally.","commit_id":"46c46df236ad4ce0e9c9e41e249fb24034fa7e28"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"3fa9a1c68000089277925939d404f30e546d5d96","unresolved":false,"context_lines":[{"line_number":313,"context_line":"    # Compute Features"},{"line_number":314,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":315,"context_line":"    # NOTE(mtreinish): This must be done after auth settings are added to the tempest config"},{"line_number":316,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":317,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-\"all\"}"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"3a961159_bf84d8d4","line":316,"updated":"2014-12-09 16:27:09.000000000","message":"This needs to be local","commit_id":"029980502949ebffb00b4edddbe5a2fcc5aa237d"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"00d6a5449f643bfbeba093dabf4b4364aaca5e22","unresolved":false,"context_lines":[{"line_number":313,"context_line":"    # Compute Features"},{"line_number":314,"context_line":"    # Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints"},{"line_number":315,"context_line":"    # NOTE(mtreinish): This must be done after auth settings are added to the tempest config"},{"line_number":316,"context_line":"    tmp_cfg_file\u003d$(mktemp)"},{"line_number":317,"context_line":"    $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":"    local compute_api_extensions\u003d${COMPUTE_API_EXTENSIONS:-\"all\"}"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"3a961159_fa02ee3c","line":316,"in_reply_to":"3a961159_bf84d8d4","updated":"2014-12-09 16:54:13.000000000","message":"Done","commit_id":"029980502949ebffb00b4edddbe5a2fcc5aa237d"}]}
