)]}'
{"devstack/plugin.sh":[{"author":{"_account_id":21691,"name":"weizj","email":"wzj334965317@outlook.com","username":"ZhijunWei"},"change_message_id":"c119142f51e9e82c16edf091627041a734ed26db","unresolved":false,"context_lines":[{"line_number":337,"context_line":"    echo \"Starting Dragonflow\""},{"line_number":338,"context_line":""},{"line_number":339,"context_line":"    if is_service_enabled df-controller ; then"},{"line_number":340,"context_line":"        sudo ovs-vsctl --no-wait set-controller $INTEGRATION_BRIDGE tcp:127.0.0.1:6633"},{"line_number":341,"context_line":"        run_process df-controller \"$DF_LOCAL_CONTROLLER_BINARY --config-file $NEUTRON_CONF\""},{"line_number":342,"context_line":"        run_process df-ext-services \"bash $DEST/dragonflow/devstack/df-ext-services.sh\""},{"line_number":343,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":4,"id":"1ac06dbe_0b7e4f69","line":340,"range":{"start_line":340,"start_character":72,"end_line":340,"end_character":81},"updated":"2016-08-24 09:07:06.000000000","message":"why not used fixed ip","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"},{"author":{"_account_id":18903,"name":"Yuli","email":"stremovsky@gmail.com","username":"yuli"},"change_message_id":"c66cfab65d67965fcbf5ec2ee7a72c58e988e8c0","unresolved":false,"context_lines":[{"line_number":337,"context_line":"    echo \"Starting Dragonflow\""},{"line_number":338,"context_line":""},{"line_number":339,"context_line":"    if is_service_enabled df-controller ; then"},{"line_number":340,"context_line":"        sudo ovs-vsctl --no-wait set-controller $INTEGRATION_BRIDGE tcp:127.0.0.1:6633"},{"line_number":341,"context_line":"        run_process df-controller \"$DF_LOCAL_CONTROLLER_BINARY --config-file $NEUTRON_CONF\""},{"line_number":342,"context_line":"        run_process df-ext-services \"bash $DEST/dragonflow/devstack/df-ext-services.sh\""},{"line_number":343,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":4,"id":"1ac06dbe_464af4ad","line":340,"range":{"start_line":340,"start_character":72,"end_line":340,"end_character":81},"in_reply_to":"1ac06dbe_0b7e4f69","updated":"2016-08-24 12:14:20.000000000","message":"I changed it to localhost from security point of view.\nDF controller does not need to listen on host ip.\nConnections can be established locally.\nWhat is your opinion ?","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"}],"dragonflow/common/common_params.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"ac225838c113a135074cb43827348ec7f751023e","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                      \"bridge acts as a virtual \u0027patch bay\u0027. All VM VIFs are \""},{"line_number":48,"context_line":"                      \"attached to this bridge and then \u0027patched\u0027 according \""},{"line_number":49,"context_line":"                      \"to their network connectivity.\")),"},{"line_number":50,"context_line":"    cfg.IPOpt(\u0027of_listen_address\u0027, default\u003d\u0027127.0.0.1\u0027,"},{"line_number":51,"context_line":"              help\u003d_(\"Address to listen on for OpenFlow connections.\")),"},{"line_number":52,"context_line":"    cfg.PortOpt(\u0027of_listen_port\u0027, default\u003d6633,"},{"line_number":53,"context_line":"                help\u003d_(\"Port to listen on for OpenFlow connections.\")),"},{"line_number":54,"context_line":"    cfg.BoolOpt(\u0027use_centralized_ipv6_DHCP\u0027,"},{"line_number":55,"context_line":"                default\u003dFalse,"},{"line_number":56,"context_line":"                help\u003d_(\"Enable IPv6 DHCP by using DHCP agent\")),"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ac06dbe_4e3df0c2","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":71},"updated":"2016-08-24 10:46:14.000000000","message":"Put these in a ryu-specific group, e.g. DF-ryu.\n\nThe defaults are also wrong - they should be None. This way ryu code takes the defaults from OF.","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"},{"author":{"_account_id":20336,"name":"heshan","email":"shan.he@huawei.com","username":"shanhe"},"change_message_id":"43b0a330cd449883fd134a54f0eb468088042378","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                      \"bridge acts as a virtual \u0027patch bay\u0027. All VM VIFs are \""},{"line_number":48,"context_line":"                      \"attached to this bridge and then \u0027patched\u0027 according \""},{"line_number":49,"context_line":"                      \"to their network connectivity.\")),"},{"line_number":50,"context_line":"    cfg.IPOpt(\u0027of_listen_address\u0027, default\u003d\u0027127.0.0.1\u0027,"},{"line_number":51,"context_line":"              help\u003d_(\"Address to listen on for OpenFlow connections.\")),"},{"line_number":52,"context_line":"    cfg.PortOpt(\u0027of_listen_port\u0027, default\u003d6633,"},{"line_number":53,"context_line":"                help\u003d_(\"Port to listen on for OpenFlow connections.\")),"},{"line_number":54,"context_line":"    cfg.BoolOpt(\u0027use_centralized_ipv6_DHCP\u0027,"},{"line_number":55,"context_line":"                default\u003dFalse,"},{"line_number":56,"context_line":"                help\u003d_(\"Enable IPv6 DHCP by using DHCP agent\")),"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_8c4988d3","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":71},"in_reply_to":"1ac06dbe_4e3df0c2","updated":"2016-08-25 23:11:44.000000000","message":"@Omer, about the default value, I\u0027m not sure it\u0027s okay to set None to these two options, I did a experiment locally, setting None to options, but both two options result in None value. do you mean when None value is set, these options will get default value from ryu\u0027s configuration?\n\n    cfg.StrOpt(\u0027ofp-listen-host\u0027, default\u003d\u0027\u0027, help\u003d\u0027openflow listen host\u0027),\n    cfg.IntOpt(\u0027ofp-tcp-listen-port\u0027, default\u003dofproto_common.OFP_TCP_PORT,\n               help\u003d\u0027openflow tcp listen port\u0027),","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"},{"author":{"_account_id":18903,"name":"Yuli","email":"stremovsky@gmail.com","username":"yuli"},"change_message_id":"f40a4496e1df36c6a53266e2db640fa37361177d","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                      \"bridge acts as a virtual \u0027patch bay\u0027. All VM VIFs are \""},{"line_number":48,"context_line":"                      \"attached to this bridge and then \u0027patched\u0027 according \""},{"line_number":49,"context_line":"                      \"to their network connectivity.\")),"},{"line_number":50,"context_line":"    cfg.IPOpt(\u0027of_listen_address\u0027, default\u003d\u0027127.0.0.1\u0027,"},{"line_number":51,"context_line":"              help\u003d_(\"Address to listen on for OpenFlow connections.\")),"},{"line_number":52,"context_line":"    cfg.PortOpt(\u0027of_listen_port\u0027, default\u003d6633,"},{"line_number":53,"context_line":"                help\u003d_(\"Port to listen on for OpenFlow connections.\")),"},{"line_number":54,"context_line":"    cfg.BoolOpt(\u0027use_centralized_ipv6_DHCP\u0027,"},{"line_number":55,"context_line":"                default\u003dFalse,"},{"line_number":56,"context_line":"                help\u003d_(\"Enable IPv6 DHCP by using DHCP agent\")),"}],"source_content_type":"text/x-python","patch_set":4,"id":"1ac06dbe_49684588","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":71},"in_reply_to":"1ac06dbe_4e3df0c2","updated":"2016-08-24 12:24:41.000000000","message":"Done","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"12b7655a389d81b7af4d6cc9849d3f135e034ccf","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                      \"bridge acts as a virtual \u0027patch bay\u0027. All VM VIFs are \""},{"line_number":48,"context_line":"                      \"attached to this bridge and then \u0027patched\u0027 according \""},{"line_number":49,"context_line":"                      \"to their network connectivity.\")),"},{"line_number":50,"context_line":"    cfg.IPOpt(\u0027of_listen_address\u0027, default\u003d\u0027127.0.0.1\u0027,"},{"line_number":51,"context_line":"              help\u003d_(\"Address to listen on for OpenFlow connections.\")),"},{"line_number":52,"context_line":"    cfg.PortOpt(\u0027of_listen_port\u0027, default\u003d6633,"},{"line_number":53,"context_line":"                help\u003d_(\"Port to listen on for OpenFlow connections.\")),"},{"line_number":54,"context_line":"    cfg.BoolOpt(\u0027use_centralized_ipv6_DHCP\u0027,"},{"line_number":55,"context_line":"                default\u003dFalse,"},{"line_number":56,"context_line":"                help\u003d_(\"Enable IPv6 DHCP by using DHCP agent\")),"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_8dc7f794","line":53,"range":{"start_line":50,"start_character":0,"end_line":53,"end_character":71},"in_reply_to":"fa7ab95a_8c4988d3","updated":"2016-08-30 12:36:57.000000000","message":"@Heshan, that was the plan. Yuli did some testing and saw this doesn\u0027t work. However, at least the port value has to be taken from the OF library, since it is defined there.","commit_id":"127fcd8d978344ae3609f821e8662cf2b98f9624"}],"dragonflow/controller/df_local_controller.py":[{"author":{"_account_id":20336,"name":"heshan","email":"shan.he@huawei.com","username":"shanhe"},"change_message_id":"7cc06b88d1300f1b2dd87dd06f13da806054dc1d","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        # for reliability, here we should check if controller is set for OVS,"},{"line_number":91,"context_line":"        # if yes, don\u0027t set controller and don\u0027t delete controller."},{"line_number":92,"context_line":"        # if no, set controller"},{"line_number":93,"context_line":"        targets \u003d \u0027tcp:\u0027 + cfg.CONF.df.of_listen_address + \u0027:\u0027 +"},{"line_number":94,"context_line":"                    str(cfg.CONF.df.of_listen_port)"},{"line_number":95,"context_line":"        is_controller_set \u003d self.vswitch_api.check_controller(targets)"},{"line_number":96,"context_line":"        if not is_controller_set:"}],"source_content_type":"text/x-python","patch_set":6,"id":"1ac06dbe_fc925f9e","line":93,"range":{"start_line":93,"start_character":36,"end_line":93,"end_character":38},"updated":"2016-08-25 01:12:37.000000000","message":"those two options are under df_ryu section","commit_id":"729bfd2b895fb154f0357b0e7b0874bb6e680fca"},{"author":{"_account_id":18903,"name":"Yuli","email":"stremovsky@gmail.com","username":"yuli"},"change_message_id":"6a60da19fbfe95cbaf7761d0a90fe4e0702148c8","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        # for reliability, here we should check if controller is set for OVS,"},{"line_number":91,"context_line":"        # if yes, don\u0027t set controller and don\u0027t delete controller."},{"line_number":92,"context_line":"        # if no, set controller"},{"line_number":93,"context_line":"        targets \u003d \u0027tcp:\u0027 + cfg.CONF.df.of_listen_address + \u0027:\u0027 +"},{"line_number":94,"context_line":"                    str(cfg.CONF.df.of_listen_port)"},{"line_number":95,"context_line":"        is_controller_set \u003d self.vswitch_api.check_controller(targets)"},{"line_number":96,"context_line":"        if not is_controller_set:"}],"source_content_type":"text/x-python","patch_set":6,"id":"1ac06dbe_7113285d","line":93,"range":{"start_line":93,"start_character":36,"end_line":93,"end_character":38},"in_reply_to":"1ac06dbe_fc925f9e","updated":"2016-08-25 07:54:39.000000000","message":"Done","commit_id":"729bfd2b895fb154f0357b0e7b0874bb6e680fca"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"0aac5225609e6be78c59e729c03f5665b0d19662","unresolved":false,"context_lines":[{"line_number":91,"context_line":"        # if yes, don\u0027t set controller and don\u0027t delete controller."},{"line_number":92,"context_line":"        # if no, set controller"},{"line_number":93,"context_line":"        targets \u003d \u0027tcp:\u0027 + cfg.CONF.df.of_listen_address + \u0027:\u0027 + \\"},{"line_number":94,"context_line":"                    str(cfg.CONF.df.of_listen_port)"},{"line_number":95,"context_line":"        is_controller_set \u003d self.vswitch_api.check_controller(targets)"},{"line_number":96,"context_line":"        if not is_controller_set:"},{"line_number":97,"context_line":"            self.vswitch_api.set_controllers(self.integration_bridge,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1ac06dbe_519eec54","line":94,"updated":"2016-08-25 08:03:13.000000000","message":"It would be better to put the line in brackets, than use a backslash. See http://docs.openstack.org/developer/hacking/#general (second bullet).","commit_id":"73e2aaa8e4f120d001b8047ded67438c532f1f78"}]}
