controllers

package
v0.6.1-r2 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2022 License: Apache-2.0 Imports: 54 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MetricPortName = "metrics"
	MetricPath     = "/metrics"

	MixCoordName   = "mixcoord"
	RootCoordName  = "rootcoord"
	DataCoordName  = "datacoord"
	QueryCoordName = "querycoord"
	IndexCoordName = "indexcoord"
	DataNodeName   = "datanode"
	QueryNodeName  = "querynode"
	IndexNodeName  = "indexnode"
	ProxyName      = "proxy"
	StandaloneName = "standalone"
	MilvusName     = "milvus"

	MixCoordFieldName   = "MixCoord"
	RootCoordFieldName  = "RootCoord"
	DataCoordFieldName  = "DataCoord"
	QueryCoordFieldName = "QueryCoord"
	IndexCoordFieldName = "IndexCoord"
	DataNodeFieldName   = "DataNode"
	QueryNodeFieldName  = "QueryNode"
	IndexNodeFieldName  = "IndexNode"
	ProxyFieldName      = "Proxy"
	StandaloneFieldName = "Standalone"

	MetricPort     = 9091
	MultiplePorts  = -1
	RootCoordPort  = 53100
	DataCoordPort  = 13333
	QueryCoordPort = 19531
	IndexCoordPort = 31000
	IndexNodePort  = 21121
	QueryNodePort  = 21123
	DataNodePort   = 21124
	ProxyPort      = 19530
	// TODO: use configurable port?
	MilvusPort     = ProxyPort
	StandalonePort = MilvusPort
)

const name or ports

View Source
const (
	Etcd   = "etcd"
	Minio  = "minio"
	Pulsar = "pulsar"
	Kafka  = "kafka"
)
View Source
const (
	MilvusDataVolumeName         = "milvus-data" // for standalone persistence only
	MilvusConfigVolumeName       = "milvus-config"
	MilvusOriginalConfigPath     = "/milvus/configs/milvus.yaml"
	MilvusUserConfigMountPath    = "/milvus/configs/user.yaml"
	MilvusUserConfigMountSubPath = "user.yaml"
	AccessKey                    = "accesskey"
	SecretKey                    = "secretkey"
	AnnotationCheckSum           = "checksum/config"

	ToolsVolumeName = "tools"
	ToolsMountPath  = "/milvus/tools"
	RunScriptPath   = ToolsMountPath + "/run.sh"
	MergeToolPath   = ToolsMountPath + "/merge"
)
View Source
const (
	MilvusStatusCodeCreating  = float64(0)
	MilvusStatusCodeHealthy   = float64(1)
	MilvusStatusCodeUnHealthy = float64(2)
	MilvusStatusCodeDeleting  = float64(3)
)

MilvusStatusCode for milvusStatusCollector

View Source
const (
	MessageEtcdReady         = "Etcd endpoints is healthy"
	MessageEtcdNotReady      = "All etcd endpoints are unhealthy"
	MessageStorageReady      = "Storage endpoints is healthy"
	MessageStorageNotReady   = "All Storage endpoints are unhealthy"
	MessageMsgStreamReady    = "MsgStream is ready"
	MessageMsgStreamNotReady = "MsgStream is not ready"
	MessageSecretNotExist    = "Secret not exist"
	MessageKeyNotExist       = "accesskey or secretkey not exist in secret"
	MessageDecodeErr         = "accesskey or secretkey decode error"
	MessageMilvusHealthy     = "All Milvus components are healthy"
)
View Source
const (
	AppLabel          = "app.kubernetes.io/"
	AppLabelInstance  = AppLabel + "instance"
	AppLabelVersion   = AppLabel + "version"
	AppLabelComponent = AppLabel + "component"
	AppLabelName      = AppLabel + "name"
	AppLabelManagedBy = AppLabel + "managed-by"
	HelmReleaseLabel  = "release"
)
View Source
const (
	CacheSizeEnvVarName = "CACHE_SIZE"
)
View Source
const (
	MilvusFinalizerName = "milvus.milvus.io/finalizer"
)

Variables

define MilvusComponents

View Source
var (
	DefaultOperatorImageInfo = ImageInfo{
		Image:           "milvusdb/milvus-operator:main-latest",
		ImagePullPolicy: corev1.PullAlways,
	}
	ToolImage = ""
)
View Source
var (
	CacheSizeEnvVar = corev1.EnvVar{
		Name: CacheSizeEnvVarName,
		ValueFrom: &corev1.EnvVarSource{
			ResourceFieldRef: &corev1.ResourceFieldSelector{
				Divisor:  resource.MustParse("1Gi"),
				Resource: "limits.memory",
			},
		},
	}
)
View Source
var (
	// DefaultValuesPath is the path to the default values file
	// variable in test, const in runtime
	DefaultValuesPath = "config/assets/charts/values.yaml"
)
View Source
var GetReadinessProbe = GetLivenessProbe
View Source
var (
	MilvusConfigMapMode int32 = 420
)
View Source
var (
	S3ReadyCondition = v1beta1.MilvusCondition{
		Type:   v1beta1.StorageReady,
		Status: GetConditionStatus(true),
		Reason: v1beta1.ReasonS3Ready,
	}
)
View Source
var (
	SetControllerReference = func(owner, controlled metav1.Object, scheme *kruntime.Scheme) error {
		if err := ctrl.SetControllerReference(owner, controlled, scheme); err != nil {
			if reflect.TypeOf(err) == alreadyOwnedErrorType {
				if err.(*controllerutil.AlreadyOwnedError).Owner.Kind == milvusclusterOwnerKind {
					return nil
				}
			}
			return errors.Wrap(err, "set controller reference")
		}
		return nil
	}
)

Functions

func DeploymentReady

func DeploymentReady(deployment appsv1.Deployment) bool

DeploymentReady returns if deployment is available &

func GetCondition added in v0.4.0

func GetCondition(getter func() v1beta1.MilvusCondition, eps []string) v1beta1.MilvusCondition

func GetConditionStatus

func GetConditionStatus(b bool) corev1.ConditionStatus

func GetConfCheckSum added in v0.2.0

func GetConfCheckSum(spec v1beta1.MilvusSpec) string

GetConfCheckSum returns the checksum of the component configuration

func GetContainerIndex

func GetContainerIndex(containers []corev1.Container, name string) int

GetContainerIndex returns index of container @name in @containers, -1 if not found

func GetEndpointsHealth

func GetEndpointsHealth(endpoints []string) map[string]EtcdEndPointHealth

func GetEtcdCondition added in v0.2.3

func GetEtcdCondition(ctx context.Context, endpoints []string) v1beta1.MilvusCondition

func GetKafkaCondition added in v0.5.0

func GetKafkaCondition(ctx context.Context, logger logr.Logger, p v1beta1.MilvusKafka) v1beta1.MilvusCondition

func GetLivenessProbe added in v0.2.0

func GetLivenessProbe() *corev1.Probe

func GetMilvusConfCheckSum added in v0.2.0

func GetMilvusConfCheckSum(spec v1beta1.MilvusSpec) string

GetMilvusConfCheckSum returns the checksum of the component configuration

func GetMilvusEndpoint added in v0.2.3

func GetMilvusEndpoint(ctx context.Context, logger logr.Logger, client client.Client, info MilvusEndpointInfo) string

func GetMilvusInstanceCondition added in v0.2.3

func GetMilvusInstanceCondition(ctx context.Context, cli client.Client, mc v1beta1.Milvus) (v1beta1.MilvusCondition, error)

func GetMinioBucket added in v0.5.0

func GetMinioBucket(conf map[string]interface{}) string

func GetMinioCondition added in v0.2.3

func GetMinioCondition(ctx context.Context, logger logr.Logger, cli client.Client, info StorageConditionInfo) v1beta1.MilvusCondition

func GetMinioIAMEndpoint added in v0.5.0

func GetMinioIAMEndpoint(conf map[string]interface{}) string

func GetMinioSecure

func GetMinioSecure(conf map[string]interface{}) bool

func GetMinioUseIAM added in v0.5.0

func GetMinioUseIAM(conf map[string]interface{}) bool

func GetPulsarCondition added in v0.2.3

func GetPulsarCondition(ctx context.Context, logger logr.Logger, p v1beta1.MilvusPulsar) v1beta1.MilvusCondition

func GetServiceInstanceName added in v0.4.0

func GetServiceInstanceName(instance string) string

GetServiceInstanceName returns the name of the component service

func GetStartupProbe added in v0.6.0

func GetStartupProbe() *corev1.Probe

func GetStorageSecretRefEnv

func GetStorageSecretRefEnv(secretRef string) []corev1.EnvVar

func GetVolumeIndex

func GetVolumeIndex(volumes []corev1.Volume, name string) int

GetVolumeIndex returns index of volume @name in @volumes, -1 if not found

func GetVolumeMountIndex

func GetVolumeMountIndex(volumeMounts []corev1.VolumeMount, mountPath string) int

GetVolumeMountIndex returns index of volumeMount with @mountPath in @volumeMounts, -1 if not found

func InitializeMetrics added in v0.5.0

func InitializeMetrics()

InitializeMetrics for controllers

func IsDependencyReady

func IsDependencyReady(conditions []v1beta1.MilvusCondition) bool

func IsEqual

func IsEqual(obj1, obj2 interface{}) bool

IsEqual check two object is equal.

func IsSetDefaultDone added in v0.2.0

func IsSetDefaultDone(mc *v1beta1.Milvus) bool

func LoopWithInterval added in v0.2.3

func LoopWithInterval(ctx context.Context, loopFunc func() error, interval time.Duration, logger logr.Logger)

func MergeContainerPort

func MergeContainerPort(src, dst []corev1.ContainerPort) []corev1.ContainerPort

func MergeEnvVar

func MergeEnvVar(src, dst []corev1.EnvVar) []corev1.EnvVar

Merge dst env into src

func MergeLabels

func MergeLabels(allLabels ...map[string]string) map[string]string

MergeLabels merges all labels together and returns a new label.

func MergeServicePort

func MergeServicePort(src, dst []corev1.ServicePort) []corev1.ServicePort

func MergeVolumeMount

func MergeVolumeMount(src, dst []corev1.VolumeMount) []corev1.VolumeMount

func NamespacedName

func NamespacedName(namespace, name string) types.NamespacedName

func NewAppLabels

func NewAppLabels(instance string) map[string]string

func NewComponentAppLabels

func NewComponentAppLabels(instance, component string) map[string]string

func PodRunningAndReady

func PodRunningAndReady(pod corev1.Pod) (bool, error)

PodRunningAndReady returns whether a pod is running and each container has passed it's ready state.

func SetupControllers

func SetupControllers(ctx context.Context, mgr manager.Manager, enableHook bool) error

func UpdateClusterCondition added in v0.2.0

func UpdateClusterCondition(status *v1beta1.MilvusStatus, c v1beta1.MilvusCondition)

func UpdateCondition

func UpdateCondition(status *v1beta1.MilvusStatus, c v1beta1.MilvusCondition)

func WarppedReconcileComponentFunc

func WarppedReconcileComponentFunc(
	f func(context.Context, v1beta1.Milvus, MilvusComponent) error,
	ctx context.Context, mc v1beta1.Milvus, c MilvusComponent) func() error

func WrappedFunc added in v0.2.3

func WrappedFunc(f interface{}, args ...interface{}) func() error

Types

type Args added in v0.2.3

type Args = []interface{}

Args array of args for a func

type Chart added in v0.3.0

type Chart = string

type CommonInfo added in v0.3.0

type CommonInfo struct {
	OperatorImageInfo ImageInfo
	// contains filtered or unexported fields
}

CommonInfo should be init when before time reconcile

func (*CommonInfo) InitIfNot added in v0.3.0

func (c *CommonInfo) InitIfNot(cli client.Client)

type ComponentSpec added in v0.3.2

type ComponentSpec = v1beta1.ComponentSpec

func MergeComponentSpec added in v0.3.2

func MergeComponentSpec(src, dst ComponentSpec) ComponentSpec

MergeComponentSpec merges the src ComponentSpec to dst

type EndpointCheckCache added in v0.4.0

type EndpointCheckCache interface {
	Get(endpoint []string) (condition *v1beta1.MilvusCondition, found bool)
	Set(endpoints []string, condition *v1beta1.MilvusCondition)
}

EndpointCheckCache coordinates endpoint check to avoid duplicated check for same endpoint

func NewEndpointCheckCacheImpl added in v0.4.0

func NewEndpointCheckCacheImpl() EndpointCheckCache

type EndpointCheckCacheImpl added in v0.4.0

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

EndpointCheckCacheImpl implements EndpointCheckCache

func (EndpointCheckCacheImpl) Get added in v0.4.0

func (e EndpointCheckCacheImpl) Get(endpoints []string) (condition *v1beta1.MilvusCondition, isUpToDate bool)

func (EndpointCheckCacheImpl) Set added in v0.4.0

func (e EndpointCheckCacheImpl) Set(endpoints []string, condition *v1beta1.MilvusCondition)

type EtcdClient added in v0.2.3

type EtcdClient interface {
	Get(ctx context.Context, key string, opts ...clientv3.OpOption) (*clientv3.GetResponse, error)
	AlarmList(ctx context.Context) (*clientv3.AlarmResponse, error)
	Close() error
}

EtcdClient for mock

type EtcdConditionInfo added in v0.2.3

type EtcdConditionInfo struct {
	Endpoints []string
}

type EtcdEndPointHealth

type EtcdEndPointHealth struct {
	Ep     string `json:"endpoint"`
	Health bool   `json:"health"`
	Error  string `json:"error,omitempty"`
}

type Func added in v0.2.3

type Func = interface{}

Func any callable func

type Group

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

func NewGroup

func NewGroup(ctx context.Context) (*Group, context.Context)

NewGroup creates a new group.

func (*Group) Go

func (g *Group) Go(f func() error)

Go to run a func.

func (*Group) Wait

func (g *Group) Wait() error

Wait until all the go functions are returned If errors occurred, they'll be combined with ":" and returned.

type GroupRunner added in v0.2.3

type GroupRunner interface {
	// Run runs a group of funcs by same args, if any func fail, it should return err
	Run(funcs []Func, ctx context.Context, args ...interface{}) error
	// RunWithResult runs a group of funcs by same args, returns results with data & err for each func called
	RunWithResult(funcs []Func, ctx context.Context, args ...interface{}) []Result
	// RunDiffArgs runs a func by groups of args from @argsArray multiple times, if any failed, it should return err
	RunDiffArgs(f Func, ctx context.Context, argsArray []Args) error
}

GroupRunner does a group of funcs in parallel

type HelmReconciler added in v0.2.3

type HelmReconciler interface {
	NewHelmCfg(namespace string) *action.Configuration
	Reconcile(ctx context.Context, request helm.ChartRequest) error
	GetValues(namespace, release string) (map[string]interface{}, error)
}

HelmReconciler reconciles Helm releases

type ImageInfo added in v0.3.0

type ImageInfo struct {
	Image           string
	ImagePullPolicy corev1.PullPolicy
}

ImageInfo for image pulling

type K8sClient added in v0.2.0

type K8sClient interface {
	client.Client
}

K8sClient for mock

type LocalHelmReconciler added in v0.2.3

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

LocalHelmReconciler implements HelmReconciler at local

func MustNewLocalHelmReconciler added in v0.3.0

func MustNewLocalHelmReconciler(helmSettings *cli.EnvSettings, logger logr.Logger) *LocalHelmReconciler

func (*LocalHelmReconciler) GetValues added in v0.5.1

func (l *LocalHelmReconciler) GetValues(namespace, release string) (map[string]interface{}, error)

func (LocalHelmReconciler) NewHelmCfg added in v0.2.3

func (l LocalHelmReconciler) NewHelmCfg(namespace string) *action.Configuration

func (LocalHelmReconciler) Reconcile added in v0.2.3

func (l LocalHelmReconciler) Reconcile(ctx context.Context, request helm.ChartRequest) error

ReconcileHelm reconciles Helm releases

type Logger added in v0.2.3

type Logger interface {
	logr.Logger
}

Logger for mock

type MilvusClusterReconcileFunc added in v0.2.3

type MilvusClusterReconcileFunc func(context.Context, v1beta1.Milvus) error

type MilvusComponent

type MilvusComponent struct {
	Name        string
	FieldName   string
	DefaultPort int32
}

MilvusComponent contains basic info of a milvus cluster component

func GetComponentsBySpec added in v0.5.0

func GetComponentsBySpec(spec v1beta1.MilvusSpec) []MilvusComponent

GetComponentsBySpec returns the components by the spec

func (MilvusComponent) GetComponentPort

func (c MilvusComponent) GetComponentPort(spec v1beta1.MilvusSpec) int32

GetComponentPort returns the port of the component

func (MilvusComponent) GetComponentSpec

func (c MilvusComponent) GetComponentSpec(spec v1beta1.MilvusSpec) v1beta1.ComponentSpec

GetComponentSpec returns the component spec

func (MilvusComponent) GetContainerName

func (c MilvusComponent) GetContainerName() string

GetContainerName returns the name of the component container

func (MilvusComponent) GetContainerPorts

func (c MilvusComponent) GetContainerPorts(spec v1beta1.MilvusSpec) []corev1.ContainerPort

GetContainerPorts returns the ports of the component container

func (MilvusComponent) GetDeploymentName added in v0.5.0

func (c MilvusComponent) GetDeploymentName(instance string) string

GetDeploymentName returns the name of the component deployment

func (MilvusComponent) GetDeploymentStrategy

func (c MilvusComponent) GetDeploymentStrategy() appsv1.DeploymentStrategy

func (MilvusComponent) GetName added in v0.5.0

func (c MilvusComponent) GetName() string

String returns the name of the component

func (MilvusComponent) GetPortName added in v0.5.0

func (c MilvusComponent) GetPortName() string

GetPortName returns the port name of the component container

func (MilvusComponent) GetReplicas

func (c MilvusComponent) GetReplicas(spec v1beta1.MilvusSpec) *int32

GetReplicas returns the replicas for the component

func (MilvusComponent) GetRunCommands added in v0.5.0

func (c MilvusComponent) GetRunCommands() []string

String returns the name of the component

func (MilvusComponent) GetServicePorts

func (c MilvusComponent) GetServicePorts(spec v1beta1.MilvusSpec) []corev1.ServicePort

GetServicePorts returns the ports of the component service

func (MilvusComponent) GetServiceType

func (c MilvusComponent) GetServiceType(spec v1beta1.MilvusSpec) corev1.ServiceType

GetServiceType returns the type of the component service

func (MilvusComponent) IsCoord

func (c MilvusComponent) IsCoord() bool

IsCoord return if it's a coord by its name

func (MilvusComponent) IsNode

func (c MilvusComponent) IsNode() bool

IsCoord return if it's a node by its name

func (MilvusComponent) IsStandalone added in v0.5.0

func (c MilvusComponent) IsStandalone() bool

IsCoord return if it's a coord by its name

func (MilvusComponent) SetStatusReplicas added in v0.4.0

func (c MilvusComponent) SetStatusReplicas(status *v1beta1.MilvusReplicas, replicas int)

SetStatusReplica sets the replica status of the component, input status should not be nil

type MilvusEndpointInfo added in v0.2.3

type MilvusEndpointInfo struct {
	Namespace   string
	Name        string
	ServiceType corev1.ServiceType
	Port        int32
}

MilvusEndpointInfo info for calculate the endpoint

type MilvusPredicate added in v0.5.0

type MilvusPredicate struct {
	predicate.Funcs
}

func (*MilvusPredicate) Create added in v0.5.0

func (*MilvusPredicate) Update added in v0.5.0

type MilvusReconcileFunc added in v0.2.3

type MilvusReconcileFunc func(context.Context, v1beta1.Milvus) error

type MilvusReconciler added in v0.2.0

type MilvusReconciler struct {
	client.Client
	Scheme *runtime.Scheme
	// contains filtered or unexported fields
}

MilvusReconciler reconciles a Milvus object

func (*MilvusReconciler) Finalize added in v0.2.0

func (r *MilvusReconciler) Finalize(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) Reconcile added in v0.2.0

func (r *MilvusReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.8.3/pkg/reconcile

func (*MilvusReconciler) ReconcileAll added in v0.2.0

func (r *MilvusReconciler) ReconcileAll(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileComponentDeployment added in v0.5.0

func (r *MilvusReconciler) ReconcileComponentDeployment(
	ctx context.Context, mc v1beta1.Milvus, component MilvusComponent,
) error

func (*MilvusReconciler) ReconcileComponentService added in v0.5.0

func (r *MilvusReconciler) ReconcileComponentService(
	ctx context.Context, mc v1beta1.Milvus, component MilvusComponent,
) error

func (*MilvusReconciler) ReconcileConfigMaps added in v0.2.0

func (r *MilvusReconciler) ReconcileConfigMaps(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileDeployments added in v0.2.0

func (r *MilvusReconciler) ReconcileDeployments(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileEtcd added in v0.2.0

func (r *MilvusReconciler) ReconcileEtcd(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileIngress added in v0.4.0

func (r *MilvusReconciler) ReconcileIngress(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileKafka added in v0.5.0

func (r *MilvusReconciler) ReconcileKafka(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileLegacyValues added in v0.5.1

func (r *MilvusReconciler) ReconcileLegacyValues(ctx context.Context, old, milvus *v1beta1.Milvus) (updated bool, err error)

func (*MilvusReconciler) ReconcileMilvus added in v0.2.0

func (r *MilvusReconciler) ReconcileMilvus(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileMinio added in v0.2.0

func (r *MilvusReconciler) ReconcileMinio(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileMsgStream added in v0.5.0

func (r *MilvusReconciler) ReconcileMsgStream(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcilePVCs added in v0.4.0

func (r *MilvusReconciler) ReconcilePVCs(ctx context.Context, mil v1beta1.Milvus) error

func (*MilvusReconciler) ReconcilePodMonitor added in v0.2.0

func (r *MilvusReconciler) ReconcilePodMonitor(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcilePulsar added in v0.5.0

func (r *MilvusReconciler) ReconcilePulsar(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) ReconcileServices added in v0.2.0

func (r *MilvusReconciler) ReconcileServices(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) RemoveOldStandlone added in v0.5.0

func (r *MilvusReconciler) RemoveOldStandlone(ctx context.Context, mc v1beta1.Milvus) error

func (*MilvusReconciler) SetDefaultStatus added in v0.2.0

func (r *MilvusReconciler) SetDefaultStatus(ctx context.Context, mc *v1beta1.Milvus) (bool, error)

SetDefaultStatus update status if default not set; return true if updated, return false if not, return err if update failed

func (*MilvusReconciler) SetupWithManager added in v0.2.0

func (r *MilvusReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type MilvusStatusSyncer added in v0.2.0

type MilvusStatusSyncer struct {
	client.Client

	sync.Once
	// contains filtered or unexported fields
}

func NewMilvusStatusSyncer added in v0.2.0

func NewMilvusStatusSyncer(ctx context.Context, client client.Client, logger logr.Logger) *MilvusStatusSyncer

func (*MilvusStatusSyncer) GetEtcdCondition added in v0.2.0

func (r *MilvusStatusSyncer) GetEtcdCondition(ctx context.Context, mc v1beta1.Milvus) (v1beta1.MilvusCondition, error)

func (*MilvusStatusSyncer) GetMilvusCondition added in v0.2.0

func (r *MilvusStatusSyncer) GetMilvusCondition(ctx context.Context, mc v1beta1.Milvus) (v1beta1.MilvusCondition, error)

func (*MilvusStatusSyncer) GetMilvusEndpoint added in v0.2.0

func (r *MilvusStatusSyncer) GetMilvusEndpoint(ctx context.Context, mc v1beta1.Milvus) string

func (*MilvusStatusSyncer) GetMinioCondition added in v0.2.0

func (r *MilvusStatusSyncer) GetMinioCondition(
	ctx context.Context, mc v1beta1.Milvus) (v1beta1.MilvusCondition, error)

TODO: rename as GetStorageCondition

func (*MilvusStatusSyncer) GetMsgStreamCondition added in v0.5.0

func (r *MilvusStatusSyncer) GetMsgStreamCondition(
	ctx context.Context, mc v1beta1.Milvus) (v1beta1.MilvusCondition, error)

func (*MilvusStatusSyncer) RunIfNot added in v0.2.0

func (r *MilvusStatusSyncer) RunIfNot()

func (*MilvusStatusSyncer) UpdateIngressStatus added in v0.4.0

func (r *MilvusStatusSyncer) UpdateIngressStatus(ctx context.Context, mc *v1beta1.Milvus) error

func (*MilvusStatusSyncer) UpdateStatusForNewGeneration added in v0.5.2

func (r *MilvusStatusSyncer) UpdateStatusForNewGeneration(ctx context.Context, mc *v1beta1.Milvus) error

func (*MilvusStatusSyncer) UpdateStatusRoutine added in v0.5.2

func (r *MilvusStatusSyncer) UpdateStatusRoutine(ctx context.Context, mc *v1beta1.Milvus) error

type MilvusStatusSyncerInterface added in v0.5.2

type MilvusStatusSyncerInterface interface {
	RunIfNot()
	UpdateStatusForNewGeneration(ctx context.Context, mc *v1beta1.Milvus) error
}

MilvusStatusSyncerInterface abstracts MilvusStatusSyncer

type NewEtcdClientFunc added in v0.2.3

type NewEtcdClientFunc func(cfg clientv3.Config) (EtcdClient, error)

type ParallelGroupRunner added in v0.2.3

type ParallelGroupRunner struct {
}

ParallelGroupRunner is a group runner that run funcs in parallel

func (ParallelGroupRunner) Run added in v0.2.3

func (ParallelGroupRunner) Run(funcs []Func, ctx context.Context, args ...interface{}) error

Run a group of funcs by same args in parallel, if any func fail, it should return err

func (ParallelGroupRunner) RunDiffArgs added in v0.2.3

func (ParallelGroupRunner) RunDiffArgs(f Func, ctx context.Context, argsArray []Args) error

RunDiffArgs runs a func by groups of args from @argsArray multiple times, if any failed, it should return err

func (ParallelGroupRunner) RunWithResult added in v0.2.3

func (ParallelGroupRunner) RunWithResult(funcs []Func, ctx context.Context, args ...interface{}) []Result

RunWithResult runs a group of funcs by same args, returns results with data & err for each func called

type PulsarClient added in v0.2.3

type PulsarClient interface {
	pulsar.Client
}

PulsarClient for mock

type PulsarReader added in v0.2.3

type PulsarReader interface {
	pulsar.Reader
}

PulsarReader for mock

type Result added in v0.2.3

type Result struct {
	Data interface{}
	Err  error
}

Result contains data & err for a func's return

type StorageConditionInfo added in v0.2.3

type StorageConditionInfo struct {
	Namespace   string
	Bucket      string
	Storage     v1beta1.MilvusStorage
	UseSSL      bool
	UseIAM      bool
	IAMEndpoint string
}

StorageConditionInfo is info for acquiring storage condition

type Values added in v0.3.0

type Values = map[string]interface{}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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