)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"0c9aaea1dd2157d4ad9b3d06b4a71905835b3968","unresolved":false,"context_lines":[{"line_number":13,"context_line":"should be changed."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch set include two libraries, one is used to configure ubuntu"},{"line_number":16,"context_line":"platform ovs optiosn, and the other one is for Fedora paltform. This"},{"line_number":17,"context_line":"patch set is a part of BP ip-movement implementation."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I35b4416edf8b47908c065490f303054124e81a17"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7a016987_621ada7e","line":16,"updated":"2015-06-01 15:33:24.000000000","message":"typo","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"29909bc8bc75c44cf9ed58ccf58e79e7371c7896","unresolved":false,"context_lines":[{"line_number":13,"context_line":"should be changed."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch set include two libraries, one is used to configure ubuntu"},{"line_number":16,"context_line":"platform ovs optiosn, and the other one is for Fedora paltform. This"},{"line_number":17,"context_line":"patch set is a part of BP ip-movement implementation."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I35b4416edf8b47908c065490f303054124e81a17"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"5afe65bd_e298d66c","line":16,"in_reply_to":"7a016987_621ada7e","updated":"2015-06-02 02:12:56.000000000","message":"Done","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"},{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"0c9aaea1dd2157d4ad9b3d06b4a71905835b3968","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch set include two libraries, one is used to configure ubuntu"},{"line_number":16,"context_line":"platform ovs optiosn, and the other one is for Fedora paltform. This"},{"line_number":17,"context_line":"patch set is a part of BP ip-movement implementation."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I35b4416edf8b47908c065490f303054124e81a17"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"7a016987_c5107850","line":17,"updated":"2015-06-01 15:33:24.000000000","message":"Use:\nImplements: blueprint ip-movement","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"29909bc8bc75c44cf9ed58ccf58e79e7371c7896","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch set include two libraries, one is used to configure ubuntu"},{"line_number":16,"context_line":"platform ovs optiosn, and the other one is for Fedora paltform. This"},{"line_number":17,"context_line":"patch set is a part of BP ip-movement implementation."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I35b4416edf8b47908c065490f303054124e81a17"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"5afe65bd_c29dda5a","line":17,"in_reply_to":"7a016987_c5107850","updated":"2015-06-02 02:12:56.000000000","message":"Done","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"}],"libraries/ip-movement-fedora.rb":[{"author":{"_account_id":13667,"name":"ZongKai LI","email":"onionpiece@163.com","username":"lzklibj"},"change_message_id":"2c9b6de06d1a64d474c2d16f1081ede144ea1faf","unresolved":false,"context_lines":[{"line_number":48,"context_line":"end"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# Check the essential attributes."},{"line_number":51,"context_line":"def check_attr(iface)"},{"line_number":52,"context_line":"  attr_exist \u003d attrs_present(iface, [\u0027IPADDR\u0027, \u0027NETMASK\u0027]) || attrs_present(iface, [\u0027IPADDR\u0027, \u0027PREFIX\u0027])"},{"line_number":53,"context_line":"  is_dhcp \u003d dhcp(iface)"},{"line_number":54,"context_line":"  attr_exist || is_dhcp"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"7a016987_f27003a6","line":51,"updated":"2015-05-21 09:03:42.000000000","message":"Shall we remove comment in L50, and modify method name in L51 from check_attr to check_essential_attr ?","commit_id":"45dadf707ec084d337db33b98a210585627fada0"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"826e2ee718a9693671c568fcef11e9f0b212b53f","unresolved":false,"context_lines":[{"line_number":48,"context_line":"end"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# Check the essential attributes."},{"line_number":51,"context_line":"def check_attr(iface)"},{"line_number":52,"context_line":"  attr_exist \u003d attrs_present(iface, [\u0027IPADDR\u0027, \u0027NETMASK\u0027]) || attrs_present(iface, [\u0027IPADDR\u0027, \u0027PREFIX\u0027])"},{"line_number":53,"context_line":"  is_dhcp \u003d dhcp(iface)"},{"line_number":54,"context_line":"  attr_exist || is_dhcp"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"7a016987_2f9bbb67","line":51,"in_reply_to":"7a016987_f27003a6","updated":"2015-05-22 06:46:10.000000000","message":"Good, will do.","commit_id":"45dadf707ec084d337db33b98a210585627fada0"},{"author":{"_account_id":13667,"name":"ZongKai LI","email":"onionpiece@163.com","username":"lzklibj"},"change_message_id":"2c9b6de06d1a64d474c2d16f1081ede144ea1faf","unresolved":false,"context_lines":[{"line_number":87,"context_line":"end"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"# Configure interface network file."},{"line_number":90,"context_line":"def config_iface(br, iface)"},{"line_number":91,"context_line":"  iface_file \u003d CONF_PREFIX + iface"},{"line_number":92,"context_line":"  fe_iface_file \u003d Chef::Util::FileEdit.new(iface_file)"},{"line_number":93,"context_line":"  fe_iface_file.search_file_delete_line(/^(IPADDR|NETMASK|PREFIX|GATEWAY|BROADCAST|DNS|UUID|DEFROUTE|DOMAIN|IPV|TYPE|DEVICETYPE|OVS_BRIDGE|BOOTPROTO).*/)"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"7a016987_32333bad","line":90,"updated":"2015-05-21 09:03:42.000000000","message":"config_iface \u003d\u003e config_iface_file, will this be better?","commit_id":"45dadf707ec084d337db33b98a210585627fada0"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"826e2ee718a9693671c568fcef11e9f0b212b53f","unresolved":false,"context_lines":[{"line_number":87,"context_line":"end"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"# Configure interface network file."},{"line_number":90,"context_line":"def config_iface(br, iface)"},{"line_number":91,"context_line":"  iface_file \u003d CONF_PREFIX + iface"},{"line_number":92,"context_line":"  fe_iface_file \u003d Chef::Util::FileEdit.new(iface_file)"},{"line_number":93,"context_line":"  fe_iface_file.search_file_delete_line(/^(IPADDR|NETMASK|PREFIX|GATEWAY|BROADCAST|DNS|UUID|DEFROUTE|DOMAIN|IPV|TYPE|DEVICETYPE|OVS_BRIDGE|BOOTPROTO).*/)"}],"source_content_type":"text/x-ruby","patch_set":1,"id":"7a016987_4f98376a","line":90,"in_reply_to":"7a016987_32333bad","updated":"2015-05-22 06:46:10.000000000","message":"Modify iface file is try to configure iface. So I think use config_iface is better.","commit_id":"45dadf707ec084d337db33b98a210585627fada0"},{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"1aa204db5fc9190f5d2dcc57539d42bf23a28f71","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_a5286a34","line":1,"updated":"2015-05-27 16:33:41.000000000","message":"Should names be specific to OVS?\n\nip-movement-fedora-ovs","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"c09fe9c997b1f9b13073a36c6d49ef0d56e1dda6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_c0f7b857","line":1,"in_reply_to":"7a016987_a5286a34","updated":"2015-05-28 09:58:15.000000000","message":"yep","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"1aa204db5fc9190f5d2dcc57539d42bf23a28f71","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"# Copyright 2015, IBM Corp."},{"line_number":7,"context_line":"#"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_45b9b62d","line":4,"updated":"2015-05-27 16:33:41.000000000","message":"remove?","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"c09fe9c997b1f9b13073a36c6d49ef0d56e1dda6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"# Copyright 2015, IBM Corp."},{"line_number":7,"context_line":"#"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_a0eefc88","line":4,"in_reply_to":"7a016987_45b9b62d","updated":"2015-05-28 09:58:15.000000000","message":"will do","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"1aa204db5fc9190f5d2dcc57539d42bf23a28f71","unresolved":false,"context_lines":[{"line_number":18,"context_line":"# limitations under the License."},{"line_number":19,"context_line":"#"},{"line_number":20,"context_line":"require \u0027chef\u0027"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"CONF_PREFIX \u003d \u0027/etc/sysconfig/network-scripts/ifcfg-\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# Return true if the interface\u0027s configuration file is configured to DHCP bootproto."}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_055e1ee9","line":21,"updated":"2015-05-27 16:33:41.000000000","message":"Maybe consider putting these in a Module?\nmodule NetworkUtils?","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"c09fe9c997b1f9b13073a36c6d49ef0d56e1dda6","unresolved":false,"context_lines":[{"line_number":18,"context_line":"# limitations under the License."},{"line_number":19,"context_line":"#"},{"line_number":20,"context_line":"require \u0027chef\u0027"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"CONF_PREFIX \u003d \u0027/etc/sysconfig/network-scripts/ifcfg-\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# Return true if the interface\u0027s configuration file is configured to DHCP bootproto."}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_407068dc","line":21,"in_reply_to":"7a016987_055e1ee9","updated":"2015-05-28 09:58:15.000000000","message":"that\u0027s good. I agree.","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":13667,"name":"ZongKai LI","email":"onionpiece@163.com","username":"lzklibj"},"change_message_id":"4d9212f331c379ab11b3b824b3661af9ba00534d","unresolved":false,"context_lines":[{"line_number":69,"context_line":"    iface_file \u003d CONF_PREFIX + iface"},{"line_number":70,"context_line":"    fe_iface_file \u003d Chef::Util::FileEdit.new(iface_file)"},{"line_number":71,"context_line":"    hwaddr \u003d get_iface_hwaddr(iface)"},{"line_number":72,"context_line":"    fe_iface_file.insert_line_if_no_match(/^(HWADDR|MACADDR).*/i, \"HWADDR\u003d#{hwaddr}\")"},{"line_number":73,"context_line":"    fe_iface_file.write_file"},{"line_number":74,"context_line":"    FileUtils.rm(iface_file + \u0027.old\u0027, force: true)"},{"line_number":75,"context_line":"  end"}],"source_content_type":"text/x-ruby","patch_set":7,"id":"7a016987_cf2b0a81","line":72,"updated":"2015-06-01 04:55:30.000000000","message":"For function get_iface_hwaddr may return nil, so this line will insert even hwaddr is nil, will this be necessary?","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"c1298c7627072bc0c8cd76cf8c47b2839758d2d2","unresolved":false,"context_lines":[{"line_number":69,"context_line":"    iface_file \u003d CONF_PREFIX + iface"},{"line_number":70,"context_line":"    fe_iface_file \u003d Chef::Util::FileEdit.new(iface_file)"},{"line_number":71,"context_line":"    hwaddr \u003d get_iface_hwaddr(iface)"},{"line_number":72,"context_line":"    fe_iface_file.insert_line_if_no_match(/^(HWADDR|MACADDR).*/i, \"HWADDR\u003d#{hwaddr}\")"},{"line_number":73,"context_line":"    fe_iface_file.write_file"},{"line_number":74,"context_line":"    FileUtils.rm(iface_file + \u0027.old\u0027, force: true)"},{"line_number":75,"context_line":"  end"}],"source_content_type":"text/x-ruby","patch_set":7,"id":"7a016987_2af04cc8","line":72,"in_reply_to":"7a016987_cf2b0a81","updated":"2015-06-01 06:07:16.000000000","message":"why get_iface_hwaddr can return a nil value?\nI think this can only happen if you reset the \"node\" recipe variable. Otherwise, a interface must have a hardware address.","commit_id":"58f60deac5708e0c9146cb654c3b09d924f07623"}],"libraries/ip-movement-ubuntu.rb":[{"author":{"_account_id":7128,"name":"Mark Vanderwiel","email":"vanderwl@us.ibm.com","username":"kramvan"},"change_message_id":"1aa204db5fc9190f5d2dcc57539d42bf23a28f71","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"# Copyright 2015, IBM Corp."},{"line_number":7,"context_line":"#"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_a57e2a68","line":4,"updated":"2015-05-27 16:33:41.000000000","message":"remove?","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"},{"author":{"_account_id":8172,"name":"Wei Hu","email":"huwei.xtu@gmail.com","username":"WeiHu"},"change_message_id":"c09fe9c997b1f9b13073a36c6d49ef0d56e1dda6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# encoding: UTF-8"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Cookbook Name:: openstack-network"},{"line_number":4,"context_line":"# Attributes:: default"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"# Copyright 2015, IBM Corp."},{"line_number":7,"context_line":"#"}],"source_content_type":"text/x-ruby","patch_set":5,"id":"7a016987_205fac42","line":4,"in_reply_to":"7a016987_a57e2a68","updated":"2015-05-28 09:58:15.000000000","message":"will do","commit_id":"176e3b62dadf21529f1e6b039615754d6ed07f6d"}]}
