Documentation ¶
Index ¶
Constants ¶
View Source
const ( ServerKey = "server-config" PipelineNameKey = "meshsync-pipeline" ResourcesKey = "resources" GlobalResourceKey = "global" LocalResourceKey = "local" ListenersKey = "listeners" LogStreamsKey = "log-streams" PatternResourceIDLabelKey = "resource.pattern.meshplay.io/id" BrokerURL = "broker-url" RequestStream = "request-stream" LogStream = "log-stream" ExecShell = "exec-shell" InformerStore = "informer-store" )
View Source
const (
ErrInitConfigCode = "1000"
)
Variables ¶
View Source
var ( Server = map[string]string{ "name": "meshplay-meshsync", "port": "11000", "version": "latest", "startedat": time.Now().String(), } DefaultPublishingSubject = "meshplay.meshsync.core" Pipelines = map[string]PipelineConfigs{ GlobalResourceKey: []PipelineConfig{ { Name: "namespaces.v1.", PublishTo: DefaultPublishingSubject, }, { Name: "configmaps.v1.", PublishTo: "meshplay.meshsync.core", }, { Name: "nodes.v1.", PublishTo: "meshplay.meshsync.core", }, { Name: "secrets.v1.", PublishTo: "meshplay.meshsync.core", }, { Name: "persistentvolumes.v1.", PublishTo: "meshplay.meshsync.core", }, { Name: "persistentvolumeclaims.v1.", PublishTo: "meshplay.meshsync.core", }, }, LocalResourceKey: []PipelineConfig{ { Name: "replicasets.v1.apps", PublishTo: DefaultPublishingSubject, }, { Name: "pods.v1.", PublishTo: DefaultPublishingSubject, }, { Name: "services.v1.", PublishTo: DefaultPublishingSubject, }, { Name: "deployments.v1.apps", PublishTo: DefaultPublishingSubject, }, { Name: "statefulsets.v1.apps", PublishTo: DefaultPublishingSubject, }, { Name: "daemonsets.v1.apps", PublishTo: DefaultPublishingSubject, }, { Name: "ingresses.v1.networking.k8s.io", PublishTo: DefaultPublishingSubject, }, { Name: "endpoints.v1.", PublishTo: DefaultPublishingSubject, }, { Name: "endpointslices.v1.discovery.k8s.io", PublishTo: DefaultPublishingSubject, }, { Name: "cronjobs.v1.batch", PublishTo: DefaultPublishingSubject, }, { Name: "replicationcontrollers.v1.", PublishTo: DefaultPublishingSubject, }, { Name: "storageclasses.v1.storage.k8s.io", PublishTo: DefaultPublishingSubject, }, { Name: "clusterroles.v1.rbac.authorization.k8s.io", PublishTo: DefaultPublishingSubject, }, { Name: "volumeattachments.v1.storage.k8s.io", PublishTo: DefaultPublishingSubject, }, { Name: "apiservices.v1.apiregistration.k8s.io", PublishTo: DefaultPublishingSubject, }, }, } Listeners = map[string]ListenerConfig{ LogStream: { Name: LogStream, ConnectionName: "meshsync-logstream", PublishTo: "meshplay.meshsync.logs", }, ExecShell: { Name: ExecShell, ConnectionName: "meshsync-exec", PublishTo: "meshplay.meshsync.exec", }, RequestStream: { Name: RequestStream, ConnectionName: "meshsync-request-stream", SubscribeTo: "meshplay.meshsync.request", }, } DefaultEvents = []string{"ADD", "UPDATE", "DELETE"} )
Functions ¶
func ErrInitConfig ¶
Types ¶
type ListenerConfig ¶
type ListenerConfig struct { Name string `json:"name" yaml:"name"` ConnectionName string `json:"connection-name" yaml:"connection-name"` PublishTo string `json:"publish-to" yaml:"publish-to"` SubscribeTo string `json:"subscribe-to" yaml:"subscribe-to"` Events []string `json:"events" yaml:"events"` }
type ListenerConfigs ¶
type ListenerConfigs []ListenerConfig
type MeshsyncConfig ¶
type MeshsyncConfig struct { BlackList []string `json:"blacklist" yaml:"blacklist"` Pipelines map[string]PipelineConfigs `json:"pipeline-configs,omitempty" yaml:"pipeline-configs,omitempty"` Listeners map[string]ListenerConfig `json:"listener-config,omitempty" yaml:"listener-config,omitempty"` WhiteList []ResourceConfig `json:"resource-configs" yaml:"resource-configs"` }
Meshsync configuration controls the resources meshsync produces and consumes
func GetMeshsyncCRDConfigs ¶
func GetMeshsyncCRDConfigs(dyClient dynamic.Interface) (*MeshsyncConfig, error)
func PopulateConfigs ¶
func PopulateConfigs(configMap corev1.ConfigMap) (*MeshsyncConfig, error)
PopulateConfigs compares the default configs and the whitelist and blacklist
type PipelineConfig ¶
type PipelineConfigs ¶
type PipelineConfigs []PipelineConfig
func (PipelineConfigs) Add ¶
func (p PipelineConfigs) Add(pc PipelineConfig) PipelineConfigs
func (PipelineConfigs) Delete ¶
func (p PipelineConfigs) Delete(pc PipelineConfig) PipelineConfigs
type ResourceConfig ¶
Watched Resource configuration
Click to show internal directories.
Click to hide internal directories.