commons

package
v0.1.5 Latest Latest
Warning

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

Go to latest
Published: Aug 13, 2022 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultFsmNamespace           = "flomesh"
	DefaultCABundleName           = "flomesh-ca-bundle"
	RootCACertName                = "ca.crt"
	RootCAPrivateKeyName          = "ca.key"
	TLSCertName                   = "tls.crt"
	TLSPrivateKeyName             = "tls.key"
	WebhookServerServingCertsPath = "/tmp/k8s-webhook-server/serving-certs"
	DefaultCAValidityPeriod       = 24 * 365 * 10 * time.Hour
	DefaultCACommonName           = "flomesh.io"
	DefaultCACountry              = "CN"
	DefaultCALocality             = "Dalian"
	DefaultCAOrganization         = "flomesh.io"
	OperatorManagerComponentName  = "manager"
	MeshConfigName                = "mesh-config"
	MeshConfigJsonName            = "mesh_config.json"
	DefaultPipyRepoPath           = "/repo"
	DefaultPipyRepoApiPath        = "/api/v1/repo"

	DeploymentNameSuffix = "-fsmdp"
	ServiceNameSuffix    = "-fsmsvc"
	ConfigMapNameSuffix  = "-fsmcm"
	DaemonSetNameSuffix  = "-fsmds"
	VolumeNameSuffix     = "-fsmvlm"

	DefaultWebhookServiceName                 = "webhook-service"
	DefaultMutatingWebhookConfigurationName   = "flomesh-mutating-webhook-configuration"
	DefaultValidatingWebhookConfigurationName = "flomesh-validating-webhook-configuration"
	ProxyInjectorWebhookPath                  = "/proxy-injector-flomesh-io-v1alpha1"
	ProxyProfileMutatingWebhookPath           = "/mutate-flomesh-io-v1alpha1-proxyprofile"
	ProxyProfileValidatingWebhookPath         = "/validate-flomesh-io-v1alpha1-proxyprofile"
	ConfigMapMutatingWebhookPath              = "/mutate-core-v1-configmap"
	ConfigMapValidatingWebhookPath            = "/validate-core-v1-configmap"
	ClusterMutatingWebhookPath                = "/mutate-flomesh-io-v1alpha1-cluster"
	ClusterValidatingWebhookPath              = "/validate-flomesh-io-v1alpha1-cluster"
	NamespacedIngressMutatingWebhookPath      = "/mutate-flomesh-io-v1alpha1-namespacedingress"
	NamespacedIngressValidatingWebhookPath    = "/validate-flomesh-io-v1alpha1-namespacedingress"
	GatewayMutatingWebhookPath                = "/mutate-gateway-networking-k8s-io-v1alpha2-gateway"
	GatewayValidatingWebhookPath              = "/validate-gateway-networking-k8s-io-v1alpha2-gateway"
	GatewayClassMutatingWebhookPath           = "/mutate-gateway-networking-k8s-io-v1alpha2-gatewayclass"
	GatewayClassValidatingWebhookPath         = "/validate-gateway-networking-k8s-io-v1alpha2-gatewayclass"
	HTTPRouteMutatingWebhookPath              = "/mutate-gateway-networking-k8s-io-v1alpha2-httproute"
	HTTPRouteValidatingWebhookPath            = "/validate-gateway-networking-k8s-io-v1alpha2-httproute"
	ReferencePolicyMutatingWebhookPath        = "/mutate-gateway-networking-k8s-io-v1alpha2-referencepolicy"
	ReferencePolicyValidatingWebhookPath      = "/validate-gateway-networking-k8s-io-v1alpha2-referencepolicy"
	TCPRouteMutatingWebhookPath               = "/mutate-gateway-networking-k8s-io-v1alpha2-tcproute"
	TCPRouteValidatingWebhookPath             = "/validate-gateway-networking-k8s-io-v1alpha2-tcproute"
	TLSRouteMutatingWebhookPath               = "/mutate-gateway-networking-k8s-io-v1alpha2-tlsroute"
	TLSRouteValidatingWebhookPath             = "/validate-gateway-networking-k8s-io-v1alpha2-tlsroute"
	UDPRouteMutatingWebhookPath               = "/mutate-gateway-networking-k8s-io-v1alpha2-udproute"
	UDPRouteValidatingWebhookPath             = "/validate-gateway-networking-k8s-io-v1alpha2-udproute"

	AnnotationPrefix                  = "flomesh.io"
	ProxyInjectIndicator              = AnnotationPrefix + "/inject"
	FlomeshControlPlaneLabel          = AnnotationPrefix + "/control-plane"
	ProxyInjectAnnotation             = ProxyInjectIndicator
	ProxyInjectNamespaceLabel         = ProxyInjectIndicator
	ProxyInjectStatusAnnotation       = AnnotationPrefix + "/inject-status"
	MatchedProxyProfile               = AnnotationPrefix + "/proxy-profile"
	ConfigHashAnnotation              = AnnotationPrefix + "/config-hash"
	SpecHashAnnotation                = AnnotationPrefix + "/spec-hash"
	ProxySpecHashAnnotation           = AnnotationPrefix + "/proxy-hash"
	ProxyProfileLastUpdated           = AnnotationPrefix + "/last-updated"
	ProxyProfileLastUpdatedTimeFormat = "20060102-150405.0000"
	InjectorAnnotationPrefix          = "sidecar.flomesh.io"
	ProxyServiceNameAnnotation        = InjectorAnnotationPrefix + "/service-name"
	ProxyDefaultProxyProfileLabel     = InjectorAnnotationPrefix + "/is-default-proxyprofile"
	ProxyProfileLabel                 = MatchedProxyProfile
	ProxyInjectEnabled                = "true"
	ProxyInjectDisabled               = "false"
	ProxyInjectdStatus                = "injected"
	ProxySharedResourceVolumeName     = "shared-proxy-res"
	ProxySharedResoueceMountPath      = "/sidecar"
	ProxyProfileConfigMapMountPath    = "/config"
	ProxyConfigWorkDir                = "/etc/pipy/proxy"
	PipyProxyConfigFileEnvName        = "PIPY_CONFIG_FILE"
	PipyProxyPortEnvName              = "_PIPY_LISTEN_PORT_"
	ProxyProfileConfigWorkDirEnvName  = "_SIDECAR_CONFIG_PATH_"
	DefaultProxyStartupScriptName     = "config.js"
	ProxyCRDLabel                     = AnnotationPrefix + "/proxy"
	ProxyCRDAnnotation                = ProxyCRDLabel
	ProxyModeLabel                    = AnnotationPrefix + "/proxy-mode"
	CRDTypeLabel                      = AnnotationPrefix + "/crd"
	CRDVersionLabel                   = AnnotationPrefix + "/crd-version"
	ProxyParentPathEnvName            = "PROXY_PARENT_PATH"
	ProxyPathsEnvName                 = "PROXY_PATHS"
	ProxyRepoBaseUrlEnvName           = "PROXY_REPO_BASE_URL"
	ProxyRepoApiBaseUrlEnvName        = "PROXY_REPO_API_BASE_URL"
	MatchedProxyProfileEnvName        = "MATCHED_PROXY_PROFILE"
	DefaultServicePathTpl             = "/" + ClusterTpl + "/services"
	DefaultIngressPathTpl             = "/" + ClusterTpl + "/ingress"
	DefaultProxyProfileParentPathTpl  = DefaultServicePathTpl
	DefaultProxyProfilePathTpl        = "/" + ClusterTpl + "/pf/{{ .ProxyProfile }}"
	DefaultSidecarPathTpl             = "/" + ClusterTpl + "/sidecars/{{ .ProxyProfile }}/{{ .Sidecar }}"
	DefaultServiceBasePath            = "/base/services"
	DefaultIngressBasePath            = "/base/ingress"

	// DefaultHttpSchema, default http schema
	DefaultHttpSchema = "http"

	MultiClustersPrefix                    = "cluster.flomesh.io"
	MultiClustersClusterName               = MultiClustersPrefix + "/name"
	MultiClustersRegion                    = MultiClustersPrefix + "/region"
	MultiClustersZone                      = MultiClustersPrefix + "/zone"
	MultiClustersGroup                     = MultiClustersPrefix + "/group"
	MultiClustersExported                  = MultiClustersPrefix + "/export"
	MultiClustersExportedName              = MultiClustersPrefix + "/export-name"
	MultiClustersSecretType                = MultiClustersPrefix + "/kubeconfig"
	KubeConfigEnvName                      = "KUBECONFIG"
	KubeConfigKey                          = "kubeconfig"
	ReservedInClusterClusterName           = "local"
	ClusterNameEnvName                     = "FLOMESH_CLUSTER_NAME"
	ClusterRegionEnvName                   = "FLOMESH_CLUSTER_REGION"
	ClusterZoneEnvName                     = "FLOMESH_CLUSTER_ZONE"
	ClusterGroupEnvName                    = "FLOMESH_CLUSTER_GROUP"
	ClusterGatewayEnvName                  = "FLOMESH_CLUSTER_GATEWAY"
	ClusterConnectorNamespaceEnvName       = "FLOMESH_CLUSTER_CONNECTOR_NAMESPACE"
	ClusterConnectorModeEnvName            = "FLOMESH_CLUSTER_CONNECTOR_MODE"
	ClusterControlPlaneRepoRootUrlEnvName  = "FLOMESH_CLUSTER_CONTROL_PLANE_REPO_ROOT_URL"
	ClusterControlPlaneRepoPathEnvName     = "FLOMESH_CLUSTER_CONTROL_PLANE_REPO_PATH"
	ClusterControlPlaneRepoApiPathEnvName  = "FLOMESH_CLUSTER_CONTROL_PLANE_REPO_API_PATH"
	FlomeshRepoServiceAddressEnvName       = "FLOMESH_REPO_SERVICE_ADDRESS"
	FlomeshServiceAggregatorAddressEnvName = "FLOMESH_SERVICE_AGGREGATOR_ADDRESS"
	ClusterConnectorDeploymentPrefix       = "cluster-connector-"
	ClusterConnectorSecretVolumeName       = "kubeconfig"
	ClusterConnectorConfigmapVolumeName    = "connector-config"
	ClusterConnectorSecretNamePrefix       = "cluster-credentials-"
	ClusterConnectorSecretNameTpl          = ClusterConnectorSecretNamePrefix + "%s"
	DefaultClusterConnectorImage           = "flomesh/cluster-connector:latest"
	ClusterTpl                             = "{{ .Region }}/{{ .Zone }}/{{ .Group }}/{{ .Cluster }}"
)
View Source
const AppVersionTemplate = `` /* 206-byte string literal not displayed */

Variables

View Source
var (
	ClusterIDTemplate              = template.Must(template.New("ClusterIDTemplate").Parse(ClusterTpl))
	ProxyProfileParentPathTemplate = template.Must(template.New("ProxyProfileParentPathTemplate").Parse(DefaultProxyProfileParentPathTpl))
	ProxyProfilePathTemplate       = template.Must(template.New("ProxyProfilePathTemplate").Parse(DefaultProxyProfilePathTpl))
	SidecarPathTemplate            = template.Must(template.New("SidecarPathTemplate").Parse(DefaultSidecarPathTpl))
	IngressPathTemplate            = template.Must(template.New("IngressPathTemplate").Parse(DefaultIngressPathTpl))
	ServicePathTemplate            = template.Must(template.New("ServicePathTemplate").Parse(DefaultServicePathTpl))
)

Functions

This section is empty.

Types

type FlomeshConfigType

type FlomeshConfigType string
const (
	MeshConfig FlomeshConfigType = MeshConfigName
)

type Response

type Response struct {
	Success bool   `json:"success,omitempty"`
	Result  string `json:"result,omitempty"`
}

Jump to

Keyboard shortcuts

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