Documentation ¶
Index ¶
- Variables
- func CloseConnection(tb testing.TB, sqlStore *SQLStore)
- func GetMillis() int64
- func LatestVersion() semver.Version
- type GroupRollingMetadata
- type RawClusterMetadata
- type SQLStore
- func (sqlStore *SQLStore) CreateAnnotation(annotation *model.Annotation) error
- func (sqlStore *SQLStore) CreateCluster(cluster *model.Cluster, annotations []*model.Annotation) error
- func (sqlStore *SQLStore) CreateClusterAnnotations(clusterID string, annotations []*model.Annotation) ([]*model.Annotation, error)
- func (sqlStore *SQLStore) CreateClusterInstallation(clusterInstallation *model.ClusterInstallation) error
- func (sqlStore *SQLStore) CreateGroup(group *model.Group) error
- func (sqlStore *SQLStore) CreateInstallation(installation *model.Installation, annotations []*model.Annotation) error
- func (sqlStore *SQLStore) CreateInstallationAnnotations(installationID string, annotations []*model.Annotation) ([]*model.Annotation, error)
- func (sqlStore *SQLStore) CreateInstallationBackup(backup *model.InstallationBackup) error
- func (sqlStore *SQLStore) CreateInstallationDBMigrationOperation(dbMigration *model.InstallationDBMigrationOperation) error
- func (sqlStore *SQLStore) CreateInstallationDBRestorationOperation(dbRestoration *model.InstallationDBRestorationOperation) error
- func (sqlStore *SQLStore) CreateMultitenantDatabase(multitenantDatabase *model.MultitenantDatabase) error
- func (sqlStore *SQLStore) CreateWebhook(webhook *model.Webhook) error
- func (sqlStore *SQLStore) DeleteCluster(id string) error
- func (sqlStore *SQLStore) DeleteClusterAnnotation(clusterID string, annotationName string) error
- func (sqlStore *SQLStore) DeleteClusterInstallation(id string) error
- func (sqlStore *SQLStore) DeleteGroup(id string) error
- func (sqlStore *SQLStore) DeleteInstallation(id string) error
- func (sqlStore *SQLStore) DeleteInstallationAnnotation(installationID string, annotationName string) error
- func (sqlStore *SQLStore) DeleteInstallationBackup(id string) error
- func (sqlStore *SQLStore) DeleteWebhook(id string) error
- func (sqlStore *SQLStore) GetAnnotationByName(name string) (*model.Annotation, error)
- func (sqlStore *SQLStore) GetAnnotationsForCluster(clusterID string) ([]*model.Annotation, error)
- func (sqlStore *SQLStore) GetAnnotationsForClusters(filter *model.ClusterFilter) (map[string][]*model.Annotation, error)
- func (sqlStore *SQLStore) GetAnnotationsForInstallation(installationID string) ([]*model.Annotation, error)
- func (sqlStore *SQLStore) GetAnnotationsForInstallations(filter *model.InstallationFilter) (map[string][]*model.Annotation, error)
- func (sqlStore *SQLStore) GetCluster(id string) (*model.Cluster, error)
- func (sqlStore *SQLStore) GetClusterDTO(id string) (*model.ClusterDTO, error)
- func (sqlStore *SQLStore) GetClusterDTOs(filter *model.ClusterFilter) ([]*model.ClusterDTO, error)
- func (sqlStore *SQLStore) GetClusterInstallation(id string) (*model.ClusterInstallation, error)
- func (sqlStore *SQLStore) GetClusterInstallations(filter *model.ClusterInstallationFilter) ([]*model.ClusterInstallation, error)
- func (sqlStore *SQLStore) GetClusters(filter *model.ClusterFilter) ([]*model.Cluster, error)
- func (sqlStore *SQLStore) GetCurrentVersion() (semver.Version, error)
- func (sqlStore *SQLStore) GetGroup(id string) (*model.Group, error)
- func (sqlStore *SQLStore) GetGroupRollingMetadata(groupID string) (*GroupRollingMetadata, error)
- func (sqlStore *SQLStore) GetGroupStatus(groupID string) (*model.GroupStatus, error)
- func (sqlStore *SQLStore) GetGroups(filter *model.GroupFilter) ([]*model.Group, error)
- func (sqlStore *SQLStore) GetInstallation(id string, includeGroupConfig, includeGroupConfigOverrides bool) (*model.Installation, error)
- func (sqlStore *SQLStore) GetInstallationBackup(id string) (*model.InstallationBackup, error)
- func (sqlStore *SQLStore) GetInstallationBackups(filter *model.InstallationBackupFilter) ([]*model.InstallationBackup, error)
- func (sqlStore *SQLStore) GetInstallationDBMigrationOperation(id string) (*model.InstallationDBMigrationOperation, error)
- func (sqlStore *SQLStore) GetInstallationDBMigrationOperations(filter *model.InstallationDBMigrationFilter) ([]*model.InstallationDBMigrationOperation, error)
- func (sqlStore *SQLStore) GetInstallationDBRestorationOperation(id string) (*model.InstallationDBRestorationOperation, error)
- func (sqlStore *SQLStore) GetInstallationDBRestorationOperations(filter *model.InstallationDBRestorationFilter) ([]*model.InstallationDBRestorationOperation, error)
- func (sqlStore *SQLStore) GetInstallationDTO(id string, includeGroupConfig, includeGroupConfigOverrides bool) (*model.InstallationDTO, error)
- func (sqlStore *SQLStore) GetInstallationDTOs(filter *model.InstallationFilter, ...) ([]*model.InstallationDTO, error)
- func (sqlStore *SQLStore) GetInstallations(filter *model.InstallationFilter, ...) ([]*model.Installation, error)
- func (sqlStore *SQLStore) GetInstallationsCount(includeDeleted bool) (int64, error)
- func (sqlStore *SQLStore) GetInstallationsStatus() (*model.InstallationsStatus, error)
- func (sqlStore *SQLStore) GetInstallationsTotalDatabaseWeight(installationIDs []string) (float64, error)
- func (sqlStore *SQLStore) GetMultitenantDatabase(id string) (*model.MultitenantDatabase, error)
- func (sqlStore *SQLStore) GetMultitenantDatabaseForInstallationID(installationID string) (*model.MultitenantDatabase, error)
- func (sqlStore *SQLStore) GetMultitenantDatabases(filter *model.MultitenantDatabaseFilter) ([]*model.MultitenantDatabase, error)
- func (sqlStore *SQLStore) GetOrCreateAnnotations(annotations []*model.Annotation) ([]*model.Annotation, error)
- func (sqlStore *SQLStore) GetSingleTenantDatabaseConfigForInstallation(installationID string) (*model.SingleTenantDatabaseConfig, error)
- func (sqlStore *SQLStore) GetUnlockedClusterInstallationsPendingWork() ([]*model.ClusterInstallation, error)
- func (sqlStore *SQLStore) GetUnlockedClustersPendingWork() ([]*model.Cluster, error)
- func (sqlStore *SQLStore) GetUnlockedGroupsPendingWork() ([]*model.Group, error)
- func (sqlStore *SQLStore) GetUnlockedInstallationBackupPendingWork() ([]*model.InstallationBackup, error)
- func (sqlStore *SQLStore) GetUnlockedInstallationDBMigrationOperationsPendingWork() ([]*model.InstallationDBMigrationOperation, error)
- func (sqlStore *SQLStore) GetUnlockedInstallationDBRestorationOperationsPendingWork() ([]*model.InstallationDBRestorationOperation, error)
- func (sqlStore *SQLStore) GetUnlockedInstallationsPendingWork() ([]*model.Installation, error)
- func (sqlStore *SQLStore) GetWebhook(id string) (*model.Webhook, error)
- func (sqlStore *SQLStore) GetWebhooks(filter *model.WebhookFilter) ([]*model.Webhook, error)
- func (sqlStore *SQLStore) IsInstallationBackupBeingUsed(backupID string) (bool, error)
- func (sqlStore *SQLStore) IsInstallationBackupRunning(installationID string) (bool, error)
- func (sqlStore *SQLStore) LockCluster(clusterID, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockClusterAPI(clusterID string) error
- func (sqlStore *SQLStore) LockClusterInstallationAPI(id string) error
- func (sqlStore *SQLStore) LockClusterInstallations(clusterInstallationIDs []string, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockGroup(groupID, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockGroupAPI(id string) error
- func (sqlStore *SQLStore) LockInstallation(installationID, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationAPI(installationID string) error
- func (sqlStore *SQLStore) LockInstallationBackup(backupID, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationBackupAPI(backupID string) error
- func (sqlStore *SQLStore) LockInstallationBackups(backupIDs []string, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationDBMigrationOperation(id, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationDBMigrationOperations(ids []string, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationDBRestorationOperation(id, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockInstallationDBRestorationOperations(ids []string, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockMultitenantDatabase(multitenantDatabaseID, lockerID string) (bool, error)
- func (sqlStore *SQLStore) LockMultitenantDatabases(ids []string, lockerID string) (bool, error)
- func (sqlStore *SQLStore) Migrate() error
- func (sqlStore *SQLStore) RecoverClusterInstallation(clusterInstallation *model.ClusterInstallation) error
- func (sqlStore *SQLStore) RecoverInstallation(installation *model.Installation) error
- func (sqlStore *SQLStore) TriggerInstallationDBMigration(dbMigrationOp *model.InstallationDBMigrationOperation, ...) (*model.InstallationDBMigrationOperation, error)
- func (sqlStore *SQLStore) TriggerInstallationRestoration(installation *model.Installation, backup *model.InstallationBackup) (*model.InstallationDBRestorationOperation, error)
- func (sqlStore *SQLStore) UnlockCluster(clusterID, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockClusterAPI(clusterID string) error
- func (sqlStore *SQLStore) UnlockClusterInstallationAPI(id string) error
- func (sqlStore *SQLStore) UnlockClusterInstallations(clusterInstallationIDs []string, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockGroup(groupID, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockGroupAPI(id string) error
- func (sqlStore *SQLStore) UnlockInstallation(installationID, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationAPI(installationID string) error
- func (sqlStore *SQLStore) UnlockInstallationBackup(backupID, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationBackupAPI(backupID string) error
- func (sqlStore *SQLStore) UnlockInstallationBackups(backupIDs []string, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationDBMigrationOperation(id, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationDBMigrationOperations(ids []string, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationDBRestorationOperation(id, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockInstallationDBRestorationOperations(ids []string, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockMultitenantDatabase(multitenantDatabaseID, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UnlockMultitenantDatabases(ids []string, lockerID string, force bool) (bool, error)
- func (sqlStore *SQLStore) UpdateCluster(cluster *model.Cluster) error
- func (sqlStore *SQLStore) UpdateClusterInstallation(clusterInstallation *model.ClusterInstallation) error
- func (sqlStore *SQLStore) UpdateGroup(group *model.Group, forceUpdateSequence bool) error
- func (sqlStore *SQLStore) UpdateInstallation(installation *model.Installation) error
- func (sqlStore *SQLStore) UpdateInstallationBackupSchedulingData(backup *model.InstallationBackup) error
- func (sqlStore *SQLStore) UpdateInstallationBackupStartTime(backup *model.InstallationBackup) error
- func (sqlStore *SQLStore) UpdateInstallationBackupState(backup *model.InstallationBackup) error
- func (sqlStore *SQLStore) UpdateInstallationCRVersion(installationID, crVersion string) error
- func (sqlStore *SQLStore) UpdateInstallationDBMigrationOperation(dbMigration *model.InstallationDBMigrationOperation) error
- func (sqlStore *SQLStore) UpdateInstallationDBMigrationOperationState(dbMigration *model.InstallationDBMigrationOperation) error
- func (sqlStore *SQLStore) UpdateInstallationDBRestorationOperation(dbRestoration *model.InstallationDBRestorationOperation) error
- func (sqlStore *SQLStore) UpdateInstallationDBRestorationOperationState(dbRestoration *model.InstallationDBRestorationOperation) error
- func (sqlStore *SQLStore) UpdateInstallationGroupSequence(installation *model.Installation) error
- func (sqlStore *SQLStore) UpdateInstallationState(installation *model.Installation) error
- func (sqlStore *SQLStore) UpdateMultitenantDatabase(multitenantDatabase *model.MultitenantDatabase) error
- type Transaction
Constants ¶
This section is empty.
Variables ¶
var ( // ErrClusterAnnotationUsedByInstallation is an error returned when user attempts to delete cluster annotation // present on the installation scheduled on that cluster. ErrClusterAnnotationUsedByInstallation = errors.New("cannot delete cluster annotation, " + "it is used by one or more installations scheduled on the cluster") // ErrInstallationAnnotationDoNotMatchClusters is an error returned when user attempts to add annotation to the // installation, that is not present on any of the clusters on which the installation is scheduled. ErrInstallationAnnotationDoNotMatchClusters = errors.New("cannot add annotations to installation, " + "one or more clusters on which installation is scheduled do not contain one or more of new annotations") )
Functions ¶
func CloseConnection ¶ added in v0.31.0
CloseConnection closes underlying database connection.
func GetMillis ¶
func GetMillis() int64
GetMillis is a convenience method to get milliseconds since epoch.
func LatestVersion ¶
LatestVersion returns the version to which the last migration migrates.
Types ¶
type GroupRollingMetadata ¶ added in v0.18.0
type GroupRollingMetadata struct { InstallationIDsToBeRolled []string InstallationsTotalCount int64 InstallationsRolling int64 }
GroupRollingMetadata is a batch of information about a group where installatons are being rolled to match a new config.
type RawClusterMetadata ¶ added in v0.20.0
type RawClusterMetadata struct { ProviderMetadataRaw []byte ProvisionerMetadataRaw []byte UtilityMetadataRaw []byte }
RawClusterMetadata is the raw byte metadata for a cluster.
type SQLStore ¶
type SQLStore struct {
// contains filtered or unexported fields
}
SQLStore abstracts access to the database.
func MakeTestSQLStore ¶
func MakeTestSQLStore(tb testing.TB, logger log.FieldLogger) *SQLStore
MakeTestSQLStore creates a SQLStore for use with unit tests.
func New ¶
func New(dsn string, logger logrus.FieldLogger) (*SQLStore, error)
New constructs a new instance of SQLStore.
func (*SQLStore) CreateAnnotation ¶ added in v0.31.0
func (sqlStore *SQLStore) CreateAnnotation(annotation *model.Annotation) error
CreateAnnotation records the given annotation to the database, assigning it a unique ID.
func (*SQLStore) CreateCluster ¶
func (sqlStore *SQLStore) CreateCluster(cluster *model.Cluster, annotations []*model.Annotation) error
CreateCluster records the given cluster to the database, assigning it a unique ID.
func (*SQLStore) CreateClusterAnnotations ¶ added in v0.31.0
func (sqlStore *SQLStore) CreateClusterAnnotations(clusterID string, annotations []*model.Annotation) ([]*model.Annotation, error)
CreateClusterAnnotations maps selected annotations to cluster and stores it in the database.
func (*SQLStore) CreateClusterInstallation ¶
func (sqlStore *SQLStore) CreateClusterInstallation(clusterInstallation *model.ClusterInstallation) error
CreateClusterInstallation records the given cluster installation to the database, assigning it a unique ID.
func (*SQLStore) CreateGroup ¶
CreateGroup records the given group to the database, assigning it a unique ID.
func (*SQLStore) CreateInstallation ¶
func (sqlStore *SQLStore) CreateInstallation(installation *model.Installation, annotations []*model.Annotation) error
CreateInstallation records the given installation to the database, assigning it a unique ID.
func (*SQLStore) CreateInstallationAnnotations ¶ added in v0.31.0
func (sqlStore *SQLStore) CreateInstallationAnnotations(installationID string, annotations []*model.Annotation) ([]*model.Annotation, error)
CreateInstallationAnnotations maps selected annotations to installation and stores it in the database. Annotation cannot be added to the Installation if any of the clusters on which the Installation is scheduled is not annotated with it.
func (*SQLStore) CreateInstallationBackup ¶ added in v0.43.0
func (sqlStore *SQLStore) CreateInstallationBackup(backup *model.InstallationBackup) error
CreateInstallationBackup records installation backup to the database, assigning it a unique ID.
func (*SQLStore) CreateInstallationDBMigrationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) CreateInstallationDBMigrationOperation(dbMigration *model.InstallationDBMigrationOperation) error
CreateInstallationDBMigrationOperation records installation db migration to the database, assigning it a unique ID.
func (*SQLStore) CreateInstallationDBRestorationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) CreateInstallationDBRestorationOperation(dbRestoration *model.InstallationDBRestorationOperation) error
CreateInstallationDBRestorationOperation records installation db restoration to the database, assigning it a unique ID.
func (*SQLStore) CreateMultitenantDatabase ¶ added in v0.19.0
func (sqlStore *SQLStore) CreateMultitenantDatabase(multitenantDatabase *model.MultitenantDatabase) error
CreateMultitenantDatabase records the supplied multitenant database to the datastore.
func (*SQLStore) CreateWebhook ¶ added in v0.3.0
CreateWebhook records the given webhook to the database, assigning it a unique ID.
func (*SQLStore) DeleteCluster ¶
DeleteCluster marks the given cluster as deleted, but does not remove the record from the database.
func (*SQLStore) DeleteClusterAnnotation ¶ added in v0.31.0
DeleteClusterAnnotation removes an annotation from a given cluster. Annotation cannot be removed if it is present on any of the Installations scheduled on the cluster.
func (*SQLStore) DeleteClusterInstallation ¶
DeleteClusterInstallation marks the given cluster installation as deleted, but does not remove the record from the database.
func (*SQLStore) DeleteGroup ¶
DeleteGroup marks the given group as deleted, but does not remove the record from the database.
func (*SQLStore) DeleteInstallation ¶
DeleteInstallation marks the given installation as deleted, but does not remove the record from the database.
func (*SQLStore) DeleteInstallationAnnotation ¶ added in v0.31.0
func (sqlStore *SQLStore) DeleteInstallationAnnotation(installationID string, annotationName string) error
DeleteInstallationAnnotation removes annotation from a given Installation.
func (*SQLStore) DeleteInstallationBackup ¶ added in v0.44.0
DeleteInstallationBackup marks the given backup as deleted, but does not remove the record from the database.
func (*SQLStore) DeleteWebhook ¶ added in v0.3.0
DeleteWebhook marks the given webhook as deleted, but does not remove the record from the database.
func (*SQLStore) GetAnnotationByName ¶ added in v0.31.0
func (sqlStore *SQLStore) GetAnnotationByName(name string) (*model.Annotation, error)
GetAnnotationByName fetches the given annotation by name.
func (*SQLStore) GetAnnotationsForCluster ¶ added in v0.31.0
func (sqlStore *SQLStore) GetAnnotationsForCluster(clusterID string) ([]*model.Annotation, error)
GetAnnotationsForCluster fetches all annotations assigned to the cluster.
func (*SQLStore) GetAnnotationsForClusters ¶ added in v0.31.0
func (sqlStore *SQLStore) GetAnnotationsForClusters(filter *model.ClusterFilter) (map[string][]*model.Annotation, error)
GetAnnotationsForClusters fetches all annotations assigned to the clusters.
func (*SQLStore) GetAnnotationsForInstallation ¶ added in v0.31.0
func (sqlStore *SQLStore) GetAnnotationsForInstallation(installationID string) ([]*model.Annotation, error)
GetAnnotationsForInstallation fetches all annotations assigned to the installation.
func (*SQLStore) GetAnnotationsForInstallations ¶ added in v0.31.0
func (sqlStore *SQLStore) GetAnnotationsForInstallations(filter *model.InstallationFilter) (map[string][]*model.Annotation, error)
GetAnnotationsForInstallations fetches all annotations assigned to installations.
func (*SQLStore) GetCluster ¶
GetCluster fetches the given cluster by id.
func (*SQLStore) GetClusterDTO ¶ added in v0.31.0
func (sqlStore *SQLStore) GetClusterDTO(id string) (*model.ClusterDTO, error)
GetClusterDTO fetches the given cluster by id with data from connected tables.
func (*SQLStore) GetClusterDTOs ¶ added in v0.31.0
func (sqlStore *SQLStore) GetClusterDTOs(filter *model.ClusterFilter) ([]*model.ClusterDTO, error)
GetClusterDTOs fetches the given page of clusters with data from connected tables. The first page is 0.
func (*SQLStore) GetClusterInstallation ¶
func (sqlStore *SQLStore) GetClusterInstallation(id string) (*model.ClusterInstallation, error)
GetClusterInstallation fetches the given cluster installation by id.
func (*SQLStore) GetClusterInstallations ¶
func (sqlStore *SQLStore) GetClusterInstallations(filter *model.ClusterInstallationFilter) ([]*model.ClusterInstallation, error)
GetClusterInstallations fetches the given page of created clusters. The first page is 0.
func (*SQLStore) GetClusters ¶
GetClusters fetches the given page of created clusters. The first page is 0.
func (*SQLStore) GetCurrentVersion ¶
GetCurrentVersion queries the System table for the current database version.
func (*SQLStore) GetGroupRollingMetadata ¶ added in v0.18.0
func (sqlStore *SQLStore) GetGroupRollingMetadata(groupID string) (*GroupRollingMetadata, error)
GetGroupRollingMetadata returns installation IDs and metadata related to installation configuration reconciliation from group updates.
Note: custom SQL queries are used here instead of calling GetInstallations(). This is done for performance as we don't need the actual installation objects in most cases.
func (*SQLStore) GetGroupStatus ¶ added in v0.30.0
func (sqlStore *SQLStore) GetGroupStatus(groupID string) (*model.GroupStatus, error)
GetGroupStatus returns total number of installations in the group as well as number or Installations already rolled out and awaiting rollout.
Note: This function uses the same conditions as GetGroupRollingMetadata to be more accurate with the internal state seen by the Group Supervisor.
func (*SQLStore) GetGroups ¶
GetGroups fetches the given page of created groups. The first page is 0.
func (*SQLStore) GetInstallation ¶
func (sqlStore *SQLStore) GetInstallation(id string, includeGroupConfig, includeGroupConfigOverrides bool) (*model.Installation, error)
GetInstallation fetches the given installation by id.
func (*SQLStore) GetInstallationBackup ¶ added in v0.43.0
func (sqlStore *SQLStore) GetInstallationBackup(id string) (*model.InstallationBackup, error)
GetInstallationBackup fetches the given installation backup by id.
func (*SQLStore) GetInstallationBackups ¶ added in v0.43.0
func (sqlStore *SQLStore) GetInstallationBackups(filter *model.InstallationBackupFilter) ([]*model.InstallationBackup, error)
GetInstallationBackups fetches the given page of created installation backups. The first page is 0.
func (*SQLStore) GetInstallationDBMigrationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) GetInstallationDBMigrationOperation(id string) (*model.InstallationDBMigrationOperation, error)
GetInstallationDBMigrationOperation fetches the given installation db migration.
func (*SQLStore) GetInstallationDBMigrationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) GetInstallationDBMigrationOperations(filter *model.InstallationDBMigrationFilter) ([]*model.InstallationDBMigrationOperation, error)
GetInstallationDBMigrationOperations fetches the given page of created installation db migration. The first page is 0.
func (*SQLStore) GetInstallationDBRestorationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) GetInstallationDBRestorationOperation(id string) (*model.InstallationDBRestorationOperation, error)
GetInstallationDBRestorationOperation fetches the given installation db restoration.
func (*SQLStore) GetInstallationDBRestorationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) GetInstallationDBRestorationOperations(filter *model.InstallationDBRestorationFilter) ([]*model.InstallationDBRestorationOperation, error)
GetInstallationDBRestorationOperations fetches the given page of created installation db restoration. The first page is 0.
func (*SQLStore) GetInstallationDTO ¶ added in v0.31.0
func (sqlStore *SQLStore) GetInstallationDTO(id string, includeGroupConfig, includeGroupConfigOverrides bool) (*model.InstallationDTO, error)
GetInstallationDTO fetches the given installation by id with data from connected tables.
func (*SQLStore) GetInstallationDTOs ¶ added in v0.31.0
func (sqlStore *SQLStore) GetInstallationDTOs(filter *model.InstallationFilter, includeGroupConfig, includeGroupConfigOverrides bool) ([]*model.InstallationDTO, error)
GetInstallationDTOs fetches the given page of installation with data from connected tables. The first page is 0.
func (*SQLStore) GetInstallations ¶
func (sqlStore *SQLStore) GetInstallations(filter *model.InstallationFilter, includeGroupConfig, includeGroupConfigOverrides bool) ([]*model.Installation, error)
GetInstallations fetches the given page of created installations. The first page is 0.
func (*SQLStore) GetInstallationsCount ¶ added in v0.26.0
GetInstallationsCount returns the number of installations filtered by the deleteAt field.
func (*SQLStore) GetInstallationsStatus ¶ added in v0.42.0
func (sqlStore *SQLStore) GetInstallationsStatus() (*model.InstallationsStatus, error)
GetInstallationsStatus returns status of all installations which aren't deleted.
func (*SQLStore) GetInstallationsTotalDatabaseWeight ¶ added in v0.43.0
func (sqlStore *SQLStore) GetInstallationsTotalDatabaseWeight(installationIDs []string) (float64, error)
GetInstallationsTotalDatabaseWeight returns the total weight value of the provided installations.
func (*SQLStore) GetMultitenantDatabase ¶ added in v0.19.0
func (sqlStore *SQLStore) GetMultitenantDatabase(id string) (*model.MultitenantDatabase, error)
GetMultitenantDatabase fetches the given multitenant database by id.
func (*SQLStore) GetMultitenantDatabaseForInstallationID ¶ added in v0.19.0
func (sqlStore *SQLStore) GetMultitenantDatabaseForInstallationID(installationID string) (*model.MultitenantDatabase, error)
GetMultitenantDatabaseForInstallationID fetches the multitenant database associated with an installation ID. If more than one multitenant database per installation exists, this function returns an error.
func (*SQLStore) GetMultitenantDatabases ¶ added in v0.19.0
func (sqlStore *SQLStore) GetMultitenantDatabases(filter *model.MultitenantDatabaseFilter) ([]*model.MultitenantDatabase, error)
GetMultitenantDatabases fetches the given page of created multitenant database. The first page is 0.
func (*SQLStore) GetOrCreateAnnotations ¶ added in v0.31.0
func (sqlStore *SQLStore) GetOrCreateAnnotations(annotations []*model.Annotation) ([]*model.Annotation, error)
GetOrCreateAnnotations fetches annotations by name or creates them if they do not exist.
func (*SQLStore) GetSingleTenantDatabaseConfigForInstallation ¶ added in v0.35.0
func (sqlStore *SQLStore) GetSingleTenantDatabaseConfigForInstallation(installationID string) (*model.SingleTenantDatabaseConfig, error)
GetSingleTenantDatabaseConfigForInstallation fetches single tenant database configuration for specified installation.
func (*SQLStore) GetUnlockedClusterInstallationsPendingWork ¶
func (sqlStore *SQLStore) GetUnlockedClusterInstallationsPendingWork() ([]*model.ClusterInstallation, error)
GetUnlockedClusterInstallationsPendingWork returns an unlocked cluster installation in a pending state.
func (*SQLStore) GetUnlockedClustersPendingWork ¶
GetUnlockedClustersPendingWork returns an unlocked cluster in a pending state.
func (*SQLStore) GetUnlockedGroupsPendingWork ¶ added in v0.17.0
GetUnlockedGroupsPendingWork returns unlocked groups that have installations that require configuration reconciliation.
func (*SQLStore) GetUnlockedInstallationBackupPendingWork ¶ added in v0.43.0
func (sqlStore *SQLStore) GetUnlockedInstallationBackupPendingWork() ([]*model.InstallationBackup, error)
GetUnlockedInstallationBackupPendingWork returns an unlocked installation backups in a pending state.
func (*SQLStore) GetUnlockedInstallationDBMigrationOperationsPendingWork ¶ added in v0.45.0
func (sqlStore *SQLStore) GetUnlockedInstallationDBMigrationOperationsPendingWork() ([]*model.InstallationDBMigrationOperation, error)
GetUnlockedInstallationDBMigrationOperationsPendingWork returns unlocked installation db migrations in a pending state.
func (*SQLStore) GetUnlockedInstallationDBRestorationOperationsPendingWork ¶ added in v0.45.0
func (sqlStore *SQLStore) GetUnlockedInstallationDBRestorationOperationsPendingWork() ([]*model.InstallationDBRestorationOperation, error)
GetUnlockedInstallationDBRestorationOperationsPendingWork returns unlocked installation db restorations in a pending state.
func (*SQLStore) GetUnlockedInstallationsPendingWork ¶
func (sqlStore *SQLStore) GetUnlockedInstallationsPendingWork() ([]*model.Installation, error)
GetUnlockedInstallationsPendingWork returns an unlocked installation in a pending state.
func (*SQLStore) GetWebhook ¶ added in v0.3.0
GetWebhook fetches the given webhook by id.
func (*SQLStore) GetWebhooks ¶ added in v0.3.0
GetWebhooks fetches the given page of created webhooks. The first page is 0.
func (*SQLStore) IsInstallationBackupBeingUsed ¶ added in v0.45.0
IsInstallationBackupBeingUsed checks if backup is being used by any DB restoration Operation or DB migration Operation
func (*SQLStore) IsInstallationBackupRunning ¶ added in v0.43.0
IsInstallationBackupRunning checks if any backup is currently running or requested for specified installation.
func (*SQLStore) LockCluster ¶
LockCluster marks the cluster as locked for exclusive use by the caller.
func (*SQLStore) LockClusterAPI ¶ added in v0.25.0
LockClusterAPI locks updates to the cluster from the API.
func (*SQLStore) LockClusterInstallationAPI ¶ added in v0.25.0
LockClusterInstallationAPI locks updates to the cluster installation from the API.
func (*SQLStore) LockClusterInstallations ¶
func (sqlStore *SQLStore) LockClusterInstallations(clusterInstallationIDs []string, lockerID string) (bool, error)
LockClusterInstallations marks the cluster installation as locked for exclusive use by the caller.
func (*SQLStore) LockGroup ¶ added in v0.17.0
LockGroup marks the group as locked for exclusive use by the caller.
func (*SQLStore) LockGroupAPI ¶ added in v0.25.0
LockGroupAPI locks updates to the group from the API.
func (*SQLStore) LockInstallation ¶
LockInstallation marks the installation as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationAPI ¶ added in v0.25.0
LockInstallationAPI locks updates to the installation from the API.
func (*SQLStore) LockInstallationBackup ¶ added in v0.43.0
LockInstallationBackup marks the backup as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationBackupAPI ¶ added in v0.43.0
LockInstallationBackupAPI locks updates to the backup from the API.
func (*SQLStore) LockInstallationBackups ¶ added in v0.44.0
func (sqlStore *SQLStore) LockInstallationBackups(backupIDs []string, lockerID string) (bool, error)
LockInstallationBackups marks backups as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationDBMigrationOperation ¶ added in v0.45.0
LockInstallationDBMigrationOperation marks the InstallationDBMigrationOperation as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationDBMigrationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) LockInstallationDBMigrationOperations(ids []string, lockerID string) (bool, error)
LockInstallationDBMigrationOperations marks InstallationDBMigrationOperation as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationDBRestorationOperation ¶ added in v0.45.0
LockInstallationDBRestorationOperation marks the InstallationDBRestoration as locked for exclusive use by the caller.
func (*SQLStore) LockInstallationDBRestorationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) LockInstallationDBRestorationOperations(ids []string, lockerID string) (bool, error)
LockInstallationDBRestorationOperations marks InstallationDBRestorations as locked for exclusive use by the caller.
func (*SQLStore) LockMultitenantDatabase ¶ added in v0.19.0
func (sqlStore *SQLStore) LockMultitenantDatabase(multitenantDatabaseID, lockerID string) (bool, error)
LockMultitenantDatabase marks the database cluster as locked for exclusive use by the caller.
func (*SQLStore) LockMultitenantDatabases ¶ added in v0.45.0
LockMultitenantDatabases marks MultitenantDatabases as locked for exclusive use by the caller.
func (*SQLStore) Migrate ¶
Migrate advances the schema of the configured database to the latest version.
func (*SQLStore) RecoverClusterInstallation ¶ added in v0.45.0
func (sqlStore *SQLStore) RecoverClusterInstallation(clusterInstallation *model.ClusterInstallation) error
RecoverClusterInstallation recovers a given cluster installation from the deleted state.
func (*SQLStore) RecoverInstallation ¶ added in v0.45.0
func (sqlStore *SQLStore) RecoverInstallation(installation *model.Installation) error
RecoverInstallation recovers a given installation from the deleted state.
func (*SQLStore) TriggerInstallationDBMigration ¶ added in v0.45.0
func (sqlStore *SQLStore) TriggerInstallationDBMigration(dbMigrationOp *model.InstallationDBMigrationOperation, installation *model.Installation) (*model.InstallationDBMigrationOperation, error)
TriggerInstallationDBMigration creates new InstallationDBMigrationOperation in Requested state and changes installation state to InstallationStateDBMigrationInProgress.
func (*SQLStore) TriggerInstallationRestoration ¶ added in v0.45.0
func (sqlStore *SQLStore) TriggerInstallationRestoration(installation *model.Installation, backup *model.InstallationBackup) (*model.InstallationDBRestorationOperation, error)
TriggerInstallationRestoration creates new InstallationDBRestorationOperation in Requested state and changes installation state to InstallationStateDBRestorationInProgress.
func (*SQLStore) UnlockCluster ¶
UnlockCluster releases a lock previously acquired against a caller.
func (*SQLStore) UnlockClusterAPI ¶ added in v0.25.0
UnlockClusterAPI unlocks updates to the cluster from the API.
func (*SQLStore) UnlockClusterInstallationAPI ¶ added in v0.25.0
UnlockClusterInstallationAPI unlocks updates to the cluster installation from the API.
func (*SQLStore) UnlockClusterInstallations ¶
func (sqlStore *SQLStore) UnlockClusterInstallations(clusterInstallationIDs []string, lockerID string, force bool) (bool, error)
UnlockClusterInstallations releases a lock previously acquired against a caller.
func (*SQLStore) UnlockGroup ¶ added in v0.17.0
UnlockGroup releases a lock previously acquired against a caller.
func (*SQLStore) UnlockGroupAPI ¶ added in v0.25.0
UnlockGroupAPI unlocks updates to the group from the API.
func (*SQLStore) UnlockInstallation ¶
func (sqlStore *SQLStore) UnlockInstallation(installationID, lockerID string, force bool) (bool, error)
UnlockInstallation releases a lock previously acquired against a caller.
func (*SQLStore) UnlockInstallationAPI ¶ added in v0.25.0
UnlockInstallationAPI unlocks updates to the installation from the API.
func (*SQLStore) UnlockInstallationBackup ¶ added in v0.43.0
func (sqlStore *SQLStore) UnlockInstallationBackup(backupID, lockerID string, force bool) (bool, error)
UnlockInstallationBackup releases a lock previously acquired against a caller.
func (*SQLStore) UnlockInstallationBackupAPI ¶ added in v0.43.0
UnlockInstallationBackupAPI unlocks updates to the backup from the API.
func (*SQLStore) UnlockInstallationBackups ¶ added in v0.44.0
func (sqlStore *SQLStore) UnlockInstallationBackups(backupIDs []string, lockerID string, force bool) (bool, error)
UnlockInstallationBackups releases a locks previously acquired against a caller.
func (*SQLStore) UnlockInstallationDBMigrationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) UnlockInstallationDBMigrationOperation(id, lockerID string, force bool) (bool, error)
UnlockInstallationDBMigrationOperation releases a lock previously acquired against a caller.
func (*SQLStore) UnlockInstallationDBMigrationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) UnlockInstallationDBMigrationOperations(ids []string, lockerID string, force bool) (bool, error)
UnlockInstallationDBMigrationOperations releases a locks previously acquired against a caller.
func (*SQLStore) UnlockInstallationDBRestorationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) UnlockInstallationDBRestorationOperation(id, lockerID string, force bool) (bool, error)
UnlockInstallationDBRestorationOperation releases a lock previously acquired against a caller.
func (*SQLStore) UnlockInstallationDBRestorationOperations ¶ added in v0.45.0
func (sqlStore *SQLStore) UnlockInstallationDBRestorationOperations(ids []string, lockerID string, force bool) (bool, error)
UnlockInstallationDBRestorationOperations releases a locks previously acquired against a caller.
func (*SQLStore) UnlockMultitenantDatabase ¶ added in v0.19.0
func (sqlStore *SQLStore) UnlockMultitenantDatabase(multitenantDatabaseID, lockerID string, force bool) (bool, error)
UnlockMultitenantDatabase releases a lock previously acquired against a caller.
func (*SQLStore) UnlockMultitenantDatabases ¶ added in v0.45.0
func (sqlStore *SQLStore) UnlockMultitenantDatabases(ids []string, lockerID string, force bool) (bool, error)
UnlockMultitenantDatabases releases a locks previously acquired against a caller.
func (*SQLStore) UpdateCluster ¶
UpdateCluster updates the given cluster in the database.
func (*SQLStore) UpdateClusterInstallation ¶
func (sqlStore *SQLStore) UpdateClusterInstallation(clusterInstallation *model.ClusterInstallation) error
UpdateClusterInstallation updates the given cluster installation in the database.
func (*SQLStore) UpdateGroup ¶
UpdateGroup updates the given group in the database. If a value was updated that will possibly affect installation config then update the group sequence number.
func (*SQLStore) UpdateInstallation ¶
func (sqlStore *SQLStore) UpdateInstallation(installation *model.Installation) error
UpdateInstallation updates the given installation in the database.
func (*SQLStore) UpdateInstallationBackupSchedulingData ¶ added in v0.43.0
func (sqlStore *SQLStore) UpdateInstallationBackupSchedulingData(backup *model.InstallationBackup) error
UpdateInstallationBackupSchedulingData updates the given backup data residency and ClusterInstallationID.
func (*SQLStore) UpdateInstallationBackupStartTime ¶ added in v0.43.0
func (sqlStore *SQLStore) UpdateInstallationBackupStartTime(backup *model.InstallationBackup) error
UpdateInstallationBackupStartTime updates the given backup start time.
func (*SQLStore) UpdateInstallationBackupState ¶ added in v0.43.0
func (sqlStore *SQLStore) UpdateInstallationBackupState(backup *model.InstallationBackup) error
UpdateInstallationBackupState updates the given backup to a new state.
func (*SQLStore) UpdateInstallationCRVersion ¶ added in v0.42.0
UpdateInstallationCRVersion updates the given installation CRVersion.
func (*SQLStore) UpdateInstallationDBMigrationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) UpdateInstallationDBMigrationOperation(dbMigration *model.InstallationDBMigrationOperation) error
UpdateInstallationDBMigrationOperation updates the given installation db migration.
func (*SQLStore) UpdateInstallationDBMigrationOperationState ¶ added in v0.45.0
func (sqlStore *SQLStore) UpdateInstallationDBMigrationOperationState(dbMigration *model.InstallationDBMigrationOperation) error
UpdateInstallationDBMigrationOperationState updates the given installation db migration state.
func (*SQLStore) UpdateInstallationDBRestorationOperation ¶ added in v0.45.0
func (sqlStore *SQLStore) UpdateInstallationDBRestorationOperation(dbRestoration *model.InstallationDBRestorationOperation) error
UpdateInstallationDBRestorationOperation updates the given installation db restoration.
func (*SQLStore) UpdateInstallationDBRestorationOperationState ¶ added in v0.45.0
func (sqlStore *SQLStore) UpdateInstallationDBRestorationOperationState(dbRestoration *model.InstallationDBRestorationOperation) error
UpdateInstallationDBRestorationOperationState updates the given installation db restoration state.
func (*SQLStore) UpdateInstallationGroupSequence ¶ added in v0.18.0
func (sqlStore *SQLStore) UpdateInstallationGroupSequence(installation *model.Installation) error
UpdateInstallationGroupSequence updates the given installation GroupSequence to the value stored in the merged group config. The provided installation must have been merged with group config before passing it in.
func (*SQLStore) UpdateInstallationState ¶ added in v0.18.0
func (sqlStore *SQLStore) UpdateInstallationState(installation *model.Installation) error
UpdateInstallationState updates the given installation to a new state.
func (*SQLStore) UpdateMultitenantDatabase ¶ added in v0.19.0
func (sqlStore *SQLStore) UpdateMultitenantDatabase(multitenantDatabase *model.MultitenantDatabase) error
UpdateMultitenantDatabase updates a already existent multitenant database in the datastore.
type Transaction ¶ added in v0.31.0
Transaction is a wrapper around *sqlx.Tx providing convenience methods.
func (*Transaction) Commit ¶ added in v0.31.0
func (t *Transaction) Commit() error
Commit commits the pending transaction.
func (*Transaction) RollbackUnlessCommitted ¶ added in v0.31.0
func (t *Transaction) RollbackUnlessCommitted()
RollbackUnlessCommitted rollback the transaction if it is not committed.
Source Files ¶
- annotation.go
- cluster.go
- cluster_dto.go
- cluster_installation.go
- driver.go
- group.go
- helpers.go
- installation.go
- installation_backup.go
- installation_db_migration.go
- installation_db_restoration_operation.go
- installation_dto.go
- lock.go
- migrate.go
- migrations.go
- multitenant_database.go
- store.go
- system.go
- testing.go
- util.go
- version.go
- webhook.go