)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"537ff2d1196e610dc95b0d9c41c9b39bff1dad31","unresolved":false,"context_lines":[{"line_number":11,"context_line":"In those cases where the server response for nova list"},{"line_number":12,"context_line":"has the flavor key missing for the instances in the down cell,"},{"line_number":13,"context_line":"the servers will be skipped."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Related to blueprint handling-down-cell"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I007d9a68309b0d3aa85a4edf5026043154d4f42a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_4549835d","line":14,"updated":"2018-08-15 03:09:53.000000000","message":"Add \"Depends-On\" for nova side patch.\n\nDepends-On: https://review.openstack.org/591657/ ?","commit_id":"aecb3aaece6d7a5316e08e6769016283d106969a"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"4b8a787750a83a0d320f1a0e8be375bd08fb6e9f","unresolved":false,"context_lines":[{"line_number":11,"context_line":"In those cases where the server response for nova list"},{"line_number":12,"context_line":"has the flavor key missing for the instances in the down cell,"},{"line_number":13,"context_line":"the servers will be skipped."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Related to blueprint handling-down-cell"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I007d9a68309b0d3aa85a4edf5026043154d4f42a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_f6a15c94","line":14,"in_reply_to":"3f79a3b5_4549835d","updated":"2018-12-10 17:54:24.000000000","message":"Done","commit_id":"aecb3aaece6d7a5316e08e6769016283d106969a"}],"doc/source/cli/nova.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"aefacbcaf4a71c056c074579f44b9548cef84977","unresolved":false,"context_lines":[{"line_number":3440,"context_line":""},{"line_number":3441,"context_line":"Note that from microversion 2.69, during partial infrastructure failures in the"},{"line_number":3442,"context_line":"deployment, the output of this command may return partial results for the server"},{"line_number":3443,"context_line":"if its present in the failure domain."},{"line_number":3444,"context_line":""},{"line_number":3445,"context_line":"**Positional arguments:**"},{"line_number":3446,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9fdfeff1_75d5401b","line":3443,"range":{"start_line":3443,"start_character":3,"end_line":3443,"end_character":6},"updated":"2019-02-18 16:37:19.000000000","message":"it is -or - \"if it exists in the failure domain\"","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2e34f070d4dd90875b20ad2b7f73325e711606ee","unresolved":false,"context_lines":[{"line_number":3440,"context_line":""},{"line_number":3441,"context_line":"Note that from microversion 2.69, during partial infrastructure failures in the"},{"line_number":3442,"context_line":"deployment, the output of this command may return partial results for the server"},{"line_number":3443,"context_line":"if its present in the failure domain."},{"line_number":3444,"context_line":""},{"line_number":3445,"context_line":"**Positional arguments:**"},{"line_number":3446,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9fdfeff1_3e2475af","line":3443,"range":{"start_line":3443,"start_character":3,"end_line":3443,"end_character":6},"in_reply_to":"9fdfeff1_75d5401b","updated":"2019-02-18 18:13:17.000000000","message":"Done","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"}],"novaclient/tests/unit/v2/test_shell.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":2939,"context_line":"        self.run_command(\u0027service-list\u0027, api_version\u003d\u00272.53\u0027)"},{"line_number":2940,"context_line":"        self.assert_called(\u0027GET\u0027, \u0027/os-services\u0027)"},{"line_number":2941,"context_line":""},{"line_number":2942,"context_line":"    @mock.patch("},{"line_number":2943,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_os_services\u0027)"},{"line_number":2944,"context_line":"    def test_services_list_v269_with_down_cells(self, mock_get_services):"},{"line_number":2945,"context_line":"        get_services \u003d {"},{"line_number":2946,"context_line":"            \u0027services\u0027: ["}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_274d6e3a","line":2943,"range":{"start_line":2942,"start_character":4,"end_line":2943,"end_character":75},"updated":"2019-02-15 20:08:12.000000000","message":"While this is one way to do this, it\u0027s not generally how the unit tests in python-novaclient work. The get_os_services fake response could be modified based on microversion, like I\u0027ve done here:\n\nhttps://review.openstack.org/#/c/636779/2/novaclient/tests/unit/v2/fakes.py","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":2939,"context_line":"        self.run_command(\u0027service-list\u0027, api_version\u003d\u00272.53\u0027)"},{"line_number":2940,"context_line":"        self.assert_called(\u0027GET\u0027, \u0027/os-services\u0027)"},{"line_number":2941,"context_line":""},{"line_number":2942,"context_line":"    @mock.patch("},{"line_number":2943,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_os_services\u0027)"},{"line_number":2944,"context_line":"    def test_services_list_v269_with_down_cells(self, mock_get_services):"},{"line_number":2945,"context_line":"        get_services \u003d {"},{"line_number":2946,"context_line":"            \u0027services\u0027: ["}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_e222dd51","line":2943,"range":{"start_line":2942,"start_character":4,"end_line":2943,"end_character":75},"in_reply_to":"9fdfeff1_274d6e3a","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":2956,"context_line":"                    \u0027disabled_reason\u0027: \u0027\u0027,"},{"line_number":2957,"context_line":"                    \u0027forced_down\u0027: False"},{"line_number":2958,"context_line":"                },"},{"line_number":2959,"context_line":"                {"},{"line_number":2960,"context_line":"                    \"binary\": \"nova-compute\","},{"line_number":2961,"context_line":"                    \"host\": \"host-down\""},{"line_number":2962,"context_line":"                }"},{"line_number":2963,"context_line":"            ]"},{"line_number":2964,"context_line":"        }"},{"line_number":2965,"context_line":"        mock_get_services.return_value \u003d (200, {}, get_services)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_87577aca","line":2962,"range":{"start_line":2959,"start_character":16,"end_line":2962,"end_character":17},"updated":"2019-02-15 20:08:12.000000000","message":"This would include the \"status\": \"UNKNOWN\" key/value now.","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":2956,"context_line":"                    \u0027disabled_reason\u0027: \u0027\u0027,"},{"line_number":2957,"context_line":"                    \u0027forced_down\u0027: False"},{"line_number":2958,"context_line":"                },"},{"line_number":2959,"context_line":"                {"},{"line_number":2960,"context_line":"                    \"binary\": \"nova-compute\","},{"line_number":2961,"context_line":"                    \"host\": \"host-down\""},{"line_number":2962,"context_line":"                }"},{"line_number":2963,"context_line":"            ]"},{"line_number":2964,"context_line":"        }"},{"line_number":2965,"context_line":"        mock_get_services.return_value \u003d (200, {}, get_services)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_021e010b","line":2962,"range":{"start_line":2959,"start_character":16,"end_line":2962,"end_character":17},"in_reply_to":"9fdfeff1_87577aca","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":2969,"context_line":"| Id                                   | Binary       | Host      | Zone | Status  | State | Updated_at          | Disabled Reason | Forced down |"},{"line_number":2970,"context_line":"+--------------------------------------+--------------+-----------+------+---------+-------+---------------------+-----------------+-------------+"},{"line_number":2971,"context_line":"| 75e9eabc-ed3b-4f11-8bba-add1e7e7e2de | nova-compute | host-up   | nova | enabled | up    | 2012-10-29 13:42:02 |                 | False       |"},{"line_number":2972,"context_line":"|                                      | nova-compute | host-down |      |         |       |                     |                 |             |"},{"line_number":2973,"context_line":"+--------------------------------------+--------------+-----------+------+---------+-------+---------------------+-----------------+-------------+"},{"line_number":2974,"context_line":"\u0027\u0027\u0027,  # noqa"},{"line_number":2975,"context_line":"            stdout)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_a75abeee","line":2972,"range":{"start_line":2972,"start_character":74,"end_line":2972,"end_character":83},"updated":"2019-02-15 20:08:12.000000000","message":"UNKNOWN","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":2969,"context_line":"| Id                                   | Binary       | Host      | Zone | Status  | State | Updated_at          | Disabled Reason | Forced down |"},{"line_number":2970,"context_line":"+--------------------------------------+--------------+-----------+------+---------+-------+---------------------+-----------------+-------------+"},{"line_number":2971,"context_line":"| 75e9eabc-ed3b-4f11-8bba-add1e7e7e2de | nova-compute | host-up   | nova | enabled | up    | 2012-10-29 13:42:02 |                 | False       |"},{"line_number":2972,"context_line":"|                                      | nova-compute | host-down |      |         |       |                     |                 |             |"},{"line_number":2973,"context_line":"+--------------------------------------+--------------+-----------+------+---------+-------+---------------------+-----------------+-------------+"},{"line_number":2974,"context_line":"\u0027\u0027\u0027,  # noqa"},{"line_number":2975,"context_line":"            stdout)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_a218551d","line":2972,"range":{"start_line":2972,"start_character":74,"end_line":2972,"end_character":83},"in_reply_to":"9fdfeff1_a75abeee","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":4144,"context_line":"        self.assert_called(\u0027GET\u0027, \u0027/servers/detail?not-tags-any\u003dtag1%2Ctag2\u0027)"},{"line_number":4145,"context_line":""},{"line_number":4146,"context_line":"    @mock.patch("},{"line_number":4147,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers_detail\u0027)"},{"line_number":4148,"context_line":"    @mock.patch(\u0027novaclient.v2.shell._expand_dict_attr\u0027)"},{"line_number":4149,"context_line":"    def test_list_detail_v269_with_down_cells(self, mock_eda, mock_get_server):"},{"line_number":4150,"context_line":"        server_1234 \u003d {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_076b8a84","line":4147,"updated":"2019-02-15 20:08:12.000000000","message":"same as above","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":4144,"context_line":"        self.assert_called(\u0027GET\u0027, \u0027/servers/detail?not-tags-any\u003dtag1%2Ctag2\u0027)"},{"line_number":4145,"context_line":""},{"line_number":4146,"context_line":"    @mock.patch("},{"line_number":4147,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers_detail\u0027)"},{"line_number":4148,"context_line":"    @mock.patch(\u0027novaclient.v2.shell._expand_dict_attr\u0027)"},{"line_number":4149,"context_line":"    def test_list_detail_v269_with_down_cells(self, mock_eda, mock_get_server):"},{"line_number":4150,"context_line":"        server_1234 \u003d {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_c2131900","line":4147,"in_reply_to":"9fdfeff1_076b8a84","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":4147,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers_detail\u0027)"},{"line_number":4148,"context_line":"    @mock.patch(\u0027novaclient.v2.shell._expand_dict_attr\u0027)"},{"line_number":4149,"context_line":"    def test_list_detail_v269_with_down_cells(self, mock_eda, mock_get_server):"},{"line_number":4150,"context_line":"        server_1234 \u003d {"},{"line_number":4151,"context_line":"            \"id\": 1234,"},{"line_number":4152,"context_line":"            \"name\": \"sample-server\","},{"line_number":4153,"context_line":"            \"image\": {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_2766cebc","line":4150,"range":{"start_line":4150,"start_character":8,"end_line":4150,"end_character":19},"updated":"2019-02-15 20:08:12.000000000","message":"This and the one below should technically have a \u0027links\u0027 entry.","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":4147,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers_detail\u0027)"},{"line_number":4148,"context_line":"    @mock.patch(\u0027novaclient.v2.shell._expand_dict_attr\u0027)"},{"line_number":4149,"context_line":"    def test_list_detail_v269_with_down_cells(self, mock_eda, mock_get_server):"},{"line_number":4150,"context_line":"        server_1234 \u003d {"},{"line_number":4151,"context_line":"            \"id\": 1234,"},{"line_number":4152,"context_line":"            \"name\": \"sample-server\","},{"line_number":4153,"context_line":"            \"image\": {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_82d75123","line":4150,"range":{"start_line":4150,"start_character":8,"end_line":4150,"end_character":19},"in_reply_to":"9fdfeff1_2766cebc","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":4199,"context_line":"| ID   | Name          | Status  | Task State | Power State | Networks                |"},{"line_number":4200,"context_line":"+------+---------------+---------+------------+-------------+-------------------------+"},{"line_number":4201,"context_line":"| 5678 |               | UNKNOWN | N/A        | N/A         |                         |"},{"line_number":4202,"context_line":"| 1234 | sample-server | BUILD   | N/A        | N/A         | public\u003d1.2.3.4, 5.6.7.8 |"},{"line_number":4203,"context_line":"+------+---------------+---------+------------+-------------+-------------------------+"},{"line_number":4204,"context_line":"\u0027\u0027\u0027,  # noqa"},{"line_number":4205,"context_line":"            stdout)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_07194a20","line":4202,"range":{"start_line":4202,"start_character":35,"end_line":4202,"end_character":51},"updated":"2019-02-15 20:08:12.000000000","message":"nit: this looks a bit weird but I realize it\u0027s just based on fake data","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":4209,"context_line":"            \u0027flavor\u0027)"},{"line_number":4210,"context_line":""},{"line_number":4211,"context_line":"    @mock.patch("},{"line_number":4212,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers\u0027)"},{"line_number":4213,"context_line":"    def test_list_v269_with_down_cells(self, mock_get_servers):"},{"line_number":4214,"context_line":"        get_servers \u003d {"},{"line_number":4215,"context_line":"            \"servers\": ["}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_c7d4a222","line":4212,"updated":"2019-02-15 20:08:12.000000000","message":"same","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":4209,"context_line":"            \u0027flavor\u0027)"},{"line_number":4210,"context_line":""},{"line_number":4211,"context_line":"    @mock.patch("},{"line_number":4212,"context_line":"        \u0027novaclient.tests.unit.v2.fakes.FakeSessionClient.get_servers\u0027)"},{"line_number":4213,"context_line":"    def test_list_v269_with_down_cells(self, mock_get_servers):"},{"line_number":4214,"context_line":"        get_servers \u003d {"},{"line_number":4215,"context_line":"            \"servers\": ["}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_bdb07441","line":4212,"in_reply_to":"9fdfeff1_c7d4a222","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":4237,"context_line":"    def test_show_v269_with_down_cells(self, mock_get_server):"},{"line_number":4238,"context_line":"        get_server \u003d {"},{"line_number":4239,"context_line":"            \"server\": {"},{"line_number":4240,"context_line":"                \"OS-EXT-AZ:availability_zone\": \"nova\","},{"line_number":4241,"context_line":"                \"OS-EXT-STS:power_state\": 0,"},{"line_number":4242,"context_line":"                \"created\": \"2018-12-03T21:06:18Z\","},{"line_number":4243,"context_line":"                \"flavor\": {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_87da1a48","line":4240,"range":{"start_line":4240,"start_character":48,"end_line":4240,"end_character":52},"updated":"2019-02-15 20:08:12.000000000","message":"nit: let\u0027s make this UNKNOWN or something else like \"geneva\".","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"d8acc33f841f5f9ac4ed41f79de7b6d2e103a8f2","unresolved":false,"context_lines":[{"line_number":4237,"context_line":"    def test_show_v269_with_down_cells(self, mock_get_server):"},{"line_number":4238,"context_line":"        get_server \u003d {"},{"line_number":4239,"context_line":"            \"server\": {"},{"line_number":4240,"context_line":"                \"OS-EXT-AZ:availability_zone\": \"nova\","},{"line_number":4241,"context_line":"                \"OS-EXT-STS:power_state\": 0,"},{"line_number":4242,"context_line":"                \"created\": \"2018-12-03T21:06:18Z\","},{"line_number":4243,"context_line":"                \"flavor\": {"}],"source_content_type":"text/x-python","patch_set":7,"id":"9fdfeff1_5d85c858","line":4240,"range":{"start_line":4240,"start_character":48,"end_line":4240,"end_character":52},"in_reply_to":"9fdfeff1_87da1a48","updated":"2019-02-18 12:55:56.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"aefacbcaf4a71c056c074579f44b9548cef84977","unresolved":false,"context_lines":[{"line_number":2947,"context_line":"| Id                                   | Binary       | Host      | Zone | Status   | State | Updated_at          | Disabled Reason | Forced down |"},{"line_number":2948,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2949,"context_line":"| 75e9eabc-ed3b-4f11-8bba-add1e7e7e2de | nova-compute | host1     | nova | enabled  | up    | 2012-10-29 13:42:02 |                 |             |"},{"line_number":2950,"context_line":"| 1f140183-c914-4ddf-8757-6df73028aa86 | nova-compute | host1     | nova | disabled | down  | 2012-09-18 08:03:38 |                 |             |"},{"line_number":2951,"context_line":"|                                      | nova-compute | host-down |      | UNKNOWN  |       |                     |                 |             |"},{"line_number":2952,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2953,"context_line":"\u0027\u0027\u0027,  # noqa"}],"source_content_type":"text/x-python","patch_set":8,"id":"9fdfeff1_15b3940c","line":2950,"updated":"2019-02-18 16:37:19.000000000","message":"nit: something is messed up in the fake because nova-compute shouldn\u0027t show up more than once for the same host (host1).","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2e34f070d4dd90875b20ad2b7f73325e711606ee","unresolved":false,"context_lines":[{"line_number":2947,"context_line":"| Id                                   | Binary       | Host      | Zone | Status   | State | Updated_at          | Disabled Reason | Forced down |"},{"line_number":2948,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2949,"context_line":"| 75e9eabc-ed3b-4f11-8bba-add1e7e7e2de | nova-compute | host1     | nova | enabled  | up    | 2012-10-29 13:42:02 |                 |             |"},{"line_number":2950,"context_line":"| 1f140183-c914-4ddf-8757-6df73028aa86 | nova-compute | host1     | nova | disabled | down  | 2012-09-18 08:03:38 |                 |             |"},{"line_number":2951,"context_line":"|                                      | nova-compute | host-down |      | UNKNOWN  |       |                     |                 |             |"},{"line_number":2952,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2953,"context_line":"\u0027\u0027\u0027,  # noqa"}],"source_content_type":"text/x-python","patch_set":8,"id":"9fdfeff1_831c2e78","line":2950,"in_reply_to":"9fdfeff1_15b3940c","updated":"2019-02-18 18:13:17.000000000","message":"I noticed it too, but it looks like it was that way from the beginning since I added a completely new node called \"host-down\"","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"aefacbcaf4a71c056c074579f44b9548cef84977","unresolved":false,"context_lines":[{"line_number":4125,"context_line":"    def test_list_detail_v269_with_down_cells(self):"},{"line_number":4126,"context_line":"        \"\"\"Tests nova list at the 2.69 microversion.\"\"\""},{"line_number":4127,"context_line":"        stdout, _stderr \u003d self.run_command(\u0027list\u0027, api_version\u003d\u00272.69\u0027)"},{"line_number":4128,"context_line":"        self.assertIn(\u0027\u0027\u0027\\"},{"line_number":4129,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"},{"line_number":4130,"context_line":"| ID   | Name           | Status  | Task State | Power State | Networks                                     |"},{"line_number":4131,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"}],"source_content_type":"text/x-python","patch_set":8,"id":"9fdfeff1_95c6a468","line":4128,"range":{"start_line":4128,"start_character":13,"end_line":4128,"end_character":21},"updated":"2019-02-18 16:37:19.000000000","message":"Why is this assertIn rather than assertEqual? Are there mlutiple servers in the response and if so, are the results sorted such that we always get the server from the down cell in the first row?","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2e34f070d4dd90875b20ad2b7f73325e711606ee","unresolved":false,"context_lines":[{"line_number":4125,"context_line":"    def test_list_detail_v269_with_down_cells(self):"},{"line_number":4126,"context_line":"        \"\"\"Tests nova list at the 2.69 microversion.\"\"\""},{"line_number":4127,"context_line":"        stdout, _stderr \u003d self.run_command(\u0027list\u0027, api_version\u003d\u00272.69\u0027)"},{"line_number":4128,"context_line":"        self.assertIn(\u0027\u0027\u0027\\"},{"line_number":4129,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"},{"line_number":4130,"context_line":"| ID   | Name           | Status  | Task State | Power State | Networks                                     |"},{"line_number":4131,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"}],"source_content_type":"text/x-python","patch_set":8,"id":"9fdfeff1_be162549","line":4128,"range":{"start_line":4128,"start_character":13,"end_line":4128,"end_character":21},"in_reply_to":"9fdfeff1_95c6a468","updated":"2019-02-18 18:13:17.000000000","message":"yea the results are always such that the ones from the down ones are first (by default).\n\nIts assertIn instead of Equals because I gave up on finding whatever was fishy in the result composer which made it alternative the format for \"private: and public\" network information every time I ran the test. I can upload the original version for this test and perhaps you can point me to the \"how to fix it part\".","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"bbda789b11e2a34a0f6fb46dabc2d67bca272670","unresolved":false,"context_lines":[{"line_number":2946,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2947,"context_line":"| Id                                   | Binary       | Host      | Zone | Status   | State | Updated_at          | Disabled Reason | Forced down |"},{"line_number":2948,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"},{"line_number":2949,"context_line":"| 75e9eabc-ed3b-4f11-8bba-add1e7e7e2de | nova-compute | host1     | nova | enabled  | up    | 2012-10-29 13:42:02 |                 |             |"},{"line_number":2950,"context_line":"| 1f140183-c914-4ddf-8757-6df73028aa86 | nova-compute | host1     | nova | disabled | down  | 2012-09-18 08:03:38 |                 |             |"},{"line_number":2951,"context_line":"|                                      | nova-compute | host-down |      | UNKNOWN  |       |                     |                 |             |"},{"line_number":2952,"context_line":"+--------------------------------------+--------------+-----------+------+----------+-------+---------------------+-----------------+-------------+"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fdfeff1_7ec0bde1","line":2949,"range":{"start_line":2949,"start_character":56,"end_line":2949,"end_character":61},"updated":"2019-02-18 19:03:53.000000000","message":"I know this looks weird (having two host1\u0027s when hostnames are supposed to be unique), maybe I have to fix it in an underneath patch since its a different existing issue","commit_id":"4cf3af931b6ce702b9957737891e02716055057a"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"438b68e51c7f131cb89b57b59aea5885f62077e9","unresolved":false,"context_lines":[{"line_number":4131,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"},{"line_number":4132,"context_line":"| 9015 |                | UNKNOWN | N/A        | N/A         |                                              |"},{"line_number":4133,"context_line":"| 9014 | help           | ACTIVE  | N/A        | N/A         |                                              |"},{"line_number":4134,"context_line":"| 1234 | sample-server  | BUILD   | N/A        | N/A         | public\u003d1.2.3.4, 5.6.7.8; private\u003d10.11.12.13 |"},{"line_number":4135,"context_line":"| 5678 | sample-server2 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4136,"context_line":"| 9012 | sample-server3 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4137,"context_line":"| 9013 | sample-server4 | ACTIVE  | N/A        | N/A         |                                              |"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fdfeff1_7e975ded","line":4134,"range":{"start_line":4134,"start_character":63,"end_line":4134,"end_character":107},"updated":"2019-02-18 19:01:57.000000000","message":"this order is different every time the test is run, so I did a workaround which involved not investigating too much :D and hence went for the assertIn.","commit_id":"4cf3af931b6ce702b9957737891e02716055057a"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"a6ca512233f4ab2b50594a6ea0dad9c6b464cada","unresolved":false,"context_lines":[{"line_number":4131,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"},{"line_number":4132,"context_line":"| 9015 |                | UNKNOWN | N/A        | N/A         |                                              |"},{"line_number":4133,"context_line":"| 9014 | help           | ACTIVE  | N/A        | N/A         |                                              |"},{"line_number":4134,"context_line":"| 1234 | sample-server  | BUILD   | N/A        | N/A         | public\u003d1.2.3.4, 5.6.7.8; private\u003d10.11.12.13 |"},{"line_number":4135,"context_line":"| 5678 | sample-server2 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4136,"context_line":"| 9012 | sample-server3 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4137,"context_line":"| 9013 | sample-server4 | ACTIVE  | N/A        | N/A         |                                              |"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fdfeff1_d04c28ca","line":4134,"range":{"start_line":4134,"start_character":63,"end_line":4134,"end_character":107},"in_reply_to":"9fdfeff1_7e975ded","updated":"2019-02-19 12:35:37.000000000","message":"like I said: http://logs.openstack.org/63/579563/9/check/openstack-tox-py27/1d886de/testr_results.html.gz\n\nnot sure why though.!","commit_id":"4cf3af931b6ce702b9957737891e02716055057a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fed62cf9851330e1a455aee20d82bac2c04714ff","unresolved":false,"context_lines":[{"line_number":4131,"context_line":"+------+----------------+---------+------------+-------------+----------------------------------------------+"},{"line_number":4132,"context_line":"| 9015 |                | UNKNOWN | N/A        | N/A         |                                              |"},{"line_number":4133,"context_line":"| 9014 | help           | ACTIVE  | N/A        | N/A         |                                              |"},{"line_number":4134,"context_line":"| 1234 | sample-server  | BUILD   | N/A        | N/A         | public\u003d1.2.3.4, 5.6.7.8; private\u003d10.11.12.13 |"},{"line_number":4135,"context_line":"| 5678 | sample-server2 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4136,"context_line":"| 9012 | sample-server3 | ACTIVE  | N/A        | N/A         | public\u003d4.5.6.7, 5.6.9.8; private\u003d10.13.12.13 |"},{"line_number":4137,"context_line":"| 9013 | sample-server4 | ACTIVE  | N/A        | N/A         |                                              |"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fdfeff1_125a9429","line":4134,"range":{"start_line":4134,"start_character":63,"end_line":4134,"end_character":107},"in_reply_to":"9fdfeff1_d04c28ca","updated":"2019-02-20 17:15:15.000000000","message":"I fixed this in a preceding change.","commit_id":"4cf3af931b6ce702b9957737891e02716055057a"}],"novaclient/v2/shell.py":[{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"459e105798c5bb38b7e27889194302f75e5586dd","unresolved":false,"context_lines":[{"line_number":1671,"context_line":"    # the \"flavor\" attribute with more detailed information."},{"line_number":1672,"context_line":"    if detailed and have_embedded_flavor_info:"},{"line_number":1673,"context_line":"        if cs.api_version \u003e\u003d api_versions.APIVersion(\u00272.68\u0027):"},{"line_number":1674,"context_line":"            # NOTE(tssurya): From 68, we will have the key \u0027flavor\u0027 missing in"},{"line_number":1675,"context_line":"            # the server response during infrastructure failure situations."},{"line_number":1676,"context_line":"            # For those servers with partial constructs we just skip the"},{"line_number":1677,"context_line":"            # process of expanding the flavor information."}],"source_content_type":"text/x-python","patch_set":4,"id":"9fdfeff1_a66beeb4","line":1674,"range":{"start_line":1674,"start_character":34,"end_line":1674,"end_character":36},"updated":"2019-01-28 18:17:18.000000000","message":"nit: 2.68","commit_id":"7183ac235ed1af487899159b29efcf74201ed63e"}],"releasenotes/notes/bp-handling-down-cell-728cdb1efd1ea75b.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    From microversion 2.69 the results of `GET /servers``,"},{"line_number":5,"context_line":"    ``GET /servers/detail``, ``GET /servers/{server_id}`` and"},{"line_number":6,"context_line":"    ``GET /os-services`` will contain missing keys during down cell situations"},{"line_number":7,"context_line":"    because of adding support for returning minimal constructs based on the"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9fdfeff1_87b3fa09","line":4,"updated":"2019-02-15 20:08:12.000000000","message":"This is just copied from the REST API release note, but doesn\u0027t map to what\u0027s impacted in the nova CLI, so it would be good to mention impacts to:\n\n- nova list\n- nova show\n- nova service-list\n\nWe should probably also mention something about 2.69 in the CLI reference for those commands:\n\nhttps://github.com/openstack/python-novaclient/blob/master/doc/source/cli/nova.rst","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"df2140694fe076805277571af3c6ae80b96aed52","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    From microversion 2.69 the results of `GET /servers``,"},{"line_number":5,"context_line":"    ``GET /servers/detail``, ``GET /servers/{server_id}`` and"},{"line_number":6,"context_line":"    ``GET /os-services`` will contain missing keys during down cell situations"},{"line_number":7,"context_line":"    because of adding support for returning minimal constructs based on the"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9fdfeff1_981edeb8","line":4,"in_reply_to":"9fdfeff1_87b3fa09","updated":"2019-02-18 13:57:36.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"40d03d395d0315c560defcd5aac625e45cc813c3","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /os-services`` will contain missing keys during down cell situations"},{"line_number":7,"context_line":"    because of adding support for returning minimal constructs based on the"},{"line_number":8,"context_line":"    available information from the API database for those records in the"},{"line_number":9,"context_line":"    down cells. See `handling_down_cells`_ for more information on the missing"},{"line_number":10,"context_line":"    keys."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"    .. _handling_down_cells: https://developer.openstack.org/api-guide/compute/server_concepts.html#handling-down-cells"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9fdfeff1_67e37606","line":9,"range":{"start_line":9,"start_character":21,"end_line":9,"end_character":40},"updated":"2019-02-15 20:08:12.000000000","message":"Handling Down Cells","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"df2140694fe076805277571af3c6ae80b96aed52","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``GET /os-services`` will contain missing keys during down cell situations"},{"line_number":7,"context_line":"    because of adding support for returning minimal constructs based on the"},{"line_number":8,"context_line":"    available information from the API database for those records in the"},{"line_number":9,"context_line":"    down cells. See `handling_down_cells`_ for more information on the missing"},{"line_number":10,"context_line":"    keys."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"    .. _handling_down_cells: https://developer.openstack.org/api-guide/compute/server_concepts.html#handling-down-cells"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9fdfeff1_f8236a03","line":9,"range":{"start_line":9,"start_character":21,"end_line":9,"end_character":40},"in_reply_to":"9fdfeff1_67e37606","updated":"2019-02-18 13:57:36.000000000","message":"Done","commit_id":"53643cd91b4d5f8fcbea1a0d161f54969e04a7e5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"aefacbcaf4a71c056c074579f44b9548cef84977","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    when there are partial infrastructure failure periods in the deployment."},{"line_number":7,"context_line":"    See `Handling Down Cells`_ for more information on the missing keys/info."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    .. _Handling Down Cells: https://developer.openstack.org/api-guide/compute/server_concepts.html#handling-down-cells"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fdfeff1_158154fc","line":9,"range":{"start_line":9,"start_character":79,"end_line":9,"end_character":119},"updated":"2019-02-18 16:37:19.000000000","message":"This link no longer exists.\n\nShould just be:\n\nhttps://developer.openstack.org/api-guide/compute/down_cells.html","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2e34f070d4dd90875b20ad2b7f73325e711606ee","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    when there are partial infrastructure failure periods in the deployment."},{"line_number":7,"context_line":"    See `Handling Down Cells`_ for more information on the missing keys/info."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    .. _Handling Down Cells: https://developer.openstack.org/api-guide/compute/server_concepts.html#handling-down-cells"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9fdfeff1_de38c9d5","line":9,"range":{"start_line":9,"start_character":79,"end_line":9,"end_character":119},"in_reply_to":"9fdfeff1_158154fc","updated":"2019-02-18 18:13:17.000000000","message":"oh yea!","commit_id":"ebc455b5c04928eeccf737608f75d9efb1f27eea"}]}
