)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"89d986bcbd601ce5c407e6050b0290361f2420c2","unresolved":false,"context_lines":[{"line_number":9,"context_line":"* Renames the os-instance_actions v3 plugin to os-server-actions"},{"line_number":10,"context_line":"* Also modifies api specific tests and expected user input JSON/XML"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Fixes lp bug 1206032"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"DOCIMPACT"},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAATn%2F%2Bo6A%3D","line":12,"updated":"2013-11-22 05:44:52.000000000","message":"Better to use Closes-bug: 1206032","commit_id":"b543bcc27f279c488125fb18611477e3b3b153f9"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"42a3b1a0450cdd2c09df542873ff69e9c7897637","unresolved":false,"context_lines":[{"line_number":9,"context_line":"* Renames the os-instance_actions v3 plugin to os-server-actions"},{"line_number":10,"context_line":"* Also modifies api specific tests and expected user input JSON/XML"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Fixes lp bug 1206032"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"DOCIMPACT"},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAATn%2F%2Boo8%3D","line":12,"in_reply_to":"AAAATn%2F%2Bo6A%3D","updated":"2013-11-22 07:19:27.000000000","message":"Done","commit_id":"b543bcc27f279c488125fb18611477e3b3b153f9"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"c522049e7a66f15f64719e185710d90e1ea129a0","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-bug: 1206032"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"DOCIMPACT"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Id5049e10f5ef540d0d8e3871d800e9d9cb33da73"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAATn%2F93L0%3D","line":14,"updated":"2013-12-05 05:27:18.000000000","message":"It is better that we use \"DocImpact\" instead","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"e9117e2f9841b97d6b30ac155a7cab3953f11e56","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-Bug: #1206032"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"DocImpact"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Id5049e10f5ef540d0d8e3871d800e9d9cb33da73"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"AAAAUH%2F%2B%2BrU%3D","line":14,"updated":"2014-01-20 06:37:28.000000000","message":"Can you pls add some message telling the doc impact here?","commit_id":"2b351e072796962da14b4c819a0f7f66f35f447b"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"a83cbeb95420eecfbf7b34c5ca399d76c1786f93","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-Bug: #1206032"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"DocImpact"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Id5049e10f5ef540d0d8e3871d800e9d9cb33da73"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"AAAAUH%2F%2B%2BLY%3D","line":14,"in_reply_to":"AAAAUH%2F%2B%2BrU%3D","updated":"2014-01-20 08:46:59.000000000","message":"Done","commit_id":"2b351e072796962da14b4c819a0f7f66f35f447b"}],"doc/v3/api_samples/os-server-actions/server-action-get-resp.json":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"96087ddfd37f21015b92839f0ea89297f0dc5a4a","unresolved":false,"context_lines":[{"line_number":16,"context_line":"                \"start_time\": \"2012-12-05T01:03:00.000000\","},{"line_number":17,"context_line":"                \"traceback\": \"\""},{"line_number":18,"context_line":"            }"},{"line_number":19,"context_line":"        ],"},{"line_number":20,"context_line":"        \"instance_uuid\": \"b48316c5-71e8-45e4-9884-6c78055b9b13\","},{"line_number":21,"context_line":"        \"message\": \"\","},{"line_number":22,"context_line":"        \"project_id\": \"147\","}],"source_content_type":"application/json","patch_set":6,"id":"AAAAUH%2F%2F27I%3D","line":19,"updated":"2014-01-07 15:48:13.000000000","message":"Sorry I missed this last time, but instance_uuid should really be server_uuid now","commit_id":"11beed9c284c2f63358b23513b9b0ff54d35ff1e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"bc6d355fd05f11700571fc51c8e4ba21aca7b253","unresolved":false,"context_lines":[{"line_number":16,"context_line":"                \"start_time\": \"2012-12-05T01:03:00.000000\","},{"line_number":17,"context_line":"                \"traceback\": \"\""},{"line_number":18,"context_line":"            }"},{"line_number":19,"context_line":"        ],"},{"line_number":20,"context_line":"        \"instance_uuid\": \"b48316c5-71e8-45e4-9884-6c78055b9b13\","},{"line_number":21,"context_line":"        \"message\": \"\","},{"line_number":22,"context_line":"        \"project_id\": \"147\","}],"source_content_type":"application/json","patch_set":6,"id":"AAAAUH%2F%2F2C0%3D","line":19,"in_reply_to":"AAAAUH%2F%2F27I%3D","updated":"2014-01-07 19:20:37.000000000","message":"Should this \"instance_uuid\" be changed till the nova/objects/instance_action.py? or is only for the api user\u0027s consistency.","commit_id":"11beed9c284c2f63358b23513b9b0ff54d35ff1e"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"93f1fe7c35f6584886412f41efcd7ea8c26645be","unresolved":false,"context_lines":[{"line_number":16,"context_line":"                \"start_time\": \"2012-12-05T01:03:00.000000\","},{"line_number":17,"context_line":"                \"traceback\": \"\""},{"line_number":18,"context_line":"            }"},{"line_number":19,"context_line":"        ],"},{"line_number":20,"context_line":"        \"instance_uuid\": \"b48316c5-71e8-45e4-9884-6c78055b9b13\","},{"line_number":21,"context_line":"        \"message\": \"\","},{"line_number":22,"context_line":"        \"project_id\": \"147\","}],"source_content_type":"application/json","patch_set":6,"id":"AAAAUH%2F%2F0jg%3D","line":19,"in_reply_to":"AAAAUH%2F%2F2C0%3D","updated":"2014-01-08 03:17:19.000000000","message":"Just for the API users\u0027s consistency for now.\n\nLong term I tihnk it\u0027d be nice if we were consistent through all of the codebase, but that\u0027d be a lot of code churn.","commit_id":"11beed9c284c2f63358b23513b9b0ff54d35ff1e"}],"nova/api/openstack/compute/plugins/v3/server_actions.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"89d986bcbd601ce5c407e6050b0290361f2420c2","unresolved":false,"context_lines":[{"line_number":28,"context_line":"authorize_events \u003d extensions.soft_extension_authorizer(\u0027compute\u0027,"},{"line_number":29,"context_line":"                                                    \u0027v3:\u0027 + ALIAS + \u0027:events\u0027)"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"ACTION_KEYS \u003d [\u0027action\u0027, \u0027instance_uuid\u0027, \u0027request_id\u0027, \u0027user_id\u0027,"},{"line_number":32,"context_line":"               \u0027project_id\u0027, \u0027start_time\u0027, \u0027message\u0027]"},{"line_number":33,"context_line":"EVENT_KEYS \u003d [\u0027event\u0027, \u0027start_time\u0027, \u0027finish_time\u0027, \u0027result\u0027, \u0027traceback\u0027]"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2Bo6Q%3D","line":31,"updated":"2013-11-22 05:44:52.000000000","message":"Should we rename instance_uuid to server_uuid or server_id?","commit_id":"b543bcc27f279c488125fb18611477e3b3b153f9"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"42a3b1a0450cdd2c09df542873ff69e9c7897637","unresolved":false,"context_lines":[{"line_number":28,"context_line":"authorize_events \u003d extensions.soft_extension_authorizer(\u0027compute\u0027,"},{"line_number":29,"context_line":"                                                    \u0027v3:\u0027 + ALIAS + \u0027:events\u0027)"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"ACTION_KEYS \u003d [\u0027action\u0027, \u0027instance_uuid\u0027, \u0027request_id\u0027, \u0027user_id\u0027,"},{"line_number":32,"context_line":"               \u0027project_id\u0027, \u0027start_time\u0027, \u0027message\u0027]"},{"line_number":33,"context_line":"EVENT_KEYS \u003d [\u0027event\u0027, \u0027start_time\u0027, \u0027finish_time\u0027, \u0027result\u0027, \u0027traceback\u0027]"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2Booc%3D","line":31,"in_reply_to":"AAAATn%2F%2Bo6Q%3D","updated":"2013-11-22 07:19:27.000000000","message":"The main purpose of this fix is to not expose the \"instance_actions\" naming to the api user. Since \"instance_actions\" is an nova internal concept. \"server_actions\" is the name that api user should be using. But internally we can still use instance_uuid. I would prefer that we have a consistent naming policy, since we already call the vm as \"instance\" internally, its better we use \"instance_uuid\" here.","commit_id":"b543bcc27f279c488125fb18611477e3b3b153f9"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"067a77b0c01ecf662ff2fa3cd83bf60d0b98faf4","unresolved":false,"context_lines":[{"line_number":128,"context_line":"    name \u003d \"ServerActions\""},{"line_number":129,"context_line":"    alias \u003d ALIAS"},{"line_number":130,"context_line":"    namespace \u003d (\"http://docs.openstack.org/compute/ext/\""},{"line_number":131,"context_line":"                 \"instance-actions/api/v3\")"},{"line_number":132,"context_line":"    version \u003d 1"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    def get_resources(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAT3%2F%2FwYQ%3D","line":131,"updated":"2014-01-02 09:53:51.000000000","message":"it should be \"http://docs.openstack.org/compute/ext/server-actions/api/v3\"","commit_id":"1afdb35f97324fbb07fde95c5561c42922cb8a58"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"19a6ca0fef1ed32727a2e822a6506e5788a93568","unresolved":false,"context_lines":[{"line_number":128,"context_line":"    name \u003d \"ServerActions\""},{"line_number":129,"context_line":"    alias \u003d ALIAS"},{"line_number":130,"context_line":"    namespace \u003d (\"http://docs.openstack.org/compute/ext/\""},{"line_number":131,"context_line":"                 \"instance-actions/api/v3\")"},{"line_number":132,"context_line":"    version \u003d 1"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    def get_resources(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAT3%2F%2FwLs%3D","line":131,"in_reply_to":"AAAAT3%2F%2FwWk%3D","updated":"2014-01-02 13:04:57.000000000","message":"Done","commit_id":"1afdb35f97324fbb07fde95c5561c42922cb8a58"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"dfac119fe72e4a4511a04d5756b039cd23e41614","unresolved":false,"context_lines":[{"line_number":128,"context_line":"    name \u003d \"ServerActions\""},{"line_number":129,"context_line":"    alias \u003d ALIAS"},{"line_number":130,"context_line":"    namespace \u003d (\"http://docs.openstack.org/compute/ext/\""},{"line_number":131,"context_line":"                 \"instance-actions/api/v3\")"},{"line_number":132,"context_line":"    version \u003d 1"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"    def get_resources(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAT3%2F%2FwWk%3D","line":131,"in_reply_to":"AAAAT3%2F%2FwYQ%3D","updated":"2014-01-02 09:55:24.000000000","message":"oops, sorry, it should be  \"http://docs.openstack.org/compute/ext/os-server-actions/api/v3\"","commit_id":"1afdb35f97324fbb07fde95c5561c42922cb8a58"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"8be7d996edac9e3c55c7b2566ac8376842403d1b","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"def translate_action(action):"},{"line_number":37,"context_line":"    \"\"\"Translats internal \u0027instance_uuid\u0027 key to \u0027server_uuid\u0027"},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":40,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2FAQQ%3D","line":37,"updated":"2014-01-19 13:50:01.000000000","message":"Translats -\u003e Translates","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"74fafa1073485ea64726b05a464e4e31816e2bc9","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"def translate_action(action):"},{"line_number":37,"context_line":"    \"\"\"Translats internal \u0027instance_uuid\u0027 key to \u0027server_uuid\u0027"},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":40,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2Fys%3D","line":37,"in_reply_to":"AAAAUH%2F%2FAQQ%3D","updated":"2014-01-19 20:22:01.000000000","message":"Done","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"8be7d996edac9e3c55c7b2566ac8376842403d1b","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    \"\"\"Translats internal \u0027instance_uuid\u0027 key to \u0027server_uuid\u0027"},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":40,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"},{"line_number":41,"context_line":"        del action[\u0027instance_uuid\u0027]"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    return action"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2FAQI%3D","line":40,"updated":"2014-01-19 13:50:01.000000000","message":"action[\u0027server_uuid\u0027] \u003d action.pop(\u0027instance_uuid\u0027) would be a bit cleaner","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"74fafa1073485ea64726b05a464e4e31816e2bc9","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    \"\"\"Translats internal \u0027instance_uuid\u0027 key to \u0027server_uuid\u0027"},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":40,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"},{"line_number":41,"context_line":"        del action[\u0027instance_uuid\u0027]"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    return action"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2Fyo%3D","line":40,"in_reply_to":"AAAAUH%2F%2FAQI%3D","updated":"2014-01-19 20:22:01.000000000","message":"Done","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"8be7d996edac9e3c55c7b2566ac8376842403d1b","unresolved":false,"context_lines":[{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _format_action(self, action_raw):"},{"line_number":91,"context_line":"        action \u003d {}"},{"line_number":92,"context_line":"        for key in ACTION_KEYS:"},{"line_number":93,"context_line":"            action[key] \u003d action_raw.get(key)"},{"line_number":94,"context_line":"        return action"},{"line_number":95,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2FAPI%3D","line":92,"updated":"2014-01-19 13:50:01.000000000","message":"Actually why not do the translation for instance_uuid to server_uuid rather than have a separate translate function?","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"9d861054b42f427b3b43453c5a6524f0a6b3e21f","unresolved":false,"context_lines":[{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _format_action(self, action_raw):"},{"line_number":91,"context_line":"        action \u003d {}"},{"line_number":92,"context_line":"        for key in ACTION_KEYS:"},{"line_number":93,"context_line":"            action[key] \u003d action_raw.get(key)"},{"line_number":94,"context_line":"        return action"},{"line_number":95,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2Bok%3D","line":92,"in_reply_to":"AAAAUH%2F%2B%2FdM%3D","updated":"2014-01-20 06:55:10.000000000","message":"Sorry for confusion, some unittests were failing on  my side due env issues, I have pushed new patchset which makes changes to action in the _format_action method itself. Please review","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"bd53d561d514da7cfbfc227a962ab21588b1b09a","unresolved":false,"context_lines":[{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _format_action(self, action_raw):"},{"line_number":91,"context_line":"        action \u003d {}"},{"line_number":92,"context_line":"        for key in ACTION_KEYS:"},{"line_number":93,"context_line":"            action[key] \u003d action_raw.get(key)"},{"line_number":94,"context_line":"        return action"},{"line_number":95,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2FdM%3D","line":92,"in_reply_to":"AAAAUH%2F%2B%2FyY%3D","updated":"2014-01-20 00:15:05.000000000","message":"Sorry I might be missing it, but I don\u0027t see where the output of _format_action is passed to the action_api call? The action_id not the action is passed to the action_api","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"74fafa1073485ea64726b05a464e4e31816e2bc9","unresolved":false,"context_lines":[{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    def _format_action(self, action_raw):"},{"line_number":91,"context_line":"        action \u003d {}"},{"line_number":92,"context_line":"        for key in ACTION_KEYS:"},{"line_number":93,"context_line":"            action[key] \u003d action_raw.get(key)"},{"line_number":94,"context_line":"        return action"},{"line_number":95,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2FyY%3D","line":92,"in_reply_to":"AAAAUH%2F%2FAPI%3D","updated":"2014-01-19 20:22:01.000000000","message":"_format_action has to be called before passing the action to the action_api calls. Action_api doesnt handle \"server_uuid\" , it expects a key \"instance_uuid\" since it crosses the DB layer. Hence cannot do translation in _format_action.","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"}],"nova/tests/api/openstack/compute/plugins/v3/test_console_output.py":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"dad376f4e9c7e7bb032c7c26ccd10ed91c10da3e","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        req.headers[\"content-type\"] \u003d self.application_type"},{"line_number":71,"context_line":"        return req"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def test_get_text_console_server_action(self):"},{"line_number":74,"context_line":"        req \u003d self._create_request(length_dict\u003d{})"},{"line_number":75,"context_line":"        res \u003d req.get_response(self.app)"},{"line_number":76,"context_line":"        output \u003d jsonutils.loads(res.body)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Be88%3D","line":73,"updated":"2013-11-25 17:55:54.000000000","message":"This seems to be an unrelated change.","commit_id":"63a8400c711d35126af517e1b0e3c87ac698ffa2"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"638344455cf28f570f1d63f95024560eb7bf9333","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        req.headers[\"content-type\"] \u003d self.application_type"},{"line_number":71,"context_line":"        return req"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def test_get_text_console_server_action(self):"},{"line_number":74,"context_line":"        req \u003d self._create_request(length_dict\u003d{})"},{"line_number":75,"context_line":"        res \u003d req.get_response(self.app)"},{"line_number":76,"context_line":"        output \u003d jsonutils.loads(res.body)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Bbic%3D","line":73,"in_reply_to":"AAAATn%2F%2Be88%3D","updated":"2013-11-26 07:00:08.000000000","message":"Yes, removed","commit_id":"63a8400c711d35126af517e1b0e3c87ac698ffa2"}],"nova/tests/api/openstack/compute/plugins/v3/test_instance_actions.py":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"dad376f4e9c7e7bb032c7c26ccd10ed91c10da3e","unresolved":false,"context_lines":[{"line_number":28,"context_line":"from nova import test"},{"line_number":29,"context_line":"from nova.tests.api.openstack import fakes"},{"line_number":30,"context_line":"from nova.tests import fake_instance"},{"line_number":31,"context_line":"from nova.tests import fake_instance_actions as fake_server_actions"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"FAKE_UUID \u003d fake_server_actions.FAKE_UUID"},{"line_number":34,"context_line":"FAKE_REQUEST_ID \u003d fake_server_actions.FAKE_REQUEST_ID1"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Be64%3D","line":31,"updated":"2013-11-25 17:55:54.000000000","message":"Since we\u0027re going to be moving forward with server_actions I would prefer the fake_instance_actions module be renamed and import \u0027as fake_instance_actions\u0027 in v2.","commit_id":"63a8400c711d35126af517e1b0e3c87ac698ffa2"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"638344455cf28f570f1d63f95024560eb7bf9333","unresolved":false,"context_lines":[{"line_number":28,"context_line":"from nova import test"},{"line_number":29,"context_line":"from nova.tests.api.openstack import fakes"},{"line_number":30,"context_line":"from nova.tests import fake_instance"},{"line_number":31,"context_line":"from nova.tests import fake_instance_actions as fake_server_actions"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"FAKE_UUID \u003d fake_server_actions.FAKE_UUID"},{"line_number":34,"context_line":"FAKE_REQUEST_ID \u003d fake_server_actions.FAKE_REQUEST_ID1"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Bbi8%3D","line":31,"in_reply_to":"AAAATn%2F%2Be64%3D","updated":"2013-11-26 07:00:08.000000000","message":"Done","commit_id":"63a8400c711d35126af517e1b0e3c87ac698ffa2"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"8be7d996edac9e3c55c7b2566ac8376842403d1b","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        format_event(event)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":52,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"},{"line_number":53,"context_line":"        del action[\u0027instance_uuid\u0027]"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    return action"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2FAPE%3D","line":52,"updated":"2014-01-19 13:50:01.000000000","message":"pop would be better here too I think","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"74fafa1073485ea64726b05a464e4e31816e2bc9","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        format_event(event)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    if \u0027instance_uuid\u0027 in action:"},{"line_number":52,"context_line":"        action[\u0027server_uuid\u0027] \u003d action[\u0027instance_uuid\u0027]"},{"line_number":53,"context_line":"        del action[\u0027instance_uuid\u0027]"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    return action"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAUH%2F%2B%2FyA%3D","line":52,"in_reply_to":"AAAAUH%2F%2FAPE%3D","updated":"2014-01-19 20:22:01.000000000","message":"Done","commit_id":"c6aa3949fc720b1d2f87d815264bfec58bd7be3e"}],"nova/tests/cells/test_cells_manager.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":27,"context_line":"from nova.openstack.common import timeutils"},{"line_number":28,"context_line":"from nova import test"},{"line_number":29,"context_line":"from nova.tests.cells import fakes"},{"line_number":30,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"CONF \u003d cfg.CONF"},{"line_number":33,"context_line":"CONF.import_opt(\u0027compute_topic\u0027, \u0027nova.compute.rpcapi\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rwQ%3D","line":30,"updated":"2013-12-07 23:21:00.000000000","message":"should fix fake_instance_actions here too I think for consistency","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"nova/tests/cells/test_cells_messaging.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":34,"context_line":"from nova.openstack.common import uuidutils"},{"line_number":35,"context_line":"from nova import test"},{"line_number":36,"context_line":"from nova.tests.cells import fakes"},{"line_number":37,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"CONF \u003d cfg.CONF"},{"line_number":40,"context_line":"CONF.import_opt(\u0027name\u0027, \u0027nova.cells.opts\u0027, group\u003d\u0027cells\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rwM%3D","line":37,"updated":"2013-12-07 23:21:00.000000000","message":"same issue around fake_instance_actions renaming","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"nova/tests/compute/test_compute.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":75,"context_line":"from nova.tests import fake_network"},{"line_number":76,"context_line":"from nova.tests import fake_network_cache_model"},{"line_number":77,"context_line":"from nova.tests import fake_notifier"},{"line_number":78,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":79,"context_line":"from nova.tests.image import fake as fake_image"},{"line_number":80,"context_line":"from nova.tests import matchers"},{"line_number":81,"context_line":"from nova.tests.objects import test_migration"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rwI%3D","line":78,"updated":"2013-12-07 23:21:00.000000000","message":"ditto","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"nova/tests/compute/test_compute_utils.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":38,"context_line":"from nova.tests import fake_instance"},{"line_number":39,"context_line":"from nova.tests import fake_network"},{"line_number":40,"context_line":"from nova.tests import fake_notifier"},{"line_number":41,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":42,"context_line":"import nova.tests.image.fake"},{"line_number":43,"context_line":"from nova.tests import matchers"},{"line_number":44,"context_line":"from nova.virt import driver"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rwA%3D","line":41,"updated":"2013-12-07 23:21:00.000000000","message":"ditto","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"nova/tests/integrated/test_api_samples.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":58,"context_line":"from nova.tests.api.openstack import fakes"},{"line_number":59,"context_line":"from nova.tests import fake_network"},{"line_number":60,"context_line":"from nova.tests import fake_network_cache_model"},{"line_number":61,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":62,"context_line":"from nova.tests import fake_utils"},{"line_number":63,"context_line":"from nova.tests.image import fake"},{"line_number":64,"context_line":"from nova.tests.integrated import api_samples_test_base"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rv4%3D","line":61,"updated":"2013-12-07 23:21:00.000000000","message":"better just to do the rename properly here I think","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"nova/tests/integrated/v3/api_samples/os-server-actions/server-action-get-resp.json.tpl":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"067a77b0c01ecf662ff2fa3cd83bf60d0b98faf4","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server_action\": {"},{"line_number":3,"context_line":"            \"action\": \"%(action)s\","},{"line_number":4,"context_line":"            \"instance_uuid\": \"%(instance_uuid)s\","},{"line_number":5,"context_line":"            \"request_id\": \"%(request_id)s\","},{"line_number":6,"context_line":"            \"user_id\": \"%(integer_id)s\","},{"line_number":7,"context_line":"            \"project_id\": \"%(integer_id)s\","}],"source_content_type":"text/x-smarty","patch_set":5,"id":"AAAAT3%2F%2FwXc%3D","line":4,"updated":"2014-01-02 09:53:51.000000000","message":"Still have a little confuse. \u0027instance_uuid\u0027 response to user too. Why we think it is used by internally?","commit_id":"1afdb35f97324fbb07fde95c5561c42922cb8a58"},{"author":{"_account_id":6124,"name":"Rohan Kanade","email":"openstack@rohankanade.com","username":"kanaderohan"},"change_message_id":"19a6ca0fef1ed32727a2e822a6506e5788a93568","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"server_action\": {"},{"line_number":3,"context_line":"            \"action\": \"%(action)s\","},{"line_number":4,"context_line":"            \"instance_uuid\": \"%(instance_uuid)s\","},{"line_number":5,"context_line":"            \"request_id\": \"%(request_id)s\","},{"line_number":6,"context_line":"            \"user_id\": \"%(integer_id)s\","},{"line_number":7,"context_line":"            \"project_id\": \"%(integer_id)s\","}],"source_content_type":"text/x-smarty","patch_set":5,"id":"AAAAT3%2F%2FwLw%3D","line":4,"in_reply_to":"AAAAT3%2F%2FwXc%3D","updated":"2014-01-02 13:04:57.000000000","message":"\"instance_uuid\" is a field used in the instance_action db object. We will have to make lots of changes if we are going to use \"server_uuid\" instead of \"instance_uuid\". I dont think we should make such a change in this patch. What is your opinion on this?","commit_id":"1afdb35f97324fbb07fde95c5561c42922cb8a58"}],"nova/tests/scheduler/test_scheduler.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":40,"context_line":"from nova import servicegroup"},{"line_number":41,"context_line":"from nova import test"},{"line_number":42,"context_line":"from nova.tests import fake_instance"},{"line_number":43,"context_line":"from nova.tests import fake_server_actions as fake_instance_actions"},{"line_number":44,"context_line":"from nova.tests.image import fake as fake_image"},{"line_number":45,"context_line":"from nova.tests import matchers"},{"line_number":46,"context_line":"from nova.tests.scheduler import fakes"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F9rvw%3D","line":43,"updated":"2013-12-07 23:21:00.000000000","message":"rename here again","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}],"setup.cfg":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"78fb8c9c1337247c3cd4f529703c57136152f4fe","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    hide_server_addresses \u003d nova.api.openstack.compute.plugins.v3.hide_server_addresses:HideServerAddresses"},{"line_number":87,"context_line":"    hosts \u003d nova.api.openstack.compute.plugins.v3.hosts:Hosts"},{"line_number":88,"context_line":"    hypervisors \u003d nova.api.openstack.compute.plugins.v3.hypervisors:Hypervisors"},{"line_number":89,"context_line":"    server_actions \u003d nova.api.openstack.compute.plugins.v3.server_actions:ServerActions"},{"line_number":90,"context_line":"    ips \u003d nova.api.openstack.compute.plugins.v3.ips:IPs"},{"line_number":91,"context_line":"    instance_usage_audit_log \u003d nova.api.openstack.compute.plugins.v3.instance_usage_audit_log:InstanceUsageAuditLog"},{"line_number":92,"context_line":"    keypairs \u003d nova.api.openstack.compute.plugins.v3.keypairs:Keypairs"}],"source_content_type":"text/x-ttcn-cfg","patch_set":4,"id":"AAAATn%2F9rvo%3D","line":89,"updated":"2013-12-07 23:21:00.000000000","message":"Please move this  line so the list is still alphabetic","commit_id":"ca9cc2cf876d02efcf3dd66fe829d514a6780256"}]}
