Documentation ¶
Index ¶
- type ArangoAgency
- type ArangoAgencyGet
- type ArangoApplier
- type DeploymentAgencyMaintenance
- type DeploymentClient
- type DeploymentDatabaseClient
- type DeploymentEndpoints
- type DeploymentGetter
- type DeploymentImageManager
- type DeploymentInfoGetter
- type DeploymentMemberClient
- type DeploymentMemberStatusUpdateErrFunc
- type DeploymentMemberStatusUpdateFunc
- type DeploymentPodRenderer
- type DeploymentStatusUpdate
- type DeploymentStatusUpdateErrFunc
- type DeploymentStatusUpdateFunc
- type DeploymentSyncClient
- type KubernetesEventGenerator
- type ServerGroupIterator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArangoAgency ¶
type ArangoAgency interface { ArangoAgencyGet RefreshAgencyCache(ctx context.Context) (uint64, error) }
type ArangoAgencyGet ¶
type ArangoAgencyGet interface { // WithAgencyCache executes the given action with the agency cache using a Read lock. Returns true if action was applied WithAgencyCache(action func(state.State)) bool // GetAgencyCache returns the agency cache. // It can cause to Read/Write error when state is reloaded. // It is recommended to use WithAgencyCache instead. GetAgencyCache() (state.State, bool) GetAgencyArangoDBCache() (state.DB, bool) GetAgencyHealth() (agencyCache.Health, bool) ShardsInSyncMap() (state.ShardsSyncStatus, bool) }
type ArangoApplier ¶
type DeploymentClient ¶
type DeploymentClient interface { DeploymentDatabaseClient DeploymentMemberClient DeploymentSyncClient }
DeploymentClient provides functionalities to get deployment's clients.
type DeploymentDatabaseClient ¶
type DeploymentDatabaseClient interface { // GetDatabaseAsyncClient returns a cached client for the entire database (cluster coordinators or single server), // creating one if needed. Only in AsyncMode GetDatabaseAsyncClient(ctx context.Context) (driver.Client, error) // GetServerAsyncClient returns an async client for a specific server. GetServerAsyncClient(id string) (driver.Client, error) }
type DeploymentEndpoints ¶
type DeploymentEndpoints interface { // GenerateMemberEndpoint generates endpoint for a member GenerateMemberEndpoint(group api.ServerGroup, member api.MemberStatus) (string, error) }
type DeploymentGetter ¶
type DeploymentGetter interface { DeploymentClient DeploymentInfoGetter }
DeploymentGetter provides functionalities to get deployment resources.
type DeploymentImageManager ¶
type DeploymentImageManager interface { // SelectImage select currently used image by pod SelectImage(spec api.DeploymentSpec, status api.DeploymentStatus) (api.ImageInfo, bool) // SelectImageForMember select currently used image by pod in member SelectImageForMember(spec api.DeploymentSpec, status api.DeploymentStatus, member api.MemberStatus) (api.ImageInfo, bool) }
type DeploymentInfoGetter ¶
type DeploymentInfoGetter interface { // GetAPIObject returns the deployment as k8s object. GetAPIObject() k8sutil.APIObject // GetSpec returns the current specification of the deployment GetSpec() api.DeploymentSpec // GetStatus returns the current status of the deployment GetStatus() api.DeploymentStatus // GetMode the specified mode of deployment GetMode() api.DeploymentMode // GetName returns the name of the deployment GetName() string // GetNamespace returns the namespace that contains the deployment GetNamespace() string // IsSyncEnabled returns information if sync is enabled IsSyncEnabled() bool }
type DeploymentMemberClient ¶
type DeploymentMemberStatusUpdateErrFunc ¶
type DeploymentMemberStatusUpdateErrFunc func(s *api.MemberStatus) (bool, error)
type DeploymentMemberStatusUpdateFunc ¶
type DeploymentMemberStatusUpdateFunc func(s *api.MemberStatus) bool
type DeploymentPodRenderer ¶
type DeploymentPodRenderer interface { // RenderPodForMember Renders Pod definition for member RenderPodForMember(ctx context.Context, acs sutil.ACS, spec api.DeploymentSpec, status api.DeploymentStatus, memberID string, imageInfo api.ImageInfo) (*core.Pod, error) // RenderPodTemplateForMember Renders PodTemplate definition for member RenderPodTemplateForMember(ctx context.Context, acs sutil.ACS, spec api.DeploymentSpec, status api.DeploymentStatus, memberID string, imageInfo api.ImageInfo) (*core.PodTemplateSpec, error) DeploymentEndpoints }
type DeploymentStatusUpdate ¶
type DeploymentStatusUpdate interface { // WithStatusUpdateErr update status of ArangoDeployment with defined modifier. If action returns True action is taken WithStatusUpdateErr(ctx context.Context, action DeploymentStatusUpdateErrFunc) error // WithStatusUpdate update status of ArangoDeployment with defined modifier. If action returns True action is taken WithStatusUpdate(ctx context.Context, action DeploymentStatusUpdateFunc) error // WithMemberStatusUpdateErr update status of ArangoDeployment Member with defined modifier. If action returns True action is taken WithMemberStatusUpdateErr(ctx context.Context, id string, group api.ServerGroup, action DeploymentMemberStatusUpdateErrFunc) error // WithMemberStatusUpdate update status of ArangoDeployment Member with defined modifier. If action returns True action is taken WithMemberStatusUpdate(ctx context.Context, id string, group api.ServerGroup, action DeploymentMemberStatusUpdateFunc) error // UpdateStatus replaces the status of the deployment with the given status and // updates the resources in k8s. UpdateStatus(ctx context.Context, status api.DeploymentStatus) error // UpdateMember updates the deployment status wrt the given member. UpdateMember(ctx context.Context, member api.MemberStatus) error }
type DeploymentStatusUpdateErrFunc ¶
type DeploymentStatusUpdateErrFunc func(s *api.DeploymentStatus) (bool, error)
type DeploymentStatusUpdateFunc ¶
type DeploymentStatusUpdateFunc func(s *api.DeploymentStatus) bool
type DeploymentSyncClient ¶
type ServerGroupIterator ¶
type ServerGroupIterator interface { // ForeachServerGroupAccepted calls the given callback for all accepted server groups. // If the callback returns an error, this error is returned and no other server // groups are processed. // Groups are processed in this order: agents, single, dbservers, coordinators, syncmasters, syncworkers ForeachServerGroupAccepted(cb api.ServerGroupFunc, status *api.DeploymentStatus) error }
ServerGroupIterator provides a helper to callback on every server group of the deployment.
Click to show internal directories.
Click to hide internal directories.