contiv

package
v0.0.0-...-a11b7ec Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2018 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Overview

Package contiv defines flavor used for Contiv-VPP agent.

Index

Constants

View Source
const (
	// ContivConfigPath is the default location of Agent's Contiv plugin. This path reflects configuration in k8s/contiv-vpp.yaml.
	ContivConfigPath = "/etc/agent/contiv.yaml"

	// ContivConfigPathUsage explains the purpose of 'kube-config' flag.
	ContivConfigPathUsage = "Path to the Agent's Contiv plugin configuration yaml file."
)

Variables

This section is empty.

Functions

func NewAgent

func NewAgent(opts ...core.Option) *core.Agent

NewAgent returns a new instance of the Agent with plugins. It is an alias for core.NewAgent() to implicit use of the FlavorContiv

func WithPlugins

func WithPlugins(listPlugins func(local *FlavorContiv) []*core.NamedPlugin) core.WithPluginsOpt

WithPlugins for adding custom plugins to SFC Controller <listPlugins> is a callback that uses flavor input to inject dependencies for custom plugins that are in output

Types

type FlavorContiv

type FlavorContiv struct {
	*local.FlavorLocal
	HTTP       rest.Plugin
	HealthRPC  probe.Plugin
	Prometheus prometheus.Plugin

	ETCD            etcdv3.Plugin
	ETCDDataSync    kvdbsync.Plugin
	NodeIDDataSync  kvdbsync.Plugin
	ServiceDataSync kvdbsync.Plugin
	PolicyDataSync  kvdbsync.Plugin

	KVProxy kvdbproxy.Plugin
	Stats   statscollector.Plugin

	LinuxLocalClient localclient.Plugin
	GoVPP            govppmux.GOVPPPlugin
	Linux            linuxplugin.Plugin
	VPP              defaultplugins.Plugin
	GRPC             grpc.Plugin
	Contiv           contiv.Plugin
	Policy           policy.Plugin
	Service          service.Plugin

	// resync should the last plugin in the flavor in order to give
	// the others enough time to register
	ResyncOrch resync.Plugin
	// contains filtered or unexported fields
}

FlavorContiv glues together multiple plugins to manage VPP and Linux configuration using the local client.

func (*FlavorContiv) Inject

func (f *FlavorContiv) Inject() bool

Inject sets inter-plugin references.

func (*FlavorContiv) Plugins

func (f *FlavorContiv) Plugins() []*core.NamedPlugin

Plugins combines all Plugins in the flavor to a list.

Jump to

Keyboard shortcuts

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