npm

package
v1.4.17 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2022 License: MIT Imports: 23 Imported by: 1

Documentation

Overview

Copyright 2018 Microsoft. All rights reserved. MIT License

Copyright 2018 Microsoft. All rights reserved. MIT License

Copyright 2018 Microsoft. All rights reserved. MIT License

Copyright 2018 Microsoft. All rights reserved. MIT License

Copyright 2018 Microsoft. All rights reserved. MIT License

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInformerFactoryNil  = errors.New("informer factory is nil")
	ErrTransportManagerNil = errors.New("transport manager is nil")
	ErrK8SServerVersionNil = errors.New("k8s server version is nil")
	ErrInformerSyncFailure = errors.New("informer sync failure")
)
View Source
var ErrDataplaneNotInitialized = errors.New("dataplane is not initialized")

Functions

func CacheEncoder

func CacheEncoder(nodeName string) json.Marshaler

CacheEncoder is used only for unit tests to test encoding and decoding Cache.

func GetAIMetadata

func GetAIMetadata() string

GetAIMetadata returns ai metadata number

func GetNodeName added in v1.4.15

func GetNodeName() string

Types

type AzureConfig added in v1.4.17

type AzureConfig struct {
	NodeName string

	TelemetryEnabled bool
	// contains filtered or unexported fields
}

AzureConfig captures the Azure specific configurations and fields

type CacheKey added in v1.4.13

type CacheKey string

Cache is the cache lookup key for the NPM cache

const (
	NodeName CacheKey = "NodeName"

	NsMap   CacheKey = "NsMap"
	PodMap  CacheKey = "PodMap"
	ListMap CacheKey = "ListMap"
	SetMap  CacheKey = "SetMap"

	EnvNodeName = "HOSTNAME"
)

type Informers added in v1.4.17

type Informers struct {
	// contains filtered or unexported fields
}

Informers are the informers for the k8s controllers

type K8SControllersV1 added in v1.4.17

type K8SControllersV1 struct {
	// contains filtered or unexported fields
}

K8SControllerV1 are the legacy k8s controllers

type K8SControllersV2 added in v1.4.17

type K8SControllersV2 struct {
	// contains filtered or unexported fields
}

K8SControllerV2 are the optimized k8s controllers that replace the legacy controllers

type NetworkPolicyDaemon added in v1.4.17

type NetworkPolicyDaemon struct {
	// contains filtered or unexported fields
}

func NewNetworkPolicyDaemon added in v1.4.17

func (*NetworkPolicyDaemon) GetAppVersion added in v1.4.17

func (n *NetworkPolicyDaemon) GetAppVersion() string

func (*NetworkPolicyDaemon) Start added in v1.4.17

func (n *NetworkPolicyDaemon) Start(config npmconfig.Config, stopCh <-chan struct{}) error

type NetworkPolicyManager

type NetworkPolicyManager struct {

	// Informers are the Kubernetes Informer
	// https://pkg.go.dev/k8s.io/client-go/informers
	Informers

	// Legacy controllers for handling Kubernetes resource watcher events
	// To be deprecated
	K8SControllersV1

	// Controllers for handling Kubernetes resource watcher events
	K8SControllersV2

	// Azure-specific variables
	AzureConfig
	// contains filtered or unexported fields
}

NetworkPolicyManager contains informers for pod, namespace and networkpolicy.

func NewNetworkPolicyManager

func NewNetworkPolicyManager(config npmconfig.Config,
	informerFactory informers.SharedInformerFactory,
	dp dataplane.GenericDataplane,
	exec utilexec.Interface,
	npmVersion string,
	k8sServerVersion *version.Info) *NetworkPolicyManager

NewNetworkPolicyManager creates a NetworkPolicyManager

func (*NetworkPolicyManager) GetAppVersion

func (npMgr *NetworkPolicyManager) GetAppVersion() string

GetAppVersion returns network policy manager app version

func (*NetworkPolicyManager) MarshalJSON

func (npMgr *NetworkPolicyManager) MarshalJSON() ([]byte, error)

func (*NetworkPolicyManager) Start

func (npMgr *NetworkPolicyManager) Start(config npmconfig.Config, stopCh <-chan struct{}) error

Start starts shared informers and waits for the shared informer cache to sync.

type NetworkPolicyServer added in v1.4.17

type NetworkPolicyServer struct {

	// Informers are the Kubernetes Informer
	// https://pkg.go.dev/k8s.io/client-go/informers
	Informers

	// Controllers for handling Kubernetes resource watcher events
	K8SControllersV2

	// Azure-specific variables
	AzureConfig
	// contains filtered or unexported fields
}

func NewNetworkPolicyServer added in v1.4.17

func NewNetworkPolicyServer(
	config npmconfig.Config,
	informerFactory informers.SharedInformerFactory,
	mgr *transport.EventsServer,
	dp dataplane.GenericDataplane,
	npmVersion string,
	k8sServerVersion *version.Info,
) (*NetworkPolicyServer, error)

func (*NetworkPolicyServer) GetAppVersion added in v1.4.17

func (n *NetworkPolicyServer) GetAppVersion() string

func (*NetworkPolicyServer) MarshalJSON added in v1.4.17

func (n *NetworkPolicyServer) MarshalJSON() ([]byte, error)

func (*NetworkPolicyServer) Start added in v1.4.17

func (n *NetworkPolicyServer) Start(config npmconfig.Config, stopCh <-chan struct{}) error

Directories

Path Synopsis
http
api
Package ipsm focus on ip set operation Copyright 2018 Microsoft.
Package ipsm focus on ip set operation Copyright 2018 Microsoft.
pkg
controlplane/translation
Package translation converts NetworkPolicy object to policies.NPMNetworkPolicy object which contains necessary information to program dataplanes.
Package translation converts NetworkPolicy object to policies.NPMNetworkPolicy object which contains necessary information to program dataplanes.
dataplane/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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