Documentation ¶
Index ¶
- Constants
- type ConditionReason
- type Context
- func (c Context) Conditions() []api.Condition
- func (c *Context) EnsureCondition(condition api.Condition) *Context
- func (c *Context) EnsureStatusOption(option api.Option) *Context
- func (c Context) GetCondition(conditionType api.ConditionType) (condition api.Condition, found bool)
- func (c *Context) HasReason(reason ConditionReason) bool
- func (c Context) LastCondition() *api.Condition
- func (c Context) LastConditionWarn() bool
- func (c *Context) SetConditionFalse(conditionType api.ConditionType) *Context
- func (c *Context) SetConditionFalseMsg(conditionType api.ConditionType, msg string) *Context
- func (c *Context) SetConditionFromResult(conditionType api.ConditionType, result Result) *Context
- func (c *Context) SetConditionTrue(conditionType api.ConditionType) *Context
- func (c *Context) SetConditionTrueMsg(conditionType api.ConditionType, msg string) *Context
- func (c Context) StatusOptions() []api.Option
- func (c *Context) UnsetCondition(conditionType api.ConditionType) *Context
- type Result
- func (r Result) GetMessage() string
- func (r Result) IsDeleted() bool
- func (r Result) IsInProgress() bool
- func (r Result) IsOk() bool
- func (r Result) IsWarning() bool
- func (r Result) ReconcileResult() reconcile.Result
- func (r Result) WithMessage(message string) Result
- func (r Result) WithRetry(retry time.Duration) Result
- func (r Result) WithoutRetry() Result
- type Status
Constants ¶
const (
DefaultRetry = time.Second * 10
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConditionReason ¶
type ConditionReason string
const ( Internal ConditionReason = "InternalError" AtlasResourceVersionMismatch ConditionReason = "AtlasResourceVersionMismatch" AtlasResourceVersionIsInvalid ConditionReason = "AtlasResourceVersionIsInvalid" AtlasFinalizerNotSet ConditionReason = "AtlasFinalizerNotSet" AtlasFinalizerNotRemoved ConditionReason = "AtlasFinalizerNotRemoved" AtlasDeletionProtection ConditionReason = "AtlasDeletionProtection" AtlasGovUnsupported ConditionReason = "AtlasGovUnsupported" AtlasAPIAccessNotConfigured ConditionReason = "AtlasAPIAccessNotConfigured" AtlasUnsupportedFeature ConditionReason = "AtlasUnsupportedFeature" )
General reasons
const ( ProjectNotCreatedInAtlas ConditionReason = "ProjectNotCreatedInAtlas" ProjectBeingConfiguredInAtlas ConditionReason = "ProjectBeingConfiguredInAtlas" ProjectIPAccessInvalid ConditionReason = "ProjectIPAccessListInvalid" ProjectIPNotCreatedInAtlas ConditionReason = "ProjectIPAccessListNotCreatedInAtlas" ProjectWindowInvalid ConditionReason = "ProjectWindowInvalid" ProjectWindowNotObtainedFromAtlas ConditionReason = "ProjectWindowNotObtainedFromAtlas" ProjectWindowNotCreatedInAtlas ConditionReason = "ProjectWindowNotCreatedInAtlas" ProjectWindowNotDeletedInAtlas ConditionReason = "projectWindowNotDeletedInAtlas" ProjectWindowNotDeferredInAtlas ConditionReason = "ProjectWindowNotDeferredInAtlas" ProjectWindowNotAutoDeferredInAtlas ConditionReason = "ProjectWindowNotAutoDeferredInAtlas" ProjectPEServiceIsNotReadyInAtlas ConditionReason = "ProjectPrivateEndpointServiceIsNotReadyInAtlas" ProjectPEInterfaceIsNotReadyInAtlas ConditionReason = "ProjectPrivateEndpointIsNotReadyInAtlas" ProjectIPAccessListNotActive ConditionReason = "ProjectIPAccessListNotActive" ProjectIntegrationInternal ConditionReason = "ProjectIntegrationInternalError" ProjectIntegrationRequest ConditionReason = "ProjectIntegrationRequestError" ProjectIntegrationReady ConditionReason = "ProjectIntegrationReady" ProjectPrivateEndpointIsNotReadyInAtlas ConditionReason = "ProjectPrivateEndpointIsNotReadyInAtlas" ProjectNetworkPeerIsNotReadyInAtlas ConditionReason = "ProjectNetworkPeerIsNotReadyInAtlas" ProjectEncryptionAtRestReady ConditionReason = "ProjectEncryptionAtRestReady" ProjectCloudIntegrationsIsNotReadyInAtlas ConditionReason = "ProjectCloudIntegrationsIsNotReadyInAtlas" ProjectAuditingReady ConditionReason = "ProjectAuditingReady" ProjectSettingsReady ConditionReason = "ProjectSettingsReady" ProjectAlertConfigurationIsNotReadyInAtlas ConditionReason = "ProjectAlertConfigurationIsNotReadyInAtlas" ProjectCustomRolesReady ConditionReason = "ProjectCustomRolesReady" )
Atlas Project reasons
const ( ProjectBackupCompliancePolicyNotMet ConditionReason = "ProjectBackupCompliancePolicyNotMet" ProjectBackupCompliancePolicyNotCreatedInAtlas ConditionReason = "ProjectBackupCompliancePolicyNotCreatedInAtlas" ProjectBackupCompliancePolicyCannotDelete ConditionReason = "ProjectBackupCompliancePolicyCannotDelete" ProjectBackupCompliancePolicyUpdating ConditionReason = "ProjectBackupCompliancePolicyUpdating" ProjectBackupCompliancePolicyOperationAborted ConditionReason = "ProjectBackupCompliancePolicyOperationAborted" )
Atlas Backup Compliance Policy reasons
const ( DeploymentNotCreatedInAtlas ConditionReason = "DeploymentNotCreatedInAtlas" DeploymentNotUpdatedInAtlas ConditionReason = "DeploymentNotUpdatedInAtlas" DeploymentCreating ConditionReason = "DeploymentCreating" DeploymentUpdating ConditionReason = "DeploymentUpdating" DeploymentConnectionSecretsNotCreated ConditionReason = "DeploymentConnectionSecretsNotCreated" DeploymentAdvancedOptionsReady ConditionReason = "DeploymentAdvancedOptionsReady" ServerlessPrivateEndpointReady ConditionReason = "ServerlessPrivateEndpointReady" ServerlessPrivateEndpointFailed ConditionReason = "ServerlessPrivateEndpointFailed" ServerlessPrivateEndpointInProgress ConditionReason = "ServerlessPrivateEndpointInProgress" ManagedNamespacesReady ConditionReason = "ManagedNamespacesReady" CustomZoneMappingReady ConditionReason = "CustomZoneMappingReady" )
Atlas Deployment reasons
const ( SearchNodesUpdating ConditionReason = "SearchNodesUpdating" SearchNodesCreating ConditionReason = "SearchNodesCreating" SearchNodesDeleting ConditionReason = "SearchNodesDeleting" ErrorSearchNodesNotUpsertedInAtlas ConditionReason = "SearchNodesNotUpsertedInAtlas" ErrorSearchNodesNotDeletedInAtlas ConditionReason = "SearchNodesNotDeletedInAtlas" ErrorSearchNodesOperationAborted ConditionReason = "SearchNodesOperationAborted" )
Atlas SearchNodes reasons
const ( DatabaseUserNotCreatedInAtlas ConditionReason = "DatabaseUserNotCreatedInAtlas" DatabaseUserNotUpdatedInAtlas ConditionReason = "DatabaseUserNotUpdatedInAtlas" DatabaseUserNotDeletedInAtlas ConditionReason = "DatabaseUserNotDeletedInAtlas" DatabaseUserConnectionSecretsNotCreated ConditionReason = "DatabaseUserConnectionSecretsNotCreated" DatabaseUserConnectionSecretsNotDeleted ConditionReason = "DatabaseUserConnectionSecretsNotDeleted" DatabaseUserStaleConnectionSecrets ConditionReason = "DatabaseUserStaleConnectionSecrets" DatabaseUserDeploymentAppliedChanges ConditionReason = "DeploymentAppliedDatabaseUsersChanges" DatabaseUserInvalidSpec ConditionReason = "DatabaseUserInvalidSpec" DatabaseUserExpired ConditionReason = "DatabaseUserExpired" )
Atlas Database User reasons
const ( DataFederationNotCreatedInAtlas ConditionReason = "DataFederationNotCreatedInAtlas" DataFederationNotUpdatedInAtlas ConditionReason = "DataFederationNotUpdatedInAtlas" DataFederationCreating ConditionReason = "DataFederationCreating" DataFederationUpdating ConditionReason = "DataFederationUpdating" )
Atlas Data Federation reasons
const ( TeamNotCreatedInAtlas ConditionReason = "TeamNotCreatedInAtlas" TeamNotUpdatedInAtlas ConditionReason = "TeamNotUpdatedInAtlas" TeamInvalidSpec ConditionReason = "TeamInvalidSpec" TeamUsersNotReady ConditionReason = "TeamUsersNotReady" TeamDoesNotExist ConditionReason = "TeamDoesNotExist" TeamNotCleaned ConditionReason = "TeamCleanupFailed" )
Atlas Teams reasons
const ( FederatedAuthNotAvailable ConditionReason = "FederatedAuthNotAvailable" FederatedAuthIsNotEnabledInCR ConditionReason = "FederatedAuthNotEnabledInCR" FederatedAuthOrgNotConnected ConditionReason = "FederatedAuthOrgIsNotConnected" FederatedAuthUsersConflict ConditionReason = "FederatedAuthUsersConflict" )
Atlas Federated Auth reasons
const ( StreamInstanceSetupInProgress ConditionReason = "StreamInstanceSetupInProgress" StreamInstanceNotCreated ConditionReason = "StreamInstanceNotCreated" StreamInstanceNotRemoved ConditionReason = "StreamInstanceNotRemoved" StreamInstanceNotUpdated ConditionReason = "StreamInstanceNotUpdated" StreamConnectionNotConfigured ConditionReason = "StreamConnectionNotConfigured" StreamConnectionNotCreated ConditionReason = "StreamConnectionNotCreated" StreamConnectionNotRemoved ConditionReason = "StreamConnectionNotRemoved" StreamConnectionNotUpdated ConditionReason = "StreamConnectionNotUpdated" )
Atlas Streams reasons
const ( AtlasCustomRoleNotCreated ConditionReason = "CustomRoleNotCreated" AtlasCustomRoleNotUpdated ConditionReason = "CustomRoleNotUpdated" AtlasCustomRoleNotDeleted ConditionReason = "CustomRoleNotDeleted" )
const ( PrivateEndpointServiceCreated ConditionReason = "PrivateEndpointServiceCreated" PrivateEndpointServiceFailedToCreate ConditionReason = "PrivateEndpointServiceFailedToCreate" PrivateEndpointServiceFailedToConfigure ConditionReason = "PrivateEndpointServiceFailedToConfigure" PrivateEndpointServiceInitializing ConditionReason = "PrivateEndpointServiceInitializing" PrivateEndpointServiceDeleting ConditionReason = "PrivateEndpointServiceDeleting" PrivateEndpointFailedToCreate ConditionReason = "PrivateEndpointFailedToCreate" PrivateEndpointUpdating ConditionReason = "PrivateEndpointUpdating" PrivateEndpointConfigurationPending ConditionReason = "PrivateEndpointConfigurationPending" PrivateEndpointFailedToConfigure ConditionReason = "PrivateEndpointFailedToConfigure" PrivateEndpointFailedToDelete ConditionReason = "PrivateEndpointFailedToDelete" )
Atlas Private Endpoint 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 // OrgID is the identifier of the Organization which the Atlas client was configured for OrgID string // Client is a mongodb atlas client used to make v1.0 API calls Client *mongodbatlas.Client SdkClient *admin.APIClient // TODO: consider grouping all clients here SdkClientSet *atlas.ClientSet // Go context, when appropriate Context context.Context // 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 NOT a Go Context but can carry one
func NewContext ¶
func (Context) Conditions ¶
func (*Context) EnsureCondition ¶
func (*Context) EnsureStatusOption ¶
func (Context) GetCondition ¶
func (*Context) HasReason ¶ added in v2.3.0
func (c *Context) HasReason(reason ConditionReason) bool
func (Context) LastCondition ¶
func (Context) LastConditionWarn ¶
func (*Context) SetConditionFalse ¶
func (c *Context) SetConditionFalse(conditionType api.ConditionType) *Context
func (*Context) SetConditionFalseMsg ¶
func (c *Context) SetConditionFalseMsg(conditionType api.ConditionType, msg string) *Context
func (*Context) SetConditionFromResult ¶
func (c *Context) SetConditionFromResult(conditionType api.ConditionType, result Result) *Context
func (*Context) SetConditionTrue ¶
func (c *Context) SetConditionTrue(conditionType api.ConditionType) *Context
func (*Context) SetConditionTrueMsg ¶ added in v2.1.0
func (c *Context) SetConditionTrueMsg(conditionType api.ConditionType, msg string) *Context
func (Context) StatusOptions ¶
func (*Context) UnsetCondition ¶
func (c *Context) UnsetCondition(conditionType api.ConditionType) *Context
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). This is an expected termination of the reconciliation process so 'warning' flag is set to 'false'. '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). This is not an expected termination of the reconciliation process so 'warning' flag is set to 'true'. '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) GetMessage ¶
func (Result) IsInProgress ¶
func (Result) ReconcileResult ¶
func (Result) WithMessage ¶
func (Result) WithoutRetry ¶
WithoutRetry indicates that no retry must happen after the reconciliation is over. This should usually be used in cases when retry won't fix the situation like when the spec is incorrect and requires the user to update it.
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.
func (*Status) EnsureCondition ¶
func (*Status) EnsureOption ¶
func (*Status) GetCondition ¶
func (*Status) RemoveCondition ¶
func (s *Status) RemoveCondition(conditionType api.ConditionType)