All checks were successful
Pre Release Workflow / set-release-target (push) Successful in 1s
Pre Release Workflow / build (agent, amd64, linux) (push) Successful in 1m26s
Pre Release Workflow / build (db, amd64, linux) (push) Successful in 1m33s
Pre Release Workflow / build (metacli, amd64, linux) (push) Successful in 1m31s
Pre Release Workflow / build (metadata, amd64, linux) (push) Successful in 1m29s
Pre Release Workflow / build (vpc, amd64, linux) (push) Successful in 1m31s
Pre Release Workflow / prerelease (push) Successful in 11s
Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
38 lines
584 B
Go
38 lines
584 B
Go
package netif
|
|
|
|
import (
|
|
"github.com/vishvananda/netlink"
|
|
)
|
|
|
|
func CreateBridge(name string, mtu int) error {
|
|
br := &netlink.Bridge{
|
|
LinkAttrs: netlink.LinkAttrs{
|
|
Name: name,
|
|
MTU: mtu,
|
|
},
|
|
}
|
|
|
|
if err := netlink.LinkAdd(br); err != nil {
|
|
return err
|
|
}
|
|
|
|
if err := netlink.LinkSetUp(br); err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
func BridgeSetMaster(iface, bridge string) error {
|
|
link, err := netlink.LinkByName(iface)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
br, err := netlink.LinkByName(bridge)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
return netlink.LinkSetMaster(link, br)
|
|
}
|