)]}'
{"grenade.sh":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"b6a9c57fd8929fb7d382a10b77e407069a844132","unresolved":false,"context_lines":[{"line_number":198,"context_line":"# registers all the projects in order that we\u0027re going to be upgrading"},{"line_number":199,"context_line":"# when the time is right."},{"line_number":200,"context_line":"#"},{"line_number":201,"context_line":"# TODO(sdague): this will be where we ``enable_plugins`` when we start"},{"line_number":202,"context_line":"# supporting out of tree content for grenade."},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"fetch_grenade_plugins"}],"source_content_type":"text/x-sh","patch_set":2,"id":"3afb71cf_f664bae5","line":201,"range":{"start_line":201,"start_character":40,"end_line":201,"end_character":54},"updated":"2015-06-08 22:20:24.000000000","message":"Does this need to be updated for the name you chose? Or actually, the whole TODO should probably go...","commit_id":"e3ebfe302381a8d873c275dd14492cd6bae63157"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bf38c620c1eeb31f1d315a090dfc65f6dae37749","unresolved":false,"context_lines":[{"line_number":198,"context_line":"# registers all the projects in order that we\u0027re going to be upgrading"},{"line_number":199,"context_line":"# when the time is right."},{"line_number":200,"context_line":"#"},{"line_number":201,"context_line":"# TODO(sdague): this will be where we ``enable_plugins`` when we start"},{"line_number":202,"context_line":"# supporting out of tree content for grenade."},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"fetch_grenade_plugins"}],"source_content_type":"text/x-sh","patch_set":2,"id":"3afb71cf_bb8e18ce","line":201,"range":{"start_line":201,"start_character":40,"end_line":201,"end_character":54},"in_reply_to":"3afb71cf_f664bae5","updated":"2015-06-09 10:30:17.000000000","message":"good point","commit_id":"e3ebfe302381a8d873c275dd14492cd6bae63157"}],"inc/plugin":[{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"0b00ac652c5498a77d4cc8b15859629e20e0d88a","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    done"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    # External plugins"},{"line_number":40,"context_line":"    local plugins\u003d\"${GRENADE_PLUGINS}\""},{"line_number":41,"context_line":"    local plugin"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    # short circuit if nothing to do"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"5afe65bd_f7cb9151","line":40,"updated":"2015-06-04 04:45:33.000000000","message":"Is this variable documented anywhere yet?","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b569bb93cfc2c3cd8d14fb16d8030126847510bc","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    done"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    # External plugins"},{"line_number":40,"context_line":"    local plugins\u003d\"${GRENADE_PLUGINS}\""},{"line_number":41,"context_line":"    local plugin"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    # short circuit if nothing to do"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"3afb71cf_886209ac","line":40,"in_reply_to":"5afe65bd_f7cb9151","updated":"2015-06-08 21:34:00.000000000","message":"no, but it\u0027s not expected to be accessed directly.","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":6899,"name":"Sirushti Murugesan","email":"sirushtim@gmail.com","username":"sirushtim"},"change_message_id":"6b9f5babb08821e3432dde3af71b2b68bb1070fc","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        local dir\u003d${GITDIR[$plugin]}"},{"line_number":51,"context_line":"        # source any known settings"},{"line_number":52,"context_line":"        if [[ -f $dir/devstack/upgrade/settings ]]; then"},{"line_number":53,"context_line":"            source $dir/devstack/upgrade/settings"},{"line_number":54,"context_line":"        fi"},{"line_number":55,"context_line":"    done"},{"line_number":56,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"5afe65bd_92190b7c","line":53,"updated":"2015-06-04 05:21:59.000000000","message":"This needs to be configurable?","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b569bb93cfc2c3cd8d14fb16d8030126847510bc","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        local dir\u003d${GITDIR[$plugin]}"},{"line_number":51,"context_line":"        # source any known settings"},{"line_number":52,"context_line":"        if [[ -f $dir/devstack/upgrade/settings ]]; then"},{"line_number":53,"context_line":"            source $dir/devstack/upgrade/settings"},{"line_number":54,"context_line":"        fi"},{"line_number":55,"context_line":"    done"},{"line_number":56,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"3afb71cf_8830c99f","line":53,"in_reply_to":"5afe65bd_92190b7c","updated":"2015-06-08 21:34:00.000000000","message":"no, we want to define a standard location in the project, that simplifies a lot of things later.","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":6899,"name":"Sirushti Murugesan","email":"sirushtim@gmail.com","username":"sirushtim"},"change_message_id":"6b9f5babb08821e3432dde3af71b2b68bb1070fc","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"# External plugin interface for grenade"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"function enable_grenade_plugin {"},{"line_number":130,"context_line":"    local name\u003d$1"},{"line_number":131,"context_line":"    local url\u003d$2"},{"line_number":132,"context_line":"    local branch\u003d${3:-$TARGET_DEVSTACK_BRANCH}"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"5afe65bd_7227afb6","line":129,"updated":"2015-06-04 05:21:59.000000000","message":"I doubt this function would reside in grenade.sh since this function is for the external plugin to call?\n\nExample:- https://review.openstack.org/#/c/188148/2/heat_upgradetests/pre_test_hook.sh","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"0b00ac652c5498a77d4cc8b15859629e20e0d88a","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"# External plugin interface for grenade"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"function enable_grenade_plugin {"},{"line_number":130,"context_line":"    local name\u003d$1"},{"line_number":131,"context_line":"    local url\u003d$2"},{"line_number":132,"context_line":"    local branch\u003d${3:-$TARGET_DEVSTACK_BRANCH}"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"5afe65bd_17b4edce","line":129,"updated":"2015-06-04 04:45:33.000000000","message":"nothing calls these yet, looks like we need to update grenade.sh as well","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b569bb93cfc2c3cd8d14fb16d8030126847510bc","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":"# External plugin interface for grenade"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"function enable_grenade_plugin {"},{"line_number":130,"context_line":"    local name\u003d$1"},{"line_number":131,"context_line":"    local url\u003d$2"},{"line_number":132,"context_line":"    local branch\u003d${3:-$TARGET_DEVSTACK_BRANCH}"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"3afb71cf_68dead40","line":129,"in_reply_to":"5afe65bd_7227afb6","updated":"2015-06-08 21:34:00.000000000","message":"Correct, this would not be called by anything in grenade.sh directly. The documentation in PS2 explains expected usage.","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":6899,"name":"Sirushti Murugesan","email":"sirushtim@gmail.com","username":"sirushtim"},"change_message_id":"6b9f5babb08821e3432dde3af71b2b68bb1070fc","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    # going to get us in trouble, but it might. So here be dragons, or"},{"line_number":137,"context_line":"    # at least small fierce lizards of unknown providence."},{"line_number":138,"context_line":"    GITREPO[$name]\u003d$url"},{"line_number":139,"context_line":"    GITDIR[$name]\u003d$STACK_ROOT/plugins/$name"},{"line_number":140,"context_line":"    GITBRANCH[$name]\u003d$branch"},{"line_number":141,"context_line":"}"},{"line_number":142,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"5afe65bd_522a737f","line":139,"updated":"2015-06-04 05:21:59.000000000","message":"Ditto.","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b569bb93cfc2c3cd8d14fb16d8030126847510bc","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    # going to get us in trouble, but it might. So here be dragons, or"},{"line_number":137,"context_line":"    # at least small fierce lizards of unknown providence."},{"line_number":138,"context_line":"    GITREPO[$name]\u003d$url"},{"line_number":139,"context_line":"    GITDIR[$name]\u003d$STACK_ROOT/plugins/$name"},{"line_number":140,"context_line":"    GITBRANCH[$name]\u003d$branch"},{"line_number":141,"context_line":"}"},{"line_number":142,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"3afb71cf_08e4d90a","line":139,"in_reply_to":"5afe65bd_522a737f","updated":"2015-06-08 21:34:00.000000000","message":"No, that\u0027s a standard location to ensure that things end up always in known places.","commit_id":"82927646597528075ec334c75c9cc187d8bfb976"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"b6a9c57fd8929fb7d382a10b77e407069a844132","unresolved":false,"context_lines":[{"line_number":135,"context_line":"    # NOTE(sdague): we\u0027re intentional namespace colliding with"},{"line_number":136,"context_line":"    # devstack to reuse devstack architecture. I don\u0027t think this is"},{"line_number":137,"context_line":"    # going to get us in trouble, but it might. So here be dragons, or"},{"line_number":138,"context_line":"    # at least small fierce lizards of unknown providence."},{"line_number":139,"context_line":"    GITREPO[$name]\u003d$url"},{"line_number":140,"context_line":"    GITDIR[$name]\u003d$STACK_ROOT/plugins/$name"},{"line_number":141,"context_line":"    GITBRANCH[$name]\u003d$branch"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"3afb71cf_1615163f","line":138,"range":{"start_line":138,"start_character":47,"end_line":138,"end_character":57},"updated":"2015-06-08 22:20:24.000000000","message":"Unless these lizards are divine in nature, or from Rhode Island:\n\ns/providence/provenance/","commit_id":"e3ebfe302381a8d873c275dd14492cd6bae63157"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"bf38c620c1eeb31f1d315a090dfc65f6dae37749","unresolved":false,"context_lines":[{"line_number":135,"context_line":"    # NOTE(sdague): we\u0027re intentional namespace colliding with"},{"line_number":136,"context_line":"    # devstack to reuse devstack architecture. I don\u0027t think this is"},{"line_number":137,"context_line":"    # going to get us in trouble, but it might. So here be dragons, or"},{"line_number":138,"context_line":"    # at least small fierce lizards of unknown providence."},{"line_number":139,"context_line":"    GITREPO[$name]\u003d$url"},{"line_number":140,"context_line":"    GITDIR[$name]\u003d$STACK_ROOT/plugins/$name"},{"line_number":141,"context_line":"    GITBRANCH[$name]\u003d$branch"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"3afb71cf_7bc300ee","line":138,"range":{"start_line":138,"start_character":47,"end_line":138,"end_character":57},"in_reply_to":"3afb71cf_1615163f","updated":"2015-06-09 10:30:17.000000000","message":"heh","commit_id":"e3ebfe302381a8d873c275dd14492cd6bae63157"}]}
