kubernetes: github.com/igm/kubernetes/pkg/kubelet/config Index | Files

package config

import "github.com/igm/kubernetes/pkg/kubelet/config"

Package config implements the pod configuration readers.

Reads the pod configuration from etcd using the Kubernetes etcd schema.

Reads the pod configuration from file or a directory of files.

Reads the pod configuration from an HTTP GET response.

Index

Package Files

config.go doc.go etcd.go file.go http.go

Constants

const (
    // PodConfigNotificationSnapshot delivers the full configuration as a SET whenever
    // any change occurs.
    PodConfigNotificationSnapshot = iota
    // PodConfigNotificationSnapshotAndUpdates delivers an UPDATE message whenever pods are
    // changed, and a SET message if there are any additions or removals.
    PodConfigNotificationSnapshotAndUpdates
    // PodConfigNotificationIncremental delivers ADD, UPDATE, and REMOVE to the update channel.
    PodConfigNotificationIncremental
)

func EtcdKeyForHost Uses

func EtcdKeyForHost(hostname string) string

func NewSourceEtcd Uses

func NewSourceEtcd(key string, client tools.EtcdClient, updates chan<- interface{})

NewSourceEtcd creates a config source that watches and pulls from a key in etcd

func NewSourceFile Uses

func NewSourceFile(path string, period time.Duration, updates chan<- interface{})

func NewSourceURL Uses

func NewSourceURL(url string, period time.Duration, updates chan<- interface{})

type PodConfig Uses

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

PodConfig is a configuration mux that merges many sources of pod configuration into a single consistent structure, and then delivers incremental change notifications to listeners in order.

func NewPodConfig Uses

func NewPodConfig(mode PodConfigNotificationMode) *PodConfig

NewPodConfig creates an object that can merge many configuration sources into a stream of normalized updates to a pod configuration.

func (*PodConfig) Channel Uses

func (c *PodConfig) Channel(source string) chan<- interface{}

Channel creates or returns a config source channel. The channel only accepts PodUpdates

func (*PodConfig) Sync Uses

func (c *PodConfig) Sync()

Sync requests the full configuration be delivered to the update channel.

func (*PodConfig) Updates Uses

func (c *PodConfig) Updates() <-chan kubelet.PodUpdate

Updates returns a channel of updates to the configuration, properly denormalized.

type PodConfigNotificationMode Uses

type PodConfigNotificationMode int

PodConfigNotificationMode describes how changes are sent to the update channel.

Package config imports 28 packages (graph). Updated 2018-04-09. Refresh now. Tools for package owners.