)]}'
{"doc/source/command-objects/server.rst":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"5332b295288774dc30c41498aff8503e07873aaf","unresolved":false,"context_lines":[{"line_number":382,"context_line":""},{"line_number":383,"context_line":".. option:: --image \u003cimage\u003e"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    Recreate server from this image (name or ID)"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":".. option:: --password \u003cpassword\u003e"},{"line_number":388,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_5448922d","line":385,"updated":"2015-12-10 07:08:35.000000000","message":"set this to:\n\n  \u0027Recreate server from the specified image (name or ID). Defaults to the currently used one.\u0027","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"}],"openstackclient/compute/v2/server.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"85344fc045f81af9493d11c740eae211d3405e2e","unresolved":false,"context_lines":[{"line_number":1103,"context_line":"        parser.add_argument("},{"line_number":1104,"context_line":"            \u0027--image\u0027,"},{"line_number":1105,"context_line":"            metavar\u003d\u0027\u003cimage\u003e\u0027,"},{"line_number":1106,"context_line":"            help\u003d_(\u0027Recreate server from the specified image. Defaults to the \u0027"},{"line_number":1107,"context_line":"                   \u0027currently used one.\u0027),"},{"line_number":1108,"context_line":"        )"},{"line_number":1109,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_db1603f1","line":1106,"updated":"2015-12-09 22:05:53.000000000","message":"can you add \"(name or ID)\" after \"image\"?","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":1103,"context_line":"        parser.add_argument("},{"line_number":1104,"context_line":"            \u0027--image\u0027,"},{"line_number":1105,"context_line":"            metavar\u003d\u0027\u003cimage\u003e\u0027,"},{"line_number":1106,"context_line":"            help\u003d_(\u0027Recreate server from the specified image. Defaults to the \u0027"},{"line_number":1107,"context_line":"                   \u0027currently used one.\u0027),"},{"line_number":1108,"context_line":"        )"},{"line_number":1109,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_4f2b2634","line":1106,"in_reply_to":"7a740942_db1603f1","updated":"2015-12-10 01:46:06.000000000","message":"+1","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":1127,"context_line":""},{"line_number":1128,"context_line":"        # If parsed_args.image is not set, default to the currently used one"},{"line_number":1129,"context_line":"        if parsed_args.image:"},{"line_number":1130,"context_line":"            image_id \u003d parsed_args.image"},{"line_number":1131,"context_line":"        else:"},{"line_number":1132,"context_line":"            image_info \u003d server._info.get(\u0027image\u0027, {})"},{"line_number":1133,"context_line":"            image_id \u003d image_info.get(\u0027id\u0027, \u0027\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_4fa006a6","line":1130,"updated":"2015-12-10 01:46:06.000000000","message":"Here too. it could be name or ID.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"85344fc045f81af9493d11c740eae211d3405e2e","unresolved":false,"context_lines":[{"line_number":1129,"context_line":"        if parsed_args.image:"},{"line_number":1130,"context_line":"            image_id \u003d parsed_args.image"},{"line_number":1131,"context_line":"        else:"},{"line_number":1132,"context_line":"            image_info \u003d server._info.get(\u0027image\u0027, {})"},{"line_number":1133,"context_line":"            image_id \u003d image_info.get(\u0027id\u0027, \u0027\u0027)"},{"line_number":1134,"context_line":""},{"line_number":1135,"context_line":"        image \u003d utils.find_resource(compute_client.images, image_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_1bf6cbd7","line":1132,"updated":"2015-12-09 22:05:53.000000000","message":"how\u0027s about?\n\n  image \u003d parsed_args.image or server._info.get(\u0027image\u0027, {}).get(\u0027id\u0027)\n\n  if not image_id:\n    some message about couldn\u0027t determine image, and return","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"}],"openstackclient/tests/compute/v2/test_server.py":[{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":747,"context_line":"        self.servers_mock.get.return_value \u003d self.server"},{"line_number":748,"context_line":""},{"line_number":749,"context_line":"        # Return value for utils.find_resource for flavor"},{"line_number":750,"context_line":"        self.flavors_get_return_value \u003d \\"},{"line_number":751,"context_line":"            compute_fakes.FakeFlavor.create_one_flavor()"},{"line_number":752,"context_line":"        self.flavors_mock.get.return_value \u003d self.flavors_get_return_value"},{"line_number":753,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_4fc6c617","line":750,"updated":"2015-12-10 01:46:06.000000000","message":"Well, I don\u0027t think you need this variable. It was used in some test cases, but I don\u0027t really like it. Please assign to flavors_mock.get.return_value directly.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":752,"context_line":"        self.flavors_mock.get.return_value \u003d self.flavors_get_return_value"},{"line_number":753,"context_line":""},{"line_number":754,"context_line":"        # Return value for utils.find_resource for image"},{"line_number":755,"context_line":"        self.image \u003d image_fakes.FakeImage.create_one_image()"},{"line_number":756,"context_line":"        self.images_mock.get.return_value \u003d self.image"},{"line_number":757,"context_line":""},{"line_number":758,"context_line":"        self.servers_mock.rebuild.return_value \u003d self.server"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_12a46506","line":755,"updated":"2015-12-10 01:46:06.000000000","message":"Here you faked an image. Please see below.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":772,"context_line":"        self.cmd.take_action(parsed_args)"},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"        self.servers_mock.get.assert_called_with("},{"line_number":775,"context_line":"            self.server.id,"},{"line_number":776,"context_line":"        )"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"    def test_rebuild_with_specified_image(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_cf5dd649","line":775,"updated":"2015-12-10 01:46:06.000000000","message":"Should we also check find_resource() was called with image_id ?  Because in your source code in server.py, find_resource() is called twice anyway, with server_id and image_id.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":773,"context_line":""},{"line_number":774,"context_line":"        self.servers_mock.get.assert_called_with("},{"line_number":775,"context_line":"            self.server.id,"},{"line_number":776,"context_line":"        )"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"    def test_rebuild_with_specified_image(self):"},{"line_number":779,"context_line":"        arglist \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_6f2f02f7","line":776,"updated":"2015-12-10 01:46:06.000000000","message":"You should also check rebuild() is called with correct parameters, which I think, are image and password.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":775,"context_line":"            self.server.id,"},{"line_number":776,"context_line":"        )"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"    def test_rebuild_with_specified_image(self):"},{"line_number":779,"context_line":"        arglist \u003d ["},{"line_number":780,"context_line":"            self.server.id,"},{"line_number":781,"context_line":"            \u0027--image\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_cf7b9628","line":778,"updated":"2015-12-10 01:46:06.000000000","message":"And please also add test case for specifying image name.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":779,"context_line":"        arglist \u003d ["},{"line_number":780,"context_line":"            self.server.id,"},{"line_number":781,"context_line":"            \u0027--image\u0027,"},{"line_number":782,"context_line":"            \u0027image-uuid\u0027,"},{"line_number":783,"context_line":"        ]"},{"line_number":784,"context_line":"        verifylist \u003d ["},{"line_number":785,"context_line":"            (\u0027server\u0027, self.server.id),"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_52fe6d06","line":782,"updated":"2015-12-10 01:46:06.000000000","message":"You faked an image, but you are using a string \u0027image-uuid\u0027, not image.id, and please see below.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":791,"context_line":""},{"line_number":792,"context_line":"        self.servers_mock.get.assert_called_with("},{"line_number":793,"context_line":"            self.server.id,"},{"line_number":794,"context_line":"            self.image.id"},{"line_number":795,"context_line":"        )"},{"line_number":796,"context_line":""},{"line_number":797,"context_line":"class TestServerResize(TestServer):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_b247914a","line":794,"updated":"2015-12-10 01:46:06.000000000","message":"image.id obviously does not equal to \u0027image-uuid\u0027. But it won\u0027t fail here because find_resource() is not really called. You faked the return value, and returned the image you created. So, please use image.id above.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"ebb09c1e59e71eedcc8110e3d9af18dc788358d1","unresolved":false,"context_lines":[{"line_number":792,"context_line":"        self.servers_mock.get.assert_called_with("},{"line_number":793,"context_line":"            self.server.id,"},{"line_number":794,"context_line":"            self.image.id"},{"line_number":795,"context_line":"        )"},{"line_number":796,"context_line":""},{"line_number":797,"context_line":"class TestServerResize(TestServer):"},{"line_number":798,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_8f482ece","line":795,"updated":"2015-12-10 01:46:06.000000000","message":"Here too, please check rebuild() is called with correct parameters.","commit_id":"dda34539b7d9cd463f51898eeae5411dc609ecda"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"b3ffb9cd17db2ef8a78ea5aa5e6c2a72399e5775","unresolved":false,"context_lines":[{"line_number":746,"context_line":"            },"},{"line_number":747,"context_line":"            \u0027networks\u0027: {"},{"line_number":748,"context_line":"                \u0027public\u0027: [\u002710.20.30.40\u0027, \u00272001:db8::5\u0027]"},{"line_number":749,"context_line":"            },"},{"line_number":750,"context_line":"            \u0027adminPass\u0027: \u0027passw0rd\u0027"},{"line_number":751,"context_line":"        }"},{"line_number":752,"context_line":"        fake_server \u003d compute_fakes.FakeServer.create_one_server(attrs\u003dattrs)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a740942_1e98ee69","line":749,"updated":"2015-12-10 04:39:37.000000000","message":"networks is not necessary. I would prefer to remove it.","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"b3ffb9cd17db2ef8a78ea5aa5e6c2a72399e5775","unresolved":false,"context_lines":[{"line_number":749,"context_line":"            },"},{"line_number":750,"context_line":"            \u0027adminPass\u0027: \u0027passw0rd\u0027"},{"line_number":751,"context_line":"        }"},{"line_number":752,"context_line":"        fake_server \u003d compute_fakes.FakeServer.create_one_server(attrs\u003dattrs)"},{"line_number":753,"context_line":""},{"line_number":754,"context_line":"        methods \u003d {"},{"line_number":755,"context_line":"            \u0027rebuild\u0027: fake_server"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a740942_beee7ab2","line":752,"updated":"2015-12-10 04:39:37.000000000","message":"Can we rename it to rebuilt_server or something for meanful ?","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"5332b295288774dc30c41498aff8503e07873aaf","unresolved":false,"context_lines":[{"line_number":785,"context_line":"        self.server.rebuild.assert_called_with(self.image, None)"},{"line_number":786,"context_line":""},{"line_number":787,"context_line":"    def test_rebuild_with_current_image_and_password(self):"},{"line_number":788,"context_line":"        password \u003d \u0027h4x0r\u0027"},{"line_number":789,"context_line":"        arglist \u003d ["},{"line_number":790,"context_line":"            self.server.id,"},{"line_number":791,"context_line":"            \u0027--password\u0027, password"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a740942_541df20d","line":788,"updated":"2015-12-10 07:08:35.000000000","message":"may as well just use uuid.uuid4().hex, or the one from identity_fakes","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"5332b295288774dc30c41498aff8503e07873aaf","unresolved":false,"context_lines":[{"line_number":803,"context_line":"        self.cimages_mock.get.assert_called_with(self.image.id)"},{"line_number":804,"context_line":"        self.server.rebuild.assert_called_with(self.image, password)"},{"line_number":805,"context_line":""},{"line_number":806,"context_line":"class TestServerResize(TestServer):"},{"line_number":807,"context_line":""},{"line_number":808,"context_line":"    def setUp(self):"},{"line_number":809,"context_line":"        super(TestServerResize, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a740942_f4bdfe02","line":806,"updated":"2015-12-10 07:08:35.000000000","message":"need another blank line before here, or pep8 complains","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"face4d6b2cbcb15a95373e2343c00d5870f175ed","unresolved":false,"context_lines":[{"line_number":803,"context_line":"        self.cimages_mock.get.assert_called_with(self.image.id)"},{"line_number":804,"context_line":"        self.server.rebuild.assert_called_with(self.image, password)"},{"line_number":805,"context_line":""},{"line_number":806,"context_line":"class TestServerResize(TestServer):"},{"line_number":807,"context_line":""},{"line_number":808,"context_line":"    def setUp(self):"},{"line_number":809,"context_line":"        super(TestServerResize, self).setUp()"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a740942_af04ffc5","line":806,"in_reply_to":"7a740942_f4bdfe02","updated":"2015-12-10 07:33:15.000000000","message":"Yes, this is why the CI failed.","commit_id":"832e2823c4dbea145bc6a004428c288041b3b746"}]}
