)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e3372e9e45fd21f7b51fe06713ce7d1d0f14ca5e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     sunyajing \u003cyajing.sun@easystack.cn\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-05-13 13:09:57 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add unit test for floating ip add/remove command"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I99b231b4474ced7bb7a0ce95d02c235fbef08891"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"dab17558_7d7310b5","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":48},"updated":"2016-05-13 05:18:07.000000000","message":"you are doing a bit more than that :)\n\nthe floatingip code itself was changed","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"}],"openstackclient/compute/v2/floatingip.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e3372e9e45fd21f7b51fe06713ce7d1d0f14ca5e","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        server \u003d utils.find_resource("},{"line_number":43,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        compute_client.servers.add_floating_ip("},{"line_number":46,"context_line":"            server, parsed_args.ip_address)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RemoveFloatingIP(command.Command):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_fd39c0d9","line":46,"range":{"start_line":45,"start_character":8,"end_line":46,"end_character":43},"updated":"2016-05-13 05:18:07.000000000","message":"why change this? was it not working?","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"},{"author":{"_account_id":14937,"name":"Tang Chen","email":"imtangchen@163.com","username":"tangchen"},"change_message_id":"d0cba102856e38b08ceb013c0a801f225e2268bd","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        server \u003d utils.find_resource("},{"line_number":43,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        compute_client.servers.add_floating_ip("},{"line_number":46,"context_line":"            server, parsed_args.ip_address)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RemoveFloatingIP(command.Command):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_d2066284","line":46,"range":{"start_line":45,"start_character":8,"end_line":46,"end_character":43},"in_reply_to":"dab17558_78fe7e06","updated":"2016-05-13 10:19:08.000000000","message":"You don\u0027t need to modify fake.py. You can simply pass a \"methods\" parameter to create_one_server() to fake any method of a server object.\n\nAnd I think this command should be \"os server add \u003cfloating-ip\u003e\". In doc/source/commands.rst, you can see:\n\n* ``add`` (``remove``) - add some object to a container object; the command is built in the order of ``container add object \u003ccontainer\u003e \u003cobject\u003e``, the positional arguments appear in the same order\n\nHere, server is the container, and floating ip is the object.\n\nI think I have done this in: \nhttps://review.openstack.org/#/c/302508/\n\nSo, maybe we don\u0027t need this patch.","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"00d97f7a607e677cd624ab64770899b8c1120617","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        server \u003d utils.find_resource("},{"line_number":43,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        compute_client.servers.add_floating_ip("},{"line_number":46,"context_line":"            server, parsed_args.ip_address)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RemoveFloatingIP(command.Command):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_78fe7e06","line":46,"range":{"start_line":45,"start_character":8,"end_line":46,"end_character":43},"in_reply_to":"dab17558_fd39c0d9","updated":"2016-05-13 06:02:18.000000000","message":"and when i write test files,it became more easier in this new edition.otherwise , i need to modify \u0027fake.py\u0027 to add add/remove_floating_ip method of Server class","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"cd5cc4bca86c856d4c2569c3c4dba28317bb305a","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        server \u003d utils.find_resource("},{"line_number":43,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        compute_client.servers.add_floating_ip("},{"line_number":46,"context_line":"            server, parsed_args.ip_address)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class RemoveFloatingIP(command.Command):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_1dee44ec","line":46,"range":{"start_line":45,"start_character":8,"end_line":46,"end_character":43},"in_reply_to":"dab17558_fd39c0d9","updated":"2016-05-13 05:50:15.000000000","message":"for maintaining consistency with functions in other programs.   other programs always use \u0027client_manager\u0027  (old edition works too )","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e3372e9e45fd21f7b51fe06713ce7d1d0f14ca5e","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        server \u003d utils.find_resource("},{"line_number":70,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        compute_client.servers.remove_floating_ip("},{"line_number":73,"context_line":"            server, parsed_args.ip_address)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_7d4cb076","line":73,"range":{"start_line":72,"start_character":8,"end_line":73,"end_character":43},"updated":"2016-05-13 05:18:07.000000000","message":"same","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"},{"author":{"_account_id":21808,"name":"sunyajing","email":"yajing.sun@easystack.cn","username":"sunyajing"},"change_message_id":"cd5cc4bca86c856d4c2569c3c4dba28317bb305a","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        server \u003d utils.find_resource("},{"line_number":70,"context_line":"            compute_client.servers, parsed_args.server)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        compute_client.servers.remove_floating_ip("},{"line_number":73,"context_line":"            server, parsed_args.ip_address)"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_fd7b8027","line":73,"range":{"start_line":72,"start_character":8,"end_line":73,"end_character":43},"in_reply_to":"dab17558_7d4cb076","updated":"2016-05-13 05:50:15.000000000","message":"Done","commit_id":"2a11ae11da59163a32c50f380f1690100e94f612"}]}
