)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"9370d94c0e0c4a59639d0f662e30944d7a315dba","unresolved":false,"context_lines":[{"line_number":19,"context_line":"because they result in compute services being forced down"},{"line_number":20,"context_line":"or disabled, which are dangerous to test in the gates."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Valid use cases for these clients include:"},{"line_number":23,"context_line":"  - negative testing"},{"line_number":24,"context_line":"  - RBAC testing (forcing a BadRequest but ensuring policy enforcement"},{"line_number":25,"context_line":"    happens beforehand)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"df140735_0c35b046","line":22,"range":{"start_line":22,"start_character":26,"end_line":22,"end_character":33},"updated":"2017-05-30 17:43:42.000000000","message":"APIs (I mean)","commit_id":"17ebc086998cdac6b9d46e0ffc1f5c875faa9a55"}],"releasenotes/notes/extra-compute-services-tests-92b6c0618972e02f.yaml":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"e8af4f4a81c4c93fed6a829652095ca11eaa5eb5","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    to the compute ``services_client``."},{"line_number":6,"context_line":"    Add \u00272.11\u0027 compute microversion schema for ``forced_down`` parameter"},{"line_number":7,"context_line":"    returned by ``force_down_service``."},{"line_number":8,"context_line":"fixes:"},{"line_number":9,"context_line":"  - |"},{"line_number":10,"context_line":"    Change erroneous ``host_name`` parameter used in compute"},{"line_number":11,"context_line":"    ``services_client`` unit tests to ``host``."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"3f1d235d_1ed58de5","line":11,"range":{"start_line":8,"start_character":0,"end_line":11,"end_character":47},"updated":"2017-07-04 12:58:26.000000000","message":"i do not think this needs to be in reno, this is just UT fix.","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1d36047c708ac3d75f0f6f7df4bc82fa34c7aa3","unresolved":false,"context_lines":[{"line_number":5,"context_line":"    to the compute ``services_client``."},{"line_number":6,"context_line":"    Add \u00272.11\u0027 compute microversion schema for ``forced_down`` parameter"},{"line_number":7,"context_line":"    returned by ``force_down_service``."},{"line_number":8,"context_line":"fixes:"},{"line_number":9,"context_line":"  - |"},{"line_number":10,"context_line":"    Change erroneous ``host_name`` parameter used in compute"},{"line_number":11,"context_line":"    ``services_client`` unit tests to ``host``."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"3f1d235d_dfd385d4","line":11,"range":{"start_line":8,"start_character":0,"end_line":11,"end_character":47},"in_reply_to":"3f1d235d_1ed58de5","updated":"2017-07-05 00:42:26.000000000","message":"Done","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"}],"tempest/lib/api_schema/response/compute/v2_1/services.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"e8af4f4a81c4c93fed6a829652095ca11eaa5eb5","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    }"},{"line_number":67,"context_line":"}"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"update_forced_down \u003d {"},{"line_number":70,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":71,"context_line":"    \u0027response_body\u0027: {"},{"line_number":72,"context_line":"        \u0027type\u0027: \u0027object\u0027,"},{"line_number":73,"context_line":"        \u0027properties\u0027: {"},{"line_number":74,"context_line":"            \u0027service\u0027: {"},{"line_number":75,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":76,"context_line":"                \u0027properties\u0027: {"},{"line_number":77,"context_line":"                    \u0027binary\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":78,"context_line":"                    \u0027host\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":79,"context_line":"                },"},{"line_number":80,"context_line":"                \u0027additionalProperties\u0027: False,"},{"line_number":81,"context_line":"                \u0027required\u0027: [\u0027binary\u0027, \u0027host\u0027]"},{"line_number":82,"context_line":"            }"},{"line_number":83,"context_line":"        },"},{"line_number":84,"context_line":"        \u0027additionalProperties\u0027: False,"},{"line_number":85,"context_line":"        \u0027required\u0027: [\u0027service\u0027]"},{"line_number":86,"context_line":"    }"},{"line_number":87,"context_line":"}"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"log_reason_disabled_service \u003d {"},{"line_number":90,"context_line":"    \u0027status_code\u0027: [200],"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_fede510f","line":87,"range":{"start_line":69,"start_character":0,"end_line":87,"end_character":1},"updated":"2017-07-04 12:58:26.000000000","message":"We do not need this. force-down action is introduced in 2.11 microversion only and 404 before that if requested.","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1d36047c708ac3d75f0f6f7df4bc82fa34c7aa3","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    }"},{"line_number":67,"context_line":"}"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"update_forced_down \u003d {"},{"line_number":70,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":71,"context_line":"    \u0027response_body\u0027: {"},{"line_number":72,"context_line":"        \u0027type\u0027: \u0027object\u0027,"},{"line_number":73,"context_line":"        \u0027properties\u0027: {"},{"line_number":74,"context_line":"            \u0027service\u0027: {"},{"line_number":75,"context_line":"                \u0027type\u0027: \u0027object\u0027,"},{"line_number":76,"context_line":"                \u0027properties\u0027: {"},{"line_number":77,"context_line":"                    \u0027binary\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":78,"context_line":"                    \u0027host\u0027: {\u0027type\u0027: \u0027string\u0027}"},{"line_number":79,"context_line":"                },"},{"line_number":80,"context_line":"                \u0027additionalProperties\u0027: False,"},{"line_number":81,"context_line":"                \u0027required\u0027: [\u0027binary\u0027, \u0027host\u0027]"},{"line_number":82,"context_line":"            }"},{"line_number":83,"context_line":"        },"},{"line_number":84,"context_line":"        \u0027additionalProperties\u0027: False,"},{"line_number":85,"context_line":"        \u0027required\u0027: [\u0027service\u0027]"},{"line_number":86,"context_line":"    }"},{"line_number":87,"context_line":"}"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"log_reason_disabled_service \u003d {"},{"line_number":90,"context_line":"    \u0027status_code\u0027: [200],"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_dfa14548","line":87,"range":{"start_line":69,"start_character":0,"end_line":87,"end_character":1},"in_reply_to":"3f1d235d_fede510f","updated":"2017-07-05 00:42:26.000000000","message":"Done, moving it to 2.11 schema in next patch.","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"e8af4f4a81c4c93fed6a829652095ca11eaa5eb5","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    }"},{"line_number":87,"context_line":"}"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"log_reason_disabled_service \u003d {"},{"line_number":90,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":91,"context_line":"    \u0027response_body\u0027: {"},{"line_number":92,"context_line":"        \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_b3b3720a","line":89,"range":{"start_line":89,"start_character":0,"end_line":89,"end_character":27},"updated":"2017-07-04 12:58:26.000000000","message":"who about this - disable_log_reason","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1d36047c708ac3d75f0f6f7df4bc82fa34c7aa3","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    }"},{"line_number":87,"context_line":"}"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"log_reason_disabled_service \u003d {"},{"line_number":90,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":91,"context_line":"    \u0027response_body\u0027: {"},{"line_number":92,"context_line":"        \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_ff9c010f","line":89,"range":{"start_line":89,"start_character":0,"end_line":89,"end_character":27},"in_reply_to":"3f1d235d_b3b3720a","updated":"2017-07-05 00:42:26.000000000","message":"Done","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"}],"tempest/lib/api_schema/response/compute/v2_11/services.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"35de334914a19c5d1e9a56bdd268da715152ca4f","unresolved":false,"context_lines":[{"line_number":24,"context_line":"list_services[\u0027response_body\u0027][\u0027properties\u0027][\u0027services\u0027][\u0027items\u0027]["},{"line_number":25,"context_line":"    \u0027required\u0027].append(\u0027forced_down\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"force_down_service \u003d {"},{"line_number":28,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":29,"context_line":"    \u0027response_body\u0027: {"},{"line_number":30,"context_line":"        \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_1bcaea19","line":27,"range":{"start_line":27,"start_character":0,"end_line":27,"end_character":18},"updated":"2017-07-06 14:29:18.000000000","message":"same as of service client name -update_forced_down","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"fbd9ee04beec6df6d818cbdcbb25269960076b73","unresolved":false,"context_lines":[{"line_number":24,"context_line":"list_services[\u0027response_body\u0027][\u0027properties\u0027][\u0027services\u0027][\u0027items\u0027]["},{"line_number":25,"context_line":"    \u0027required\u0027].append(\u0027forced_down\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"force_down_service \u003d {"},{"line_number":28,"context_line":"    \u0027status_code\u0027: [200],"},{"line_number":29,"context_line":"    \u0027response_body\u0027: {"},{"line_number":30,"context_line":"        \u0027type\u0027: \u0027object\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_6601336a","line":27,"range":{"start_line":27,"start_character":0,"end_line":27,"end_character":18},"in_reply_to":"3f1d235d_1bcaea19","updated":"2017-07-07 00:43:08.000000000","message":"Fixed in next patch.","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"}],"tempest/lib/services/compute/services_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"e8af4f4a81c4c93fed6a829652095ca11eaa5eb5","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def disable_log_reason(self, **kwargs):"},{"line_number":77,"context_line":"        \"\"\"Logs information about why a Compute service was disabled."},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        For a full list of available parameters, please refer to the official"},{"line_number":80,"context_line":"        API reference:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_93df5639","line":77,"range":{"start_line":77,"start_character":11,"end_line":77,"end_character":69},"updated":"2017-07-04 12:58:26.000000000","message":"this is not just log information but it does disable the service too with logs.\n\nnova api-ref also seems confusing, i will correct that.","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fd283bf66b38bb0b1de11c0f6b7f5744dc9c2634","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def disable_log_reason(self, **kwargs):"},{"line_number":77,"context_line":"        \"\"\"Logs information about why a Compute service was disabled."},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        For a full list of available parameters, please refer to the official"},{"line_number":80,"context_line":"        API reference:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_ebf69263","line":77,"range":{"start_line":77,"start_character":11,"end_line":77,"end_character":69},"in_reply_to":"3f1d235d_93df5639","updated":"2017-07-04 14:12:58.000000000","message":"https://review.openstack.org/#/c/480209/","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"b1d36047c708ac3d75f0f6f7df4bc82fa34c7aa3","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def disable_log_reason(self, **kwargs):"},{"line_number":77,"context_line":"        \"\"\"Logs information about why a Compute service was disabled."},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        For a full list of available parameters, please refer to the official"},{"line_number":80,"context_line":"        API reference:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_bf8a09bc","line":77,"range":{"start_line":77,"start_character":11,"end_line":77,"end_character":69},"in_reply_to":"3f1d235d_ebf69263","updated":"2017-07-05 00:42:26.000000000","message":"Thanks, done.","commit_id":"d9aa4b77a0e5cd148b4813948abf675b88802af4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"35de334914a19c5d1e9a56bdd268da715152ca4f","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        self.validate_response(schema.disable_log_reason, resp, body)"},{"line_number":87,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def force_down_service(self, **kwargs):"},{"line_number":90,"context_line":"        \"\"\"Set or unset ``forced_down`` flag for the service."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_9b6f1a2a","line":89,"range":{"start_line":89,"start_character":8,"end_line":89,"end_character":26},"updated":"2017-07-06 14:29:18.000000000","message":"i feel update_forced_down() would be better here. Actually this API set or unset force_down flag for nova-compute which can be further used for various purpose like fast evacuate etc.\n\nforce_down_service sounds like it forcefully down the running service.","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"fbd9ee04beec6df6d818cbdcbb25269960076b73","unresolved":false,"context_lines":[{"line_number":86,"context_line":"        self.validate_response(schema.disable_log_reason, resp, body)"},{"line_number":87,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def force_down_service(self, **kwargs):"},{"line_number":90,"context_line":"        \"\"\"Set or unset ``forced_down`` flag for the service."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        For a full list of available parameters, please refer to the official"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_a60bcb8b","line":89,"range":{"start_line":89,"start_character":8,"end_line":89,"end_character":26},"in_reply_to":"3f1d235d_9b6f1a2a","updated":"2017-07-07 00:43:08.000000000","message":"Fixed in next patch.","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"35de334914a19c5d1e9a56bdd268da715152ca4f","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        resp, body \u003d self.put(\u0027os-services/force-down\u0027, post_body)"},{"line_number":98,"context_line":"        body \u003d json.loads(body)"},{"line_number":99,"context_line":"        _schema \u003d self.get_schema(self.schema_versions_info)"},{"line_number":100,"context_line":"        self.validate_response(_schema.force_down_service, resp, body)"},{"line_number":101,"context_line":"        return rest_client.ResponseBody(resp, body)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_db26b268","line":100,"range":{"start_line":100,"start_character":31,"end_line":100,"end_character":57},"updated":"2017-07-06 14:29:18.000000000","message":"i think we should use schemav211.force_down_service directly because there is no force_down_service schema for \u003c2.11\nCurrently it would not harm as L97 will raise 404 if this function is called with microversion\u003c2.11.\nBut this is very first case where we are adding service client for new API introduced in microversion. \nI prefer we go with direct microversion schema call instead of self.get_schema.\nI thought unit tests going to fail due to this but you mocked microversion as 2.11 there which is nice.","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"fbd9ee04beec6df6d818cbdcbb25269960076b73","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        resp, body \u003d self.put(\u0027os-services/force-down\u0027, post_body)"},{"line_number":98,"context_line":"        body \u003d json.loads(body)"},{"line_number":99,"context_line":"        _schema \u003d self.get_schema(self.schema_versions_info)"},{"line_number":100,"context_line":"        self.validate_response(_schema.force_down_service, resp, body)"},{"line_number":101,"context_line":"        return rest_client.ResponseBody(resp, body)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_46d3d704","line":100,"range":{"start_line":100,"start_character":31,"end_line":100,"end_character":57},"in_reply_to":"3f1d235d_db26b268","updated":"2017-07-07 00:43:08.000000000","message":"Thanks, I thought of that, but wasn\u0027t sure. Fixed in next patch.","commit_id":"5e0cc232d5d2523087bb89331a9dd8fa2c8fb0b4"}]}
