)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"dcba9cf4d2ceac38ff41ecf0f7a1e8bacaeabdd7","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Enhance the help info of \"neutron router-gateway-set\""},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The the help info of \"neutron router-gateway-set\" is not much"},{"line_number":10,"context_line":"helpful."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Below is the help message of \"neutron router-gateway-set\":"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a7b0d38_2e3c51e1","line":9,"range":{"start_line":9,"start_character":4,"end_line":9,"end_character":7},"updated":"2015-12-26 02:49:17.000000000","message":"The the?","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"dcba9cf4d2ceac38ff41ecf0f7a1e8bacaeabdd7","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Enhance the help info of \"neutron router-gateway-set\""},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The the help info of \"neutron router-gateway-set\" is not much"},{"line_number":10,"context_line":"helpful."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Below is the help message of \"neutron router-gateway-set\":"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a7b0d38_ae304102","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":7},"updated":"2015-12-26 02:49:17.000000000","message":"Can we reword \u0027helpful\u0027  to \u0027complete\u0027?","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"dcba9cf4d2ceac38ff41ecf0f7a1e8bacaeabdd7","unresolved":false,"context_lines":[{"line_number":20,"context_line":"router-gateway-set command can work. Usage should be as below,"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"usage: neutron router-gateway-set [-h] [--request-format {json,xml}]"},{"line_number":23,"context_line":"       [--disable-snat] [--fixed-ip subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR]"},{"line_number":24,"context_line":"       ROUTER EXTERNAL-NETWORK"},{"line_number":25,"context_line":"neutron router-gateway-set: error: too few arguments"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a7b0d38_6e19f987","line":23,"range":{"start_line":23,"start_character":46,"end_line":23,"end_character":52},"updated":"2015-12-26 02:49:17.000000000","message":"Is Subnet an essential parameter ? or an optional parameter to define the IP_Address?","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"}],"neutronclient/neutron/v2_0/router.py":[{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"52d7f304476ebd1420daa033a73fb81920ed4ca3","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_7d09f694","line":229,"updated":"2015-12-23 13:44:15.000000000","message":"Are both options required?  This argument is structured such that both would be required.  Please add a unit test that handles both options being specified.","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"8cc2fc1e075a9c3d1b6eab85606ff1b632fa78cb","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_161630f1","line":229,"in_reply_to":"1a7b0d38_2e13f167","updated":"2015-12-28 10:28:33.000000000","message":"replied in previous comment","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"dcba9cf4d2ceac38ff41ecf0f7a1e8bacaeabdd7","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_2e13f167","line":229,"in_reply_to":"1a7b0d38_7d09f694","updated":"2015-12-26 02:49:17.000000000","message":"I also have the same query. See the unit test here (https://github.com/openstack/python-neutronclient/blob/master/neutronclient/tests/unit/test_cli20_router.py#L364). If Subnet is not required, the handling here would have to be different.\n\nAnd We Definitely need Unit Tests to pass the Subnet ID and IP address","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"8cc2fc1e075a9c3d1b6eab85606ff1b632fa78cb","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_d66508b5","line":229,"in_reply_to":"1a7b0d38_7d09f694","updated":"2015-12-28 10:28:33.000000000","message":"It is optional, it can have any one or both also. Will update the unit-test soon.\n\nShall we have metavar\u003d\u0027key\u003dvalue\u0027 ?","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"52d7f304476ebd1420daa033a73fb81920ed4ca3","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"},{"line_number":233,"context_line":"                   \u0027You can repeat this option.\u0027))"},{"line_number":234,"context_line":"        return parser"},{"line_number":235,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_3db5aecc","line":232,"updated":"2015-12-23 13:44:15.000000000","message":"I think this should be removed from the help text.","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":8410,"name":"Richard Theis","email":"rtheis@us.ibm.com","username":"rtheis"},"change_message_id":"1a4f1d512161987156dd61e0c026d5f93ba27900","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"},{"line_number":233,"context_line":"                   \u0027You can repeat this option.\u0027))"},{"line_number":234,"context_line":"        return parser"},{"line_number":235,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_201c39c0","line":232,"in_reply_to":"1a7b0d38_169b9073","updated":"2015-12-28 16:32:06.000000000","message":"This duplicates the metavar information already displayed.  Which is why I don\u0027t think is necessary.","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"dcba9cf4d2ceac38ff41ecf0f7a1e8bacaeabdd7","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"},{"line_number":233,"context_line":"                   \u0027You can repeat this option.\u0027))"},{"line_number":234,"context_line":"        return parser"},{"line_number":235,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_2221c59f","line":232,"in_reply_to":"1a7b0d38_3db5aecc","updated":"2015-12-26 02:49:17.000000000","message":"Do we need to remove it?\nM not sure","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"8cc2fc1e075a9c3d1b6eab85606ff1b632fa78cb","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"},{"line_number":233,"context_line":"                   \u0027You can repeat this option.\u0027))"},{"line_number":234,"context_line":"        return parser"},{"line_number":235,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_169b9073","line":232,"in_reply_to":"1a7b0d38_3db5aecc","updated":"2015-12-28 10:28:33.000000000","message":"It will inform the user about the expected key (subnet_id / ip_address)","commit_id":"6a8d2c56e5e89afa979259b5a82bd9e043b027f3"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"50a7662d6d7b410ca9eec21bcb5f71875c685482","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_5b1ae718","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"updated":"2016-01-08 06:22:07.000000000","message":"user would not know what key and value stands for.\nHowever, we can have [[subnet_id\u003dSUBNET,][ip_address\u003dIP_ADDR]]\n\nYou can have it in the Help message as well","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"1748ccfada85389dfdb5450a63cd5555871f3788","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_6bd30ed6","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"in_reply_to":"fa69d971_3567ecb8","updated":"2016-01-10 11:37:49.000000000","message":"Done","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"f5add94b9fb7b8931062d5af74c8248406ac54e1","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_95e6d8e6","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"in_reply_to":"fa69d971_3567ecb8","updated":"2016-01-08 11:01:12.000000000","message":"In addition, when the short version of the help message is displayed, we don\u0027t have the detail.\n\n  $ neutron router-gateway-set \n  usage: neutron router-gateway-set [-h] [--request-format {json,xml}]\n                                    [--disable-snat] [--fixed-ip FIXED_IP]\n                                    ROUTER EXTERNAL-NETWORK\n  neutron router-gateway-set: error: too few arguments\n  Try \u0027neutron help router-gateway-set\u0027 for more information.\n\nI think the following is useful.\n\n  $ neutron router-gateway-set \n  usage: neutron router-gateway-set [-h] [--request-format {json}]\n                                    [--disable-snat]\n                                    [--fixed-ip subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR]\n                                    ROUTER EXTERNAL-NETWORK\n  neutron router-gateway-set: error: too few arguments\n  Try \u0027neutron help router-gateway-set\u0027 for more information.","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"eaf460a32977f4e297294534e8ec9fd6b6b26607","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_3567ecb8","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"in_reply_to":"fa69d971_5b1ae718","updated":"2016-01-08 10:57:44.000000000","message":"As Reedip commented, we can pass two key-value pair as well.\n\"key\u003dvalue\" looks confusing. Honestly I don\u0027t have a good idea to deal with all possible cases.\n\nHow about moving back to the original one?\n\n  subnet_id\u003dSUBNET,ip_address\u003dIP_ADDR\n\nand adding more description in the help message.\nWe can specify both of subnet_id and ip_address.\nWe can specify one of them as well.","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"1748ccfada85389dfdb5450a63cd5555871f3788","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_4bce4a2e","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"in_reply_to":"fa69d971_5b1ae718","updated":"2016-01-10 11:37:49.000000000","message":"Done","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"},{"author":{"_account_id":15950,"name":"Ukesh Kumar","email":"ukeshkumar@gmail.com","username":"ukeshkumar"},"change_message_id":"1748ccfada85389dfdb5450a63cd5555871f3788","unresolved":false,"context_lines":[{"line_number":226,"context_line":"            \u0027--disable-snat\u0027, action\u003d\u0027store_true\u0027,"},{"line_number":227,"context_line":"            help\u003d_(\u0027Disable source NAT on the router gateway.\u0027))"},{"line_number":228,"context_line":"        parser.add_argument("},{"line_number":229,"context_line":"            \u0027--fixed-ip\u0027, metavar\u003d\u0027key\u003dvalue\u0027,"},{"line_number":230,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":231,"context_line":"            help\u003d_(\u0027Desired IP and/or subnet on external network: \u0027"},{"line_number":232,"context_line":"                   \u0027subnet_id\u003d\u003cname_or_id\u003e,ip_address\u003d\u003cip\u003e. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa69d971_0bddb2df","line":229,"range":{"start_line":229,"start_character":39,"end_line":229,"end_character":44},"in_reply_to":"fa69d971_95e6d8e6","updated":"2016-01-10 11:37:49.000000000","message":"Done","commit_id":"8678ab592660baa7a8745c26df5aa82afbd6abe8"}]}
