 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func BuildAffinity(cluster *appsv1alpha1.Cluster, ...) *appsv1alpha1.Affinity
- func BuildPodAffinity(cluster *appsv1alpha1.Cluster, clusterOrCompAffinity *appsv1alpha1.Affinity, ...) (*corev1.Affinity, error)
- func BuildPodTopologySpreadConstraints(cluster *appsv1alpha1.Cluster, clusterOrCompAffinity *appsv1alpha1.Affinity, ...) []corev1.TopologySpreadConstraint
- func BuildTolerations(cluster *appsv1alpha1.Cluster, ...) ([]corev1.Toleration, error)
- func CheckJobSucceed(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, ...) error
- func CleanJobByName(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, ...) error
- func CleanJobWithLabels(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, ...) error
- func GenerateComponentEnvName(clusterName, componentName string) string
- func GenerateConnCredential(clusterName string) string
- func GenerateDefaultServiceDescriptorName(clusterName string) string
- func GetConfigSpecByName(component *SynthesizedComponent, configSpec string) *appsv1alpha1.ComponentConfigSpec
- func GetEnvReplacementMapForConnCredential(clusterName string) map[string]string
- func GetJobWithLabels(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, ...) ([]batchv1.Job, error)
- func GetReplacementMapForBuiltInEnv(clusterName, clusterUID, componentName string) map[string]string
- func ReconcileCompPostStart(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, ...) error
- func ReplaceNamedVars(namedValuesMap map[string]string, targetVar string, limits int, matchAll bool) string
- func ReplaceSecretEnvVars(namedValuesMap map[string]string, envs []corev1.EnvVar) []corev1.EnvVar
- type CloudProvider
- type MonitorConfig
- type SynthesizedComponent
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildAffinity ¶
func BuildAffinity(cluster *appsv1alpha1.Cluster, clusterCompSpec *appsv1alpha1.ClusterComponentSpec) *appsv1alpha1.Affinity
func BuildPodAffinity ¶
func BuildPodAffinity( cluster *appsv1alpha1.Cluster, clusterOrCompAffinity *appsv1alpha1.Affinity, component *SynthesizedComponent, ) (*corev1.Affinity, error)
func BuildPodTopologySpreadConstraints ¶
func BuildPodTopologySpreadConstraints( cluster *appsv1alpha1.Cluster, clusterOrCompAffinity *appsv1alpha1.Affinity, component *SynthesizedComponent, ) []corev1.TopologySpreadConstraint
func BuildTolerations ¶
func BuildTolerations(cluster *appsv1alpha1.Cluster, clusterCompSpec *appsv1alpha1.ClusterComponentSpec) ([]corev1.Toleration, error)
BuildTolerations builds tolerations from config
func CheckJobSucceed ¶ added in v0.7.1
func CheckJobSucceed(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, jobName string) error
CheckJobSucceed checks the result of job execution. Returns: - bool: whether job exist, true exist - error: any error that occurred during the handling
func CleanJobByName ¶ added in v0.7.1
func CleanJobByName(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, jobName string) error
CleanJobByName cleans up the job task by name.
func CleanJobWithLabels ¶ added in v0.7.1
func CleanJobWithLabels(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, matchLabels client.MatchingLabels) error
CleanJobWithLabels cleans up the job tasks with label.
func GenerateConnCredential ¶
func GetConfigSpecByName ¶
func GetConfigSpecByName(component *SynthesizedComponent, configSpec string) *appsv1alpha1.ComponentConfigSpec
func GetEnvReplacementMapForConnCredential ¶
GetEnvReplacementMapForConnCredential gets the replacement map for connect credential
func GetJobWithLabels ¶ added in v0.7.1
func GetJobWithLabels(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, matchLabels client.MatchingLabels) ([]batchv1.Job, error)
GetJobWithLabels gets the job list with the specified labels.
func GetReplacementMapForBuiltInEnv ¶
func GetReplacementMapForBuiltInEnv(clusterName, clusterUID, componentName string) map[string]string
GetReplacementMapForBuiltInEnv gets the replacement map for KubeBlocks built-in environment variables.
func ReconcileCompPostStart ¶ added in v0.7.1
func ReconcileCompPostStart(ctx context.Context, cli client.Client, cluster *appsv1alpha1.Cluster, synthesizeComp *SynthesizedComponent, dag *graph.DAG) error
ReconcileCompPostStart reconciles the component-level postStart command.
Types ¶
type CloudProvider ¶
type CloudProvider string
const ( CloudProviderAWS CloudProvider = "aws" CloudProviderGCP CloudProvider = "gcp" CloudProviderAliyun CloudProvider = "aliyun" CloudProviderAzure CloudProvider = "azure" CloudProviderTencent CloudProvider = "tencent" CloudProviderUnknown CloudProvider = "unknown" )
type MonitorConfig ¶
type SynthesizedComponent ¶
type SynthesizedComponent struct {
	ClusterDefName        string                                 `json:"clusterDefName,omitempty"`
	ClusterName           string                                 `json:"clusterName,omitempty"`
	ClusterUID            string                                 `json:"clusterUID,omitempty"`
	Name                  string                                 `json:"name,omitempty"`
	CompDefName           string                                 `json:"compDefName,omitempty"`
	CharacterType         string                                 `json:"characterType,omitempty"`
	MinAvailable          *intstr.IntOrString                    `json:"minAvailable,omitempty"`
	Replicas              int32                                  `json:"replicas"`
	WorkloadType          v1alpha1.WorkloadType                  `json:"workloadType,omitempty"`
	StatelessSpec         *v1alpha1.StatelessSetSpec             `json:"statelessSpec,omitempty"`
	StatefulSpec          *v1alpha1.StatefulSetSpec              `json:"statefulSpec,omitempty"`
	ConsensusSpec         *v1alpha1.ConsensusSetSpec             `json:"consensusSpec,omitempty"`
	ReplicationSpec       *v1alpha1.ReplicationSetSpec           `json:"replicationSpec,omitempty"`
	RSMSpec               *v1alpha1.RSMSpec                      `json:"rsmSpec,omitempty"`
	PodSpec               *corev1.PodSpec                        `json:"podSpec,omitempty"`
	Services              []corev1.Service                       `json:"services,omitempty"`
	Probes                *v1alpha1.ClusterDefinitionProbes      `json:"probes,omitempty"`
	VolumeClaimTemplates  []corev1.PersistentVolumeClaimTemplate `json:"volumeClaimTemplates,omitempty"`
	Monitor               *MonitorConfig                         `json:"monitor,omitempty"`
	EnabledLogs           []string                               `json:"enabledLogs,omitempty"`
	LogConfigs            []v1alpha1.LogConfig                   `json:"logConfigs,omitempty"`
	ConfigTemplates       []v1alpha1.ComponentConfigSpec         `json:"configTemplates,omitempty"`
	ScriptTemplates       []v1alpha1.ComponentTemplateSpec       `json:"scriptTemplates,omitempty"`
	HorizontalScalePolicy *v1alpha1.HorizontalScalePolicy        `json:"horizontalScalePolicy,omitempty"`
	TLS                   bool                                   `json:"tls"`
	Issuer                *v1alpha1.Issuer                       `json:"issuer,omitempty"`
	VolumeTypes           []v1alpha1.VolumeTypeSpec              `json:"volumeTypes,omitempty"`
	VolumeProtection      *v1alpha1.VolumeProtectionSpec         `json:"volumeProtection,omitempty"`
	CustomLabelSpecs      []v1alpha1.CustomLabelSpec             `json:"customLabelSpecs,omitempty"`
	SwitchoverSpec        *v1alpha1.SwitchoverSpec               `json:"switchoverSpec,omitempty"`
	ComponentDef          string                                 `json:"componentDef,omitempty"`
	ServiceAccountName    string                                 `json:"serviceAccountName,omitempty"`
	StatefulSetWorkload   v1alpha1.StatefulSetWorkload           `json:"statefulSetWorkload,omitempty"`
	ComponentRefEnvs      []*corev1.EnvVar                       `json:"componentRefEnvs,omitempty"`
	ServiceReferences     map[string]*v1alpha1.ServiceDescriptor `json:"serviceReferences,omitempty"`
	PostStartSpec         *v1alpha1.PostStartAction              `json:"postStartSpec,omitempty"`
}
    func BuildComponent ¶
func BuildComponent(reqCtx intctrlutil.RequestCtx, clsMgr *class.Manager, cluster *appsv1alpha1.Cluster, clusterDef *appsv1alpha1.ClusterDefinition, clusterCompDef *appsv1alpha1.ClusterComponentDefinition, clusterCompSpec *appsv1alpha1.ClusterComponentSpec, serviceReferences map[string]*appsv1alpha1.ServiceDescriptor, clusterCompVers ...*appsv1alpha1.ClusterComponentVersion, ) (*SynthesizedComponent, error)
 Click to show internal directories. 
   Click to hide internal directories.