status

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Apr 1, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AtlasClusterStatus

type AtlasClusterStatus struct {
	Common `json:",inline"`

	// StateName is the current state of the cluster.
	// The possible states are: IDLE, CREATING, UPDATING, DELETING, DELETED, REPAIRING
	StateName string `json:"stateName,omitempty"`

	// MongoDBVersion is the version of MongoDB the cluster runs, in <major version>.<minor version> format.
	MongoDBVersion string `json:"mongoDBVersion,omitempty"`

	// ConnectionStrings is a set of connection strings that your applications use to connect to this cluster.
	ConnectionStrings *ConnectionStrings `json:"connectionStrings,omitempty"`

	// MongoURIUpdated is a timestamp in ISO 8601 date and time format in UTC when the connection string was last updated.
	// The connection string changes if you update any of the other values.
	MongoURIUpdated string `json:"mongoURIUpdated,omitempty"`
}

AtlasClusterStatus defines the observed state of AtlasCluster.

func (*AtlasClusterStatus) DeepCopy

func (in *AtlasClusterStatus) DeepCopy() *AtlasClusterStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasClusterStatus.

func (*AtlasClusterStatus) DeepCopyInto

func (in *AtlasClusterStatus) DeepCopyInto(out *AtlasClusterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AtlasClusterStatusOption

type AtlasClusterStatusOption func(s *AtlasClusterStatus)

AtlasClusterStatusOption is the option that is applied to Atlas Cluster Status.

func AtlasClusterConnectionStringsOption

func AtlasClusterConnectionStringsOption(connectionStrings *mongodbatlas.ConnectionStrings) AtlasClusterStatusOption

func AtlasClusterMongoDBVersionOption

func AtlasClusterMongoDBVersionOption(mongoDBVersion string) AtlasClusterStatusOption

func AtlasClusterMongoURIUpdatedOption

func AtlasClusterMongoURIUpdatedOption(mongoURIUpdated string) AtlasClusterStatusOption

func AtlasClusterStateNameOption

func AtlasClusterStateNameOption(stateName string) AtlasClusterStatusOption

type AtlasDatabaseUserStatus

type AtlasDatabaseUserStatus struct {
	Common `json:",inline"`

	// PasswordVersion is the 'ResourceVersion' of the password Secret that the Atlas Operator is aware of
	PasswordVersion string `json:"passwordVersion,omitempty"`

	// UserName is the current name of database user.
	UserName string `json:"name,omitempty"`
}

AtlasDatabaseUserStatus defines the observed state of AtlasProject

func (*AtlasDatabaseUserStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDatabaseUserStatus.

func (*AtlasDatabaseUserStatus) DeepCopyInto

func (in *AtlasDatabaseUserStatus) DeepCopyInto(out *AtlasDatabaseUserStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AtlasDatabaseUserStatusOption

type AtlasDatabaseUserStatusOption func(s *AtlasDatabaseUserStatus)

AtlasDatabaseUserStatusOption is the option that is applied to Atlas Project Status

func AtlasDatabaseUserNameOption added in v0.5.0

func AtlasDatabaseUserNameOption(name string) AtlasDatabaseUserStatusOption

func AtlasDatabaseUserPasswordVersion added in v0.5.0

func AtlasDatabaseUserPasswordVersion(passwordVersion string) AtlasDatabaseUserStatusOption

type AtlasProjectStatus

type AtlasProjectStatus struct {
	Common `json:",inline"`

	// The ID of the Atlas Project
	// +optional
	ID string `json:"id,omitempty"`

	// The list of IP Access List entries that are expired due to 'deleteAfterDate' being less than the current date.
	// Note, that this field is updated by the Atlas Operator only after specification changes
	ExpiredIPAccessList []project.IPAccessList `json:"expiredIpAccessList,omitempty"`
}

AtlasProjectStatus defines the observed state of AtlasProject

func (*AtlasProjectStatus) DeepCopy

func (in *AtlasProjectStatus) DeepCopy() *AtlasProjectStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasProjectStatus.

func (*AtlasProjectStatus) DeepCopyInto

func (in *AtlasProjectStatus) DeepCopyInto(out *AtlasProjectStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AtlasProjectStatusOption

type AtlasProjectStatusOption func(s *AtlasProjectStatus)

AtlasProjectStatusOption is the option that is applied to Atlas Project Status

func AtlasProjectExpiredIPAccessOption

func AtlasProjectExpiredIPAccessOption(lists []project.IPAccessList) AtlasProjectStatusOption

func AtlasProjectIDOption

func AtlasProjectIDOption(id string) AtlasProjectStatusOption

type Common

type Common struct {
	// Conditions is the list of statuses showing the current state of the Atlas Custom Resource
	Conditions []Condition `json:"conditions"`

	// ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of.
	// The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

Common is the struct shared by all statuses in existing Custom Resources.

func (*Common) DeepCopy

func (in *Common) DeepCopy() *Common

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Common.

func (*Common) DeepCopyInto

func (in *Common) DeepCopyInto(out *Common)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (Common) GetConditions

func (c Common) GetConditions() []Condition

func (Common) GetObservedGeneration

func (c Common) GetObservedGeneration() int64

type Condition

type Condition struct {
	// Type of Atlas Custom Resource condition.
	Type ConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time the condition transitioned from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// The reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// A human readable message indicating details about the transition.
	// +optional
	Message string `json:"message,omitempty"`
}

Condition describes the state of an Atlas Custom Resource at a certain point.

func EnsureConditionExists

func EnsureConditionExists(condition Condition, source []Condition) []Condition

EnsureConditionExists adds or updates the condition in the copy of a 'source' slice

func FalseCondition

func FalseCondition(conditionType ConditionType) Condition

FalseCondition returns the Condition that has the 'Status' set to 'false' and 'Type' to 'conditionType'. The reason and message can be provided optionally

func TrueCondition

func TrueCondition(conditionType ConditionType) Condition

TrueCondition returns the Condition that has the 'Status' set to 'true' and 'Type' to 'conditionType'. It explicitly omits the 'Reason' and 'Message' fields.

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Condition.

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (Condition) WithMessageRegexp

func (c Condition) WithMessageRegexp(msg string) Condition

func (Condition) WithReason

func (c Condition) WithReason(reason string) Condition

type ConditionType

type ConditionType string
const (
	ProjectReadyType      ConditionType = "ProjectReady"
	IPAccessListReadyType ConditionType = "IPAccessListReady"
)

AtlasProject condition types

const (
	ClusterReadyType ConditionType = "ClusterReady"
)

AtlasCluster condition types

const (
	DatabaseUserReadyType ConditionType = "DatabaseUserReady"
)

AtlasDatabaseUser condition types

const (
	ReadyType ConditionType = "Ready"
)

type ConnectionStrings

type ConnectionStrings struct {
	// Public mongodb:// connection string for this cluster.
	Standard string `json:"standard,omitempty"`

	// Public mongodb+srv:// connection string for this cluster.
	StandardSrv string `json:"standardSrv,omitempty"`

	// Private endpoint connection strings.
	// Each object describes the connection strings you can use to connect to this cluster through a private endpoint.
	// Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.
	PrivateEndpoint []PrivateEndpoint `json:"privateEndpoint,omitempty"`

	// Network-peering-endpoint-aware mongodb:// connection strings for each interface VPC endpoint you configured to connect to this cluster.
	// Atlas returns this parameter only if you created a network peering connection to this cluster.
	Private string `json:"private,omitempty"`

	// Network-peering-endpoint-aware mongodb+srv:// connection strings for each interface VPC endpoint you configured to connect to this cluster.
	// Atlas returns this parameter only if you created a network peering connection to this cluster.
	// Use this URI format if your driver supports it. If it doesn't, use connectionStrings.private.
	PrivateSrv string `json:"privateSrv,omitempty"`
}

ConnectionStrings contains configuration for applications use to connect to this cluster

func (*ConnectionStrings) DeepCopy

func (in *ConnectionStrings) DeepCopy() *ConnectionStrings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionStrings.

func (*ConnectionStrings) DeepCopyInto

func (in *ConnectionStrings) DeepCopyInto(out *ConnectionStrings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Endpoint

type Endpoint struct {
	// Unique identifier of the private endpoint.
	EndpointID string `json:"endpointId,omitempty"`

	// Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
	ProviderName string `json:"providerName,omitempty"`

	// Region to which you deployed the private endpoint.
	Region string `json:"region,omitempty"`
}

Endpoint through which you connect to Atlas

func (*Endpoint) DeepCopy

func (in *Endpoint) DeepCopy() *Endpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.

func (*Endpoint) DeepCopyInto

func (in *Endpoint) DeepCopyInto(out *Endpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Option

type Option interface{}

Option is the function that is applied to the status field of an Atlas Custom Resource. This is the way to handle some random data that need to be written to status.

type PrivateEndpoint

type PrivateEndpoint struct {
	// Private-endpoint-aware mongodb:// connection string for this private endpoint.
	ConnectionString string `json:"connectionString,omitempty"`

	// Private endpoint through which you connect to Atlas when you use connectionStrings.privateEndpoint[n].connectionString or connectionStrings.privateEndpoint[n].srvConnectionString.
	Endpoints []Endpoint `json:"endpoints,omitempty"`

	// Private-endpoint-aware mongodb+srv:// connection string for this private endpoint.
	SRVConnectionString string `json:"srvConnectionString,omitempty"`

	// Type of MongoDB process that you connect to with the connection strings
	//
	// Atlas returns:
	//
	// • MONGOD for replica sets, or
	//
	// • MONGOS for sharded clusters
	Type string `json:"type,omitempty"`
}

PrivateEndpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

func (*PrivateEndpoint) DeepCopy

func (in *PrivateEndpoint) DeepCopy() *PrivateEndpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpoint.

func (*PrivateEndpoint) DeepCopyInto

func (in *PrivateEndpoint) DeepCopyInto(out *PrivateEndpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Reader

type Reader interface {
	// GetStatus returns the status of the object.
	GetStatus() Status
}

type Status

type Status interface {
	GetConditions() []Condition

	GetObservedGeneration() int64
}

Status is a generic status for any Custom Resource managed by Atlas Operator

type Writer

type Writer interface {
	// UpdateStatus allows to do the update of the status of an Atlas Custom resource.
	UpdateStatus(conditions []Condition, option ...Option)
}

Jump to

Keyboard shortcuts

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