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.