nodes

package
v0.26.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 7, 2022 License: BSD-3-Clause Imports: 3 Imported by: 1

Documentation

Index

Constants

View Source
const (
	// default connection mode for vrnetlab based containers
	VrDefConnMode = "tc"
	// keys for the map returned by GetImages
	ImageKey   = "image"
	KernelKey  = "kernel"
	SandboxKey = "sandbox"
)
View Source
const (
	NodeKindBridge           = "bridge"
	NodeKindCEOS             = "ceos"
	NodeKindCVX              = "cvx"
	NodeKindCRPD             = "crpd"
	NodeKindHOST             = "host"
	NodeKindLinux            = "linux"
	NodeKindMySocketIO       = "mysocketio"
	NodeKindOVS              = "ovs-bridge"
	NodeKindSonic            = "sonic-vs"
	NodeKindSRL              = "srl"
	NodeKindVrCSR            = "vr-csr"
	NodeKindVrPAN            = "vr-pan"
	NodeKindVrN9KV           = "vr-n9kv"
	NodeKindVrFTOSV          = "vr-ftosv"
	NodeKindVrROS            = "vr-ros"
	NodeKindVrSROS           = "vr-sros"
	NodeKindVrVEOS           = "vr-veos"
	NodeKindVrVMX            = "vr-vmx"
	NodeKindVrVQFX           = "vr-vqfx"
	NodeKindVrXRV            = "vr-xrv"
	NodeKindVrXRV9K          = "vr-xrv9k"
	NodeKindVrNXOS           = "vr-nxos"
	NodeKindIPInfusionOCNOS  = "ipinfusion-ocnos"
	NodeKindKeysightIxiaCOne = "keysight_ixia-c-one"
)

Variables

View Source
var DefaultConfigTemplates = map[string]string{
	"vr-sros": "",
}
View Source
var DefaultCredentials = map[string][]string{
	"srl":                   {"admin", "admin"},
	"vr-pan":                {"admin", "Admin@123"},
	"vr-n9kv":               {"admin", "admin"},
	"vr-ftosv":              {"admin", "admin"},
	"vr-sros":               {"admin", "admin"},
	"vr-vmx":                {"admin", "admin@123"},
	"vr-vqfx":               {"admin", "admin@123"},
	"vr-xrv9k":              {"clab", "clab@123"},
	"vr-csr":                {"admin", "admin"},
	NodeKindIPInfusionOCNOS: {"admin", "admin"},
}

DefaultCredentials holds default username and password per each kind

View Source
var NodeKind string
View Source
var Nodes = map[string]Initializer{}
View Source
var NonDefaultRuntimes = map[string]string{
	NodeKindCVX: runtime.IgniteRuntime,
}

a map of node kinds overriding the default global runtime

Functions

func Register

func Register(name string, initFn Initializer)

Types

type Initializer

type Initializer func() Node

type Node

type Node interface {
	Init(*types.NodeConfig, ...NodeOption) error
	Config() *types.NodeConfig
	PreDeploy(configName, labCADir, labCARoot string) error
	Deploy(context.Context) error
	PostDeploy(context.Context, map[string]Node) error
	WithMgmtNet(*types.MgmtNet)
	WithRuntime(runtime.ContainerRuntime)
	SaveConfig(context.Context) error
	Delete(context.Context) error
	GetImages() map[string]string
	GetRuntime() runtime.ContainerRuntime
}

type NodeOption

type NodeOption func(Node)

func WithMgmtNet

func WithMgmtNet(mgmt *types.MgmtNet) NodeOption

func WithRuntime

func WithRuntime(r runtime.ContainerRuntime) NodeOption

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL