Documentation ¶
Index ¶
- Constants
- type ConditionReason
- type Context
- func (c Context) Conditions() []status.Condition
- func (c *Context) EnsureCondition(condition status.Condition) *Context
- func (c *Context) EnsureStatusOption(option status.Option) *Context
- func (c Context) LastCondition() *status.Condition
- func (c *Context) SetConditionFalse(conditionType status.ConditionType) *Context
- func (c *Context) SetConditionFromResult(conditionType status.ConditionType, result Result) *Context
- func (c *Context) SetConditionTrue(conditionType status.ConditionType) *Context
- func (c Context) StatusOptions() []status.Option
- type Result
- type Status
Constants ¶
const ( DefaultRetry = time.Second * 10 DefaultTimeout = time.Minute * 20 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConditionReason ¶
type ConditionReason string
const ( AtlasCredentialsNotProvided ConditionReason = "AtlasCredentialsNotProvided" Internal ConditionReason = "InternalError" )
General reasons
const ( ProjectNotCreatedInAtlas ConditionReason = "ProjectNotCreatedInAtlas" ProjectIPAccessInvalid ConditionReason = "ProjectIPAccessListInvalid" ProjectIPNotCreatedInAtlas ConditionReason = "ProjectIPAccessListNotCreatedInAtlas" )
Atlas Project reasons
const ( ClusterNotCreatedInAtlas ConditionReason = "ClusterNotCreatedInAtlas" ClusterNotUpdatedInAtlas ConditionReason = "ClusterNotUpdatedInAtlas" ClusterCreating ConditionReason = "ClusterCreating" ClusterUpdating ConditionReason = "ClusterUpdating" )
Atlas Cluster reasons
const ( DatabaseUserNotCreatedInAtlas ConditionReason = "DatabaseUserNotCreatedInAtlas" DatabaseUserNotUpdatedInAtlas ConditionReason = "DatabaseUserNotUpdatedInAtlas" DatabaseUserConnectionSecretsNotCreated ConditionReason = "DatabaseUserConnectionSecretsNotCreated" DatabaseUserClustersAppliedChanges ConditionReason = "ClustersAppliedDatabaseUsersChanges" )
Atlas Database User reasons
type Context ¶
type Context struct { // Log is the root logger used in the reconciliation. Used just for convenience to avoid passing log to each // method. // Is not supposed to be mutated! Log *zap.SugaredLogger // Client is a mongodb atlas client used to make API calls Client mongodbatlas.Client // Connection is an object encapsulating information about connecting to Atlas using API Connection atlas.Connection // contains filtered or unexported fields }
Context is a container for some information that is needed on all levels of function calls during reconciliation. It's mutable by design. Note, that it's completely different from the Go Context
func NewContext ¶
func NewContext(log *zap.SugaredLogger, conditions []status.Condition) *Context
func (Context) Conditions ¶
func (*Context) EnsureCondition ¶
func (*Context) EnsureStatusOption ¶
func (Context) LastCondition ¶
func (*Context) SetConditionFalse ¶
func (c *Context) SetConditionFalse(conditionType status.ConditionType) *Context
func (*Context) SetConditionFromResult ¶
func (c *Context) SetConditionFromResult(conditionType status.ConditionType, result Result) *Context
func (*Context) SetConditionTrue ¶
func (c *Context) SetConditionTrue(conditionType status.ConditionType) *Context
func (Context) StatusOptions ¶
type Result ¶
type Result struct {
// contains filtered or unexported fields
}
func InProgress ¶
func InProgress(reason ConditionReason, message string) Result
InProgress indicates that the reconciliation logic cannot proceed and needs to be finished (and possibly requeued). 'reason' and 'message' indicate the in-progress state and are supposed to be reflected in the 'conditions' for the reconciled Custom Resource.
func Terminate ¶
func Terminate(reason ConditionReason, message string) Result
Terminate indicates that the reconciliation logic cannot proceed and needs to be finished (and possibly requeued). 'reason' and 'message' indicate the error state and are supposed to be reflected in the `conditions` for the reconciled Custom Resource.
func TerminateSilently ¶
func TerminateSilently() Result
TerminateSilently indicates that the reconciliation logic cannot proceed and needs to be finished (and possibly requeued) The status of the reconciled Custom Resource is not supposed to be updated.
func (Result) ReconcileResult ¶
func (Result) WithoutRetry ¶
type Status ¶
type Status struct {
// contains filtered or unexported fields
}
Status is a mutable container containing the status of some particular reconciliation. It is expected to be updated by a controller and at any time it reflects the status of the reconciled resource. Its state should fully match the state of the resource so the information could be used to update the status field of the Custom Resource.