コード例 #1
0
ファイル: netd.go プロジェクト: karamsivia/netplugin
func handleBgpEvents(netPlugin *plugin.NetPlugin, opts cliOpts, recvErr chan error) {

	rsps := make(chan core.WatchState)
	go processStateEvent(netPlugin, opts, rsps)
	cfg := mastercfg.CfgBgpState{}
	cfg.StateDriver = netPlugin.StateDriver
	recvErr <- cfg.WatchAll(rsps)
	return
}
コード例 #2
0
ファイル: state_event.go プロジェクト: jojimt/netplugin
func handleBgpEvents(netPlugin *plugin.NetPlugin, opts core.InstanceInfo, recvErr chan error) {

	rsps := make(chan core.WatchState)
	go processStateEvent(netPlugin, opts, rsps)
	cfg := mastercfg.CfgBgpState{}
	cfg.StateDriver = netPlugin.StateDriver
	recvErr <- cfg.WatchAll(rsps)
	log.Errorf("Error from handleBgpEvents")
}
コード例 #3
0
ファイル: ovsdriver.go プロジェクト: jojimt/netplugin
// AddBgp adds bgp config by named identifier
func (d *OvsDriver) AddBgp(id string) error {
	var sw *OvsSwitch

	cfg := mastercfg.CfgBgpState{}
	cfg.StateDriver = d.oper.StateDriver
	err := cfg.Read(id)
	if err != nil {
		log.Errorf("Failed to read router state %s \n", cfg.Hostname)
		return err
	}
	log.Infof("Create Bgp :%+v", cfg)

	// Find the switch based on network type
	sw = d.switchDb["vlan"]

	return sw.AddBgp(cfg.Hostname, cfg.RouterIP, cfg.As, cfg.NeighborAs, cfg.Neighbor)
}
コード例 #4
0
// AddBgpNeighbors adds bgp neighbor by named identifier
func (d *OvsDriver) AddBgpNeighbors(id string) error {
	var sw *OvsSwitch

	cfg := mastercfg.CfgBgpState{}
	cfg.StateDriver = d.oper.StateDriver
	log.Info("Reading from etcd State %s", id)
	err := cfg.Read(id)
	if err != nil {
		log.Errorf("Failed to read router state %s \n", cfg.Hostname)
		return err
	}
	log.Infof("create Bgp Server %s \n", cfg.Hostname)

	// Find the switch based on network type
	sw = d.switchDb["vlan"]

	return sw.AddBgpNeighbors(cfg.Hostname, cfg.As, cfg.Neighbor)
}