Documentation
¶
Index ¶
- Constants
- Variables
- type Client
- type HTTPServerConfig
- type MQTTServerConfig
- type MultiServerClient
- func (c *MultiServerClient) BackupDatabaseNode(ctx context.Context, req *api.BackupDatabaseNodePayload) (res *api.BackupDatabaseNodeResponse, err error)
- func (c *MultiServerClient) CancelDatabaseTask(ctx context.Context, req *api.CancelDatabaseTaskPayload) (res *api.Task, err error)
- func (c *MultiServerClient) CreateDatabase(ctx context.Context, req *api.CreateDatabaseRequest) (res *api.CreateDatabaseResponse, err error)
- func (c *MultiServerClient) DeleteDatabase(ctx context.Context, req *api.DeleteDatabasePayload) (res *api.DeleteDatabaseResponse, err error)
- func (c *MultiServerClient) FailoverDatabaseNode(ctx context.Context, req *api.FailoverDatabaseNodeRequest) (res *api.FailoverDatabaseNodeResponse, err error)
- func (c *MultiServerClient) FollowTask(ctx context.Context, req *api.GetDatabaseTaskLogPayload, ...) error
- func (c *MultiServerClient) GetCluster(ctx context.Context) (res *api.Cluster, err error)
- func (c *MultiServerClient) GetDatabase(ctx context.Context, req *api.GetDatabasePayload) (res *api.Database, err error)
- func (c *MultiServerClient) GetDatabaseTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (res *api.Task, err error)
- func (c *MultiServerClient) GetDatabaseTaskLog(ctx context.Context, req *api.GetDatabaseTaskLogPayload) (res *api.TaskLog, err error)
- func (c *MultiServerClient) GetHost(ctx context.Context, req *api.GetHostPayload) (res *api.Host, err error)
- func (c *MultiServerClient) GetJoinToken(ctx context.Context) (res *api.ClusterJoinToken, err error)
- func (c *MultiServerClient) GetVersion(ctx context.Context) (res *api.VersionInfo, err error)
- func (c *MultiServerClient) InitCluster(ctx context.Context, req *api.InitClusterRequest) (res *api.ClusterJoinToken, err error)
- func (c *MultiServerClient) JoinCluster(ctx context.Context, req *api.ClusterJoinToken) (err error)
- func (c *MultiServerClient) ListDatabaseTasks(ctx context.Context, req *api.ListDatabaseTasksPayload) (res *api.ListDatabaseTasksResponse, err error)
- func (c *MultiServerClient) ListDatabases(ctx context.Context) (res *api.ListDatabasesResponse, err error)
- func (c *MultiServerClient) ListHosts(ctx context.Context) (res *api.ListHostsResponse, err error)
- func (c *MultiServerClient) RemoveHost(ctx context.Context, req *api.RemoveHostPayload) (*api.RemoveHostResponse, error)
- func (c *MultiServerClient) RestartInstance(ctx context.Context, req *api.RestartInstancePayload) (res *api.RestartInstanceResponse, err error)
- func (c *MultiServerClient) RestoreDatabase(ctx context.Context, req *api.RestoreDatabasePayload) (res *api.RestoreDatabaseResponse, err error)
- func (c *MultiServerClient) Server(hostID string) (*SingleServerClient, error)
- func (c *MultiServerClient) SwitchoverDatabaseNode(ctx context.Context, req *api.SwitchoverDatabaseNodePayload) (res *api.SwitchoverDatabaseNodeResponse, err error)
- func (c *MultiServerClient) UpdateDatabase(ctx context.Context, req *api.UpdateDatabasePayload) (res *api.UpdateDatabaseResponse, err error)
- func (c *MultiServerClient) WaitForTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
- type ServerConfig
- type SingleServerClient
- func (c *SingleServerClient) BackupDatabaseNode(ctx context.Context, req *api.BackupDatabaseNodePayload) (*api.BackupDatabaseNodeResponse, error)
- func (c *SingleServerClient) CancelDatabaseTask(ctx context.Context, req *api.CancelDatabaseTaskPayload) (*api.Task, error)
- func (c *SingleServerClient) CreateDatabase(ctx context.Context, req *api.CreateDatabaseRequest) (*api.CreateDatabaseResponse, error)
- func (c *SingleServerClient) DeleteDatabase(ctx context.Context, req *api.DeleteDatabasePayload) (*api.DeleteDatabaseResponse, error)
- func (c *SingleServerClient) FailoverDatabaseNode(ctx context.Context, req *api.FailoverDatabaseNodeRequest) (*api.FailoverDatabaseNodeResponse, error)
- func (c *SingleServerClient) FollowTask(ctx context.Context, req *api.GetDatabaseTaskLogPayload, ...) error
- func (c *SingleServerClient) GetCluster(ctx context.Context) (*api.Cluster, error)
- func (c *SingleServerClient) GetDatabase(ctx context.Context, req *api.GetDatabasePayload) (*api.Database, error)
- func (c *SingleServerClient) GetDatabaseTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
- func (c *SingleServerClient) GetDatabaseTaskLog(ctx context.Context, req *api.GetDatabaseTaskLogPayload) (*api.TaskLog, error)
- func (c *SingleServerClient) GetHost(ctx context.Context, req *api.GetHostPayload) (*api.Host, error)
- func (c *SingleServerClient) GetJoinToken(ctx context.Context) (*api.ClusterJoinToken, error)
- func (c *SingleServerClient) GetVersion(ctx context.Context) (*api.VersionInfo, error)
- func (c *SingleServerClient) InitCluster(ctx context.Context, req *api.InitClusterRequest) (*api.ClusterJoinToken, error)
- func (c *SingleServerClient) JoinCluster(ctx context.Context, req *api.ClusterJoinToken) error
- func (c *SingleServerClient) ListDatabaseTasks(ctx context.Context, req *api.ListDatabaseTasksPayload) (*api.ListDatabaseTasksResponse, error)
- func (c *SingleServerClient) ListDatabases(ctx context.Context) (*api.ListDatabasesResponse, error)
- func (c *SingleServerClient) ListHosts(ctx context.Context) (*api.ListHostsResponse, error)
- func (c *SingleServerClient) RemoveHost(ctx context.Context, req *api.RemoveHostPayload) (*api.RemoveHostResponse, error)
- func (c *SingleServerClient) RestartInstance(ctx context.Context, req *api.RestartInstancePayload) (*api.RestartInstanceResponse, error)
- func (c *SingleServerClient) RestoreDatabase(ctx context.Context, req *api.RestoreDatabasePayload) (*api.RestoreDatabaseResponse, error)
- func (c *SingleServerClient) SwitchoverDatabaseNode(ctx context.Context, req *api.SwitchoverDatabaseNodePayload) (*api.SwitchoverDatabaseNodeResponse, error)
- func (c *SingleServerClient) UpdateDatabase(ctx context.Context, req *api.UpdateDatabasePayload) (*api.UpdateDatabaseResponse, error)
- func (c *SingleServerClient) WaitForTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
Constants ¶
View Source
const ( BackupTypeFull = "full" BackupTypeDiff = "diff" BackupTypeIncr = "incr" )
View Source
const ( ClusterStateAvailable = "available" ClusterStateError = "error" )
View Source
const ( DatabaseStateCreating = "creating" DatabaseStateModifying = "modifying" DatabaseStateAvailable = "available" DatabaseStateDeleting = "deleting" DatabaseStateDegraded = "degraded" DatabaseStateUnknown = "unknown" DatabaseStateFailed = "failed" )
View Source
const ( HostStateHealthy = "healthy" HostStateUnreachable = "unreachable" HostStateDegraded = "degraded" HostStateUnknown = "unknown" )
View Source
const ( InstanceStateCreating = "creating" InstanceStateModifying = "modifying" InstanceStateBackingUp = "backing_up" InstanceStateAvailable = "available" InstanceStateDegraded = "degraded" InstanceStateFailed = "failed" InstanceStateStopped = "stopped" InstanceStateUnknown = "unknown" )
View Source
const ( PatroniStateStopping = "stopping" PatroniStateStopped = "stopped" PatroniStateStopFailed = "stop failed" PatroniStateCrashed = "crashed" PatroniStateRunning = "running" PatroniStateStarting = "starting" PatroniStateStartFailed = "start failed" PatroniStateRestarting = "restarting" PatroniStateRestartFailed = "restart failed" PatroniStateInitializingNewCluster = "initializing new cluster" PatroniStateInitDBFailed = "initdb failed" PatroniStateRunningCustomBootstrapScript = "running custom bootstrap script" PatroniStateCustomBootstrapFailed = "custom bootstrap failed" PatroniStateCreatingReplica = "creating replica" PatroniStateUnknown = "unknown" )
View Source
const ( RepositoryTypeS3 = "s3" RepositoryTypeGCS = "gcs" RepositoryTypeAzure = "azure" RepositoryTypePosix = "posix" RepositoryTypeCIFS = "cifs" )
View Source
const ( RetentionTypeTime = "time" RetentionTypeCount = "count" )
View Source
const ( RoleReplica = "replica" RolePrimary = "primary" )
View Source
const ( TaskSortOrderAsc = "asc" TaskSortOrderDesc = "desc" )
View Source
const ( TaskStatusPending = "pending" TaskStatusRunning = "running" TaskStatusCompleted = "completed" TaskStatusFailed = "failed" TaskStatusUnknown = "unknown" TaskStatusCanceling = "canceling" TaskStatusCanceled = "canceled" )
Variables ¶
View Source
var ( ErrClusterAlreadyInitialized = errors.New(errorNameClusterAlreadyInitialized) ErrClusterNotInitialized = errors.New(errorNameClusterNotInitialized) ErrDatabaseAlreadyExists = errors.New(errorNameDatabaseAlreadyExists) ErrDatabaseNotModifiable = errors.New(errorNameDatabaseNotModifiable) ErrInvalidInput = errors.New(errorNameInvalidInput) ErrInvalidJoinToken = errors.New(errorNameInvalidJoinToken) ErrNotFound = errors.New(errorNameNotFound) ErrOperationAlreadyInProgress = errors.New(errorNameOperationAlreadyInProgress) ErrOperationNotSupported = errors.New(errorNameOperationNotSupported) ErrRestartFailed = errors.New(errorNameRestartFailed) ErrServerError = errors.New(errorNameServerError) )
View Source
var ErrHostNotFound = errors.New("host not found")
View Source
var ErrInvalidServerConfig = errors.New("server configuration is empty")
View Source
var ErrNoHealthyServers = errors.New("no healthy servers found")
View Source
var ErrNoServers = errors.New("no servers provided")
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface {
InitCluster(ctx context.Context, req *api.InitClusterRequest) (*api.ClusterJoinToken, error)
JoinCluster(ctx context.Context, req *api.ClusterJoinToken) error
GetJoinToken(ctx context.Context) (*api.ClusterJoinToken, error)
GetCluster(ctx context.Context) (*api.Cluster, error)
ListHosts(ctx context.Context) (*api.ListHostsResponse, error)
GetHost(ctx context.Context, req *api.GetHostPayload) (*api.Host, error)
RemoveHost(ctx context.Context, req *api.RemoveHostPayload) (*api.RemoveHostResponse, error)
ListDatabases(ctx context.Context) (*api.ListDatabasesResponse, error)
CreateDatabase(ctx context.Context, req *api.CreateDatabaseRequest) (*api.CreateDatabaseResponse, error)
GetDatabase(ctx context.Context, req *api.GetDatabasePayload) (*api.Database, error)
UpdateDatabase(ctx context.Context, req *api.UpdateDatabasePayload) (*api.UpdateDatabaseResponse, error)
DeleteDatabase(ctx context.Context, req *api.DeleteDatabasePayload) (*api.DeleteDatabaseResponse, error)
BackupDatabaseNode(ctx context.Context, req *api.BackupDatabaseNodePayload) (*api.BackupDatabaseNodeResponse, error)
ListDatabaseTasks(ctx context.Context, req *api.ListDatabaseTasksPayload) (*api.ListDatabaseTasksResponse, error)
GetDatabaseTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
GetDatabaseTaskLog(ctx context.Context, req *api.GetDatabaseTaskLogPayload) (*api.TaskLog, error)
RestoreDatabase(ctx context.Context, req *api.RestoreDatabasePayload) (*api.RestoreDatabaseResponse, error)
GetVersion(ctx context.Context) (*api.VersionInfo, error)
RestartInstance(ctx context.Context, req *api.RestartInstancePayload) (*api.RestartInstanceResponse, error)
CancelDatabaseTask(ctx context.Context, req *api.CancelDatabaseTaskPayload) (res *api.Task, err error)
SwitchoverDatabaseNode(ctx context.Context, req *api.SwitchoverDatabaseNodePayload) (*api.SwitchoverDatabaseNodeResponse, error)
FailoverDatabaseNode(ctx context.Context, req *api.FailoverDatabaseNodeRequest) (*api.FailoverDatabaseNodeResponse, error)
WaitForTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
FollowTask(ctx context.Context, req *api.GetDatabaseTaskLogPayload, handler func(e *api.TaskLogEntry)) error
}
type HTTPServerConfig ¶
type HTTPServerConfig struct {
// contains filtered or unexported fields
}
HTTPServerConfig configures a connection to a Control Plane server via HTTP.
type MQTTServerConfig ¶
type MQTTServerConfig struct {
// contains filtered or unexported fields
}
MQTTServerConfig configures a connection to a Control Plane server via MQTT.
type MultiServerClient ¶
type MultiServerClient struct {
// contains filtered or unexported fields
}
func NewMultiServerClient ¶
func NewMultiServerClient(servers ...ServerConfig) (*MultiServerClient, error)
func (*MultiServerClient) BackupDatabaseNode ¶
func (c *MultiServerClient) BackupDatabaseNode(ctx context.Context, req *api.BackupDatabaseNodePayload) (res *api.BackupDatabaseNodeResponse, err error)
func (*MultiServerClient) CancelDatabaseTask ¶
func (c *MultiServerClient) CancelDatabaseTask(ctx context.Context, req *api.CancelDatabaseTaskPayload) (res *api.Task, err error)
func (*MultiServerClient) CreateDatabase ¶
func (c *MultiServerClient) CreateDatabase(ctx context.Context, req *api.CreateDatabaseRequest) (res *api.CreateDatabaseResponse, err error)
func (*MultiServerClient) DeleteDatabase ¶
func (c *MultiServerClient) DeleteDatabase(ctx context.Context, req *api.DeleteDatabasePayload) (res *api.DeleteDatabaseResponse, err error)
func (*MultiServerClient) FailoverDatabaseNode ¶
func (c *MultiServerClient) FailoverDatabaseNode(ctx context.Context, req *api.FailoverDatabaseNodeRequest) (res *api.FailoverDatabaseNodeResponse, err error)
func (*MultiServerClient) FollowTask ¶
func (c *MultiServerClient) FollowTask(ctx context.Context, req *api.GetDatabaseTaskLogPayload, handler func(e *api.TaskLogEntry)) error
func (*MultiServerClient) GetCluster ¶
func (*MultiServerClient) GetDatabase ¶
func (c *MultiServerClient) GetDatabase(ctx context.Context, req *api.GetDatabasePayload) (res *api.Database, err error)
func (*MultiServerClient) GetDatabaseTask ¶
func (c *MultiServerClient) GetDatabaseTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (res *api.Task, err error)
func (*MultiServerClient) GetDatabaseTaskLog ¶
func (c *MultiServerClient) GetDatabaseTaskLog(ctx context.Context, req *api.GetDatabaseTaskLogPayload) (res *api.TaskLog, err error)
func (*MultiServerClient) GetHost ¶
func (c *MultiServerClient) GetHost(ctx context.Context, req *api.GetHostPayload) (res *api.Host, err error)
func (*MultiServerClient) GetJoinToken ¶
func (c *MultiServerClient) GetJoinToken(ctx context.Context) (res *api.ClusterJoinToken, err error)
func (*MultiServerClient) GetVersion ¶
func (c *MultiServerClient) GetVersion(ctx context.Context) (res *api.VersionInfo, err error)
func (*MultiServerClient) InitCluster ¶
func (c *MultiServerClient) InitCluster(ctx context.Context, req *api.InitClusterRequest) (res *api.ClusterJoinToken, err error)
func (*MultiServerClient) JoinCluster ¶
func (c *MultiServerClient) JoinCluster(ctx context.Context, req *api.ClusterJoinToken) (err error)
func (*MultiServerClient) ListDatabaseTasks ¶
func (c *MultiServerClient) ListDatabaseTasks(ctx context.Context, req *api.ListDatabaseTasksPayload) (res *api.ListDatabaseTasksResponse, err error)
func (*MultiServerClient) ListDatabases ¶
func (c *MultiServerClient) ListDatabases(ctx context.Context) (res *api.ListDatabasesResponse, err error)
func (*MultiServerClient) ListHosts ¶
func (c *MultiServerClient) ListHosts(ctx context.Context) (res *api.ListHostsResponse, err error)
func (*MultiServerClient) RemoveHost ¶
func (c *MultiServerClient) RemoveHost(ctx context.Context, req *api.RemoveHostPayload) (*api.RemoveHostResponse, error)
func (*MultiServerClient) RestartInstance ¶
func (c *MultiServerClient) RestartInstance(ctx context.Context, req *api.RestartInstancePayload) (res *api.RestartInstanceResponse, err error)
func (*MultiServerClient) RestoreDatabase ¶
func (c *MultiServerClient) RestoreDatabase(ctx context.Context, req *api.RestoreDatabasePayload) (res *api.RestoreDatabaseResponse, err error)
func (*MultiServerClient) Server ¶
func (c *MultiServerClient) Server(hostID string) (*SingleServerClient, error)
func (*MultiServerClient) SwitchoverDatabaseNode ¶
func (c *MultiServerClient) SwitchoverDatabaseNode(ctx context.Context, req *api.SwitchoverDatabaseNodePayload) (res *api.SwitchoverDatabaseNodeResponse, err error)
func (*MultiServerClient) UpdateDatabase ¶
func (c *MultiServerClient) UpdateDatabase(ctx context.Context, req *api.UpdateDatabasePayload) (res *api.UpdateDatabaseResponse, err error)
func (*MultiServerClient) WaitForTask ¶
func (c *MultiServerClient) WaitForTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
type ServerConfig ¶
type ServerConfig struct {
// contains filtered or unexported fields
}
func NewHTTPServerConfig ¶
func NewHTTPServerConfig(hostID string, url *url.URL) ServerConfig
NewHTTPServerConfig creates a new HTTPServerConfig with the given URL.
func NewMQTTServerConfig ¶
type SingleServerClient ¶
type SingleServerClient struct {
// contains filtered or unexported fields
}
func NewSingleServerClient ¶
func NewSingleServerClient(server ServerConfig) (*SingleServerClient, error)
func (*SingleServerClient) BackupDatabaseNode ¶
func (c *SingleServerClient) BackupDatabaseNode(ctx context.Context, req *api.BackupDatabaseNodePayload) (*api.BackupDatabaseNodeResponse, error)
func (*SingleServerClient) CancelDatabaseTask ¶
func (c *SingleServerClient) CancelDatabaseTask(ctx context.Context, req *api.CancelDatabaseTaskPayload) (*api.Task, error)
func (*SingleServerClient) CreateDatabase ¶
func (c *SingleServerClient) CreateDatabase(ctx context.Context, req *api.CreateDatabaseRequest) (*api.CreateDatabaseResponse, error)
func (*SingleServerClient) DeleteDatabase ¶
func (c *SingleServerClient) DeleteDatabase(ctx context.Context, req *api.DeleteDatabasePayload) (*api.DeleteDatabaseResponse, error)
func (*SingleServerClient) FailoverDatabaseNode ¶
func (c *SingleServerClient) FailoverDatabaseNode(ctx context.Context, req *api.FailoverDatabaseNodeRequest) (*api.FailoverDatabaseNodeResponse, error)
func (*SingleServerClient) FollowTask ¶
func (c *SingleServerClient) FollowTask(ctx context.Context, req *api.GetDatabaseTaskLogPayload, handler func(e *api.TaskLogEntry)) error
func (*SingleServerClient) GetCluster ¶
func (*SingleServerClient) GetDatabase ¶
func (c *SingleServerClient) GetDatabase(ctx context.Context, req *api.GetDatabasePayload) (*api.Database, error)
func (*SingleServerClient) GetDatabaseTask ¶
func (c *SingleServerClient) GetDatabaseTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
func (*SingleServerClient) GetDatabaseTaskLog ¶
func (c *SingleServerClient) GetDatabaseTaskLog(ctx context.Context, req *api.GetDatabaseTaskLogPayload) (*api.TaskLog, error)
func (*SingleServerClient) GetHost ¶
func (c *SingleServerClient) GetHost(ctx context.Context, req *api.GetHostPayload) (*api.Host, error)
func (*SingleServerClient) GetJoinToken ¶
func (c *SingleServerClient) GetJoinToken(ctx context.Context) (*api.ClusterJoinToken, error)
func (*SingleServerClient) GetVersion ¶
func (c *SingleServerClient) GetVersion(ctx context.Context) (*api.VersionInfo, error)
func (*SingleServerClient) InitCluster ¶
func (c *SingleServerClient) InitCluster(ctx context.Context, req *api.InitClusterRequest) (*api.ClusterJoinToken, error)
func (*SingleServerClient) JoinCluster ¶
func (c *SingleServerClient) JoinCluster(ctx context.Context, req *api.ClusterJoinToken) error
func (*SingleServerClient) ListDatabaseTasks ¶
func (c *SingleServerClient) ListDatabaseTasks(ctx context.Context, req *api.ListDatabaseTasksPayload) (*api.ListDatabaseTasksResponse, error)
func (*SingleServerClient) ListDatabases ¶
func (c *SingleServerClient) ListDatabases(ctx context.Context) (*api.ListDatabasesResponse, error)
func (*SingleServerClient) ListHosts ¶
func (c *SingleServerClient) ListHosts(ctx context.Context) (*api.ListHostsResponse, error)
func (*SingleServerClient) RemoveHost ¶
func (c *SingleServerClient) RemoveHost(ctx context.Context, req *api.RemoveHostPayload) (*api.RemoveHostResponse, error)
func (*SingleServerClient) RestartInstance ¶
func (c *SingleServerClient) RestartInstance(ctx context.Context, req *api.RestartInstancePayload) (*api.RestartInstanceResponse, error)
func (*SingleServerClient) RestoreDatabase ¶
func (c *SingleServerClient) RestoreDatabase(ctx context.Context, req *api.RestoreDatabasePayload) (*api.RestoreDatabaseResponse, error)
func (*SingleServerClient) SwitchoverDatabaseNode ¶
func (c *SingleServerClient) SwitchoverDatabaseNode(ctx context.Context, req *api.SwitchoverDatabaseNodePayload) (*api.SwitchoverDatabaseNodeResponse, error)
func (*SingleServerClient) UpdateDatabase ¶
func (c *SingleServerClient) UpdateDatabase(ctx context.Context, req *api.UpdateDatabasePayload) (*api.UpdateDatabaseResponse, error)
func (*SingleServerClient) WaitForTask ¶
func (c *SingleServerClient) WaitForTask(ctx context.Context, req *api.GetDatabaseTaskPayload) (*api.Task, error)
Click to show internal directories.
Click to hide internal directories.