)]}'
{"nova/tests/functional/regressions/test_bug_1702454.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e35bea08ac5098a2151ab426f82932108f3f1176","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        # As weigher prefers host1, we are sure we find it here."},{"line_number":136,"context_line":"        self.assertEqual(\u0027host1\u0027, host)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"        # Now, force host1 to be down. As we use ComputeFilter, it won\u0027t never"},{"line_number":139,"context_line":"        # be a possible destination for the scheduler now."},{"line_number":140,"context_line":"        self.admin_api.force_down_service(host, \u0027nova-compute\u0027, True)"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_1f650de2","line":138,"range":{"start_line":138,"start_character":73,"end_line":138,"end_character":78},"updated":"2017-10-28 17:52:47.000000000","message":"ever","commit_id":"361c025f6856dac97b4a427374eddfaa0cc232e6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"86ffe019b252c21a19f08304e939bb5f02ba1db8","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        self.useFixture(policy_fixture.RealPolicyFixture())"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        # The NeutronFixture is needed to stub out validate_networks in API."},{"line_number":56,"context_line":"        self.useFixture(nova_fixtures.NeutronFixture(self))"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        # We need the computes reporting into placement for the filter"},{"line_number":59,"context_line":"        # scheduler to pick a host."}],"source_content_type":"text/x-python","patch_set":4,"id":"3f4b6375_bdca7e17","line":56,"updated":"2017-10-29 17:24:27.000000000","message":"Should probably set self.flags(use_neutron\u003dTrue) if you\u0027re going to use the neutron fixture.","commit_id":"e0e2e065a495b4fa9ebdec987c935e3c83118c46"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4f119a17bafc2a1742fe8b55ed073403d831b541","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        # the server is deleted."},{"line_number":86,"context_line":"        self.start_service(\u0027consoleauth\u0027)"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"        self.start_service(\u0027conductor\u0027)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"        # Define a very basic scheduler that only verifies if host is down."},{"line_number":91,"context_line":"        self.flags(enabled_filters\u003d[\u0027ComputeFilter\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f4b6375_5d3dca2a","line":88,"updated":"2017-10-29 17:09:53.000000000","message":"You already started conductor above.","commit_id":"e0e2e065a495b4fa9ebdec987c935e3c83118c46"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c0fb3a03ddaff1e90994b82282062d47f1802c47","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        self.start_service(\u0027conductor\u0027)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        # We have to get the image before we use 2.latest otherwise we\u0027ll get"},{"line_number":77,"context_line":"        # a 404 on the /images proxy API because of 2.36."},{"line_number":78,"context_line":"        self.image_id \u003d self.api.get_images()[0][\u0027id\u0027]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"        # Use the latest microversion available to make sure something does"},{"line_number":81,"context_line":"        # not regress in new microversions; cap as necessary."}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4b6375_e89e9d05","line":78,"range":{"start_line":76,"start_character":0,"end_line":78,"end_character":54},"updated":"2017-11-01 17:04:57.000000000","message":"I guess this is copied from somewhere and should probably update this to mock Cinder in the future. Until then though...","commit_id":"6e332cb7f1f1b18d117685a0a0f5bb6a8e0c8e93"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"ea42c41b554a7deb7cfb2ba2cfd1c519e504769e","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        self.start_service(\u0027conductor\u0027)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        # We have to get the image before we use 2.latest otherwise we\u0027ll get"},{"line_number":77,"context_line":"        # a 404 on the /images proxy API because of 2.36."},{"line_number":78,"context_line":"        self.image_id \u003d self.api.get_images()[0][\u0027id\u0027]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"        # Use the latest microversion available to make sure something does"},{"line_number":81,"context_line":"        # not regress in new microversions; cap as necessary."}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4b6375_cc7e3518","line":78,"range":{"start_line":76,"start_character":0,"end_line":78,"end_character":54},"in_reply_to":"3f4b6375_cb807b49","updated":"2017-11-02 14:52:38.000000000","message":"Whoops, yeah. Then why are we still talking to the deprecated proxy APIs here?","commit_id":"6e332cb7f1f1b18d117685a0a0f5bb6a8e0c8e93"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"18619d9b3f43437dbe5386c5e0d6e11ce03edf0f","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        self.start_service(\u0027conductor\u0027)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        # We have to get the image before we use 2.latest otherwise we\u0027ll get"},{"line_number":77,"context_line":"        # a 404 on the /images proxy API because of 2.36."},{"line_number":78,"context_line":"        self.image_id \u003d self.api.get_images()[0][\u0027id\u0027]"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"        # Use the latest microversion available to make sure something does"},{"line_number":81,"context_line":"        # not regress in new microversions; cap as necessary."}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4b6375_cb807b49","line":78,"range":{"start_line":76,"start_character":0,"end_line":78,"end_character":54},"in_reply_to":"3f4b6375_e89e9d05","updated":"2017-11-01 17:18:08.000000000","message":"You mean Glance. We do have a glance fixture, that\u0027s image_fake.stub_out_image_service(self) above.","commit_id":"6e332cb7f1f1b18d117685a0a0f5bb6a8e0c8e93"}]}
