Documentation ¶
Overview ¶
Package redis provides methods and message types of the redis v1 API.
Index ¶
- Constants
- type ACLRule
- type ACLRuleSpec
- type API
- func (s *API) AddACLRules(req *AddACLRulesRequest, opts ...scw.RequestOption) (*AddACLRulesResponse, error)
- func (s *API) AddClusterSettings(req *AddClusterSettingsRequest, opts ...scw.RequestOption) (*ClusterSettingsResponse, error)
- func (s *API) AddEndpoints(req *AddEndpointsRequest, opts ...scw.RequestOption) (*AddEndpointsResponse, error)
- func (s *API) CreateCluster(req *CreateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) DeleteACLRule(req *DeleteACLRuleRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) DeleteCluster(req *DeleteClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) DeleteClusterSetting(req *DeleteClusterSettingRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) DeleteEndpoint(req *DeleteEndpointRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) GetACLRule(req *GetACLRuleRequest, opts ...scw.RequestOption) (*ACLRule, error)
- func (s *API) GetCluster(req *GetClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) GetClusterCertificate(req *GetClusterCertificateRequest, opts ...scw.RequestOption) (*scw.File, error)
- func (s *API) GetClusterMetrics(req *GetClusterMetricsRequest, opts ...scw.RequestOption) (*ClusterMetricsResponse, error)
- func (s *API) GetEndpoint(req *GetEndpointRequest, opts ...scw.RequestOption) (*Endpoint, error)
- func (s *API) ListClusterVersions(req *ListClusterVersionsRequest, opts ...scw.RequestOption) (*ListClusterVersionsResponse, error)
- func (s *API) ListClusters(req *ListClustersRequest, opts ...scw.RequestOption) (*ListClustersResponse, error)
- func (s *API) ListNodeTypes(req *ListNodeTypesRequest, opts ...scw.RequestOption) (*ListNodeTypesResponse, error)
- func (s *API) MigrateCluster(req *MigrateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) RenewClusterCertificate(req *RenewClusterCertificateRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) SetACLRules(req *SetACLRulesRequest, opts ...scw.RequestOption) (*SetACLRulesResponse, error)
- func (s *API) SetClusterSettings(req *SetClusterSettingsRequest, opts ...scw.RequestOption) (*ClusterSettingsResponse, error)
- func (s *API) SetEndpoints(req *SetEndpointsRequest, opts ...scw.RequestOption) (*SetEndpointsResponse, error)
- func (s *API) UpdateCluster(req *UpdateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) UpdateEndpoint(req *UpdateEndpointRequest, opts ...scw.RequestOption) (*Endpoint, error)
- func (s *API) WaitForCluster(req *WaitForClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
- func (s *API) Zones() []scw.Zone
- type AddACLRulesRequest
- type AddACLRulesResponse
- type AddClusterSettingsRequest
- type AddEndpointsRequest
- type AddEndpointsResponse
- type AvailableClusterSetting
- type AvailableClusterSettingPropertyType
- type Cluster
- type ClusterMetricsResponse
- type ClusterSetting
- type ClusterSettingsResponse
- type ClusterStatus
- type ClusterVersion
- type CreateClusterRequest
- type DeleteACLRuleRequest
- type DeleteClusterRequest
- type DeleteClusterSettingRequest
- type DeleteEndpointRequest
- type Endpoint
- type EndpointSpec
- type EndpointSpecPrivateNetworkSpec
- type EndpointSpecPublicNetworkSpec
- type GetACLRuleRequest
- type GetClusterCertificateRequest
- type GetClusterMetricsRequest
- type GetClusterRequest
- type GetEndpointRequest
- type ListClusterVersionsRequest
- type ListClusterVersionsResponse
- type ListClustersRequest
- type ListClustersRequestOrderBy
- type ListClustersResponse
- type ListNodeTypesRequest
- type ListNodeTypesResponse
- type MigrateClusterRequest
- type NodeType
- type NodeTypeStock
- type PrivateNetwork
- type PublicNetwork
- type RenewClusterCertificateRequest
- type SetACLRulesRequest
- type SetACLRulesResponse
- type SetClusterSettingsRequest
- type SetEndpointsRequest
- type SetEndpointsResponse
- type UpdateClusterRequest
- type UpdateEndpointRequest
- type WaitForClusterRequest
Constants ¶
const ( AvailableClusterSettingPropertyTypeUNKNOWN = AvailableClusterSettingPropertyType("UNKNOWN") AvailableClusterSettingPropertyTypeBOOLEAN = AvailableClusterSettingPropertyType("BOOLEAN") AvailableClusterSettingPropertyTypeINT = AvailableClusterSettingPropertyType("INT") AvailableClusterSettingPropertyTypeSTRING = AvailableClusterSettingPropertyType("STRING") )
const ( ClusterStatusUnknown = ClusterStatus("unknown") ClusterStatusReady = ClusterStatus("ready") ClusterStatusProvisioning = ClusterStatus("provisioning") ClusterStatusConfiguring = ClusterStatus("configuring") ClusterStatusDeleting = ClusterStatus("deleting") ClusterStatusError = ClusterStatus("error") ClusterStatusAutohealing = ClusterStatus("autohealing") ClusterStatusLocked = ClusterStatus("locked") ClusterStatusSuspended = ClusterStatus("suspended") ClusterStatusInitializing = ClusterStatus("initializing") )
const ( ListClustersRequestOrderByCreatedAtAsc = ListClustersRequestOrderBy("created_at_asc") ListClustersRequestOrderByCreatedAtDesc = ListClustersRequestOrderBy("created_at_desc") ListClustersRequestOrderByNameAsc = ListClustersRequestOrderBy("name_asc") ListClustersRequestOrderByNameDesc = ListClustersRequestOrderBy("name_desc") )
const ( NodeTypeStockUnknown = NodeTypeStock("unknown") NodeTypeStockLowStock = NodeTypeStock("low_stock") NodeTypeStockOutOfStock = NodeTypeStock("out_of_stock") NodeTypeStockAvailable = NodeTypeStock("available") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ACLRule ¶
type ACLRule struct { // ID: ID of the rule. ID string `json:"id"` // IPCidr: iPv4 network address of the rule. IPCidr *scw.IPNet `json:"ip_cidr"` // Description: description of the rule. Description *string `json:"description"` }
ACLRule: acl rule.
type ACLRuleSpec ¶
type ACLRuleSpec struct { // IPCidr: iPv4 network address of the rule. IPCidr scw.IPNet `json:"ip_cidr"` // Description: description of the rule. Description string `json:"description"` }
ACLRuleSpec: acl rule spec.
type API ¶
type API struct {
// contains filtered or unexported fields
}
API: managed Database for Redis™ API.
func (*API) AddACLRules ¶
func (s *API) AddACLRules(req *AddACLRulesRequest, opts ...scw.RequestOption) (*AddACLRulesResponse, error)
AddACLRules: add ACL rules for a cluster. Add an additional ACL rule to a Redis™ Database Instance (Redis™ cluster).
func (*API) AddClusterSettings ¶
func (s *API) AddClusterSettings(req *AddClusterSettingsRequest, opts ...scw.RequestOption) (*ClusterSettingsResponse, error)
AddClusterSettings: add advanced settings. Add an advanced setting to a Redis™ Database Instance (Redis™ cluster). You must set the `name` and the `value` of each setting.
func (*API) AddEndpoints ¶
func (s *API) AddEndpoints(req *AddEndpointsRequest, opts ...scw.RequestOption) (*AddEndpointsResponse, error)
AddEndpoints: add endpoints for a cluster. Add a new endpoint for a Redis™ Database Instance (Redis™ cluster). You can add `private_network` or `public_network` specifications to the body of the request.
func (*API) CreateCluster ¶
func (s *API) CreateCluster(req *CreateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
CreateCluster: create a Redis™ Database Instance. Create a new Redis™ Database Instance (Redis™ cluster). You must set the `zone`, `project_id`, `version`, `node_type`, `user_name` and `password` parameters. Optionally you can define `acl_rules`, `endpoints`, `tls_enabled` and `cluster_settings`.
func (*API) DeleteACLRule ¶
func (s *API) DeleteACLRule(req *DeleteACLRuleRequest, opts ...scw.RequestOption) (*Cluster, error)
DeleteACLRule: delete an ACL rule for a cluster. Delete an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule you want to delete in your request.
func (*API) DeleteCluster ¶
func (s *API) DeleteCluster(req *DeleteClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
DeleteCluster: delete a Redis™ Database Instance. Delete a Redis™ Database Instance (Redis™ cluster), specified by the `region` and `cluster_id` parameters. Deleting a Database Instance is permanent, and cannot be undone. Note that upon deletion all your data will be lost.
func (*API) DeleteClusterSetting ¶
func (s *API) DeleteClusterSetting(req *DeleteClusterSettingRequest, opts ...scw.RequestOption) (*Cluster, error)
DeleteClusterSetting: delete advanced setting. Delete an advanced setting in a Redis™ Database Instance (Redis™ cluster). You must specify the names of the settings you want to delete in the request body.
func (*API) DeleteEndpoint ¶
func (s *API) DeleteEndpoint(req *DeleteEndpointRequest, opts ...scw.RequestOption) (*Cluster, error)
DeleteEndpoint: delete an endpoint for a cluster. Delete the endpoint of a Redis™ Database Instance (Redis™ cluster). You must specify the `region` and `endpoint_id` parameters of the endpoint you want to delete. Note that might need to update any environment configurations that point to the deleted endpoint.
func (*API) GetACLRule ¶
func (s *API) GetACLRule(req *GetACLRuleRequest, opts ...scw.RequestOption) (*ACLRule, error)
GetACLRule: get an ACL rule. Retrieve information about an ACL rule of a Redis™ Database Instance (Redis™ cluster). You must specify the `acl_id` of the rule in your request.
func (*API) GetCluster ¶
func (s *API) GetCluster(req *GetClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
GetCluster: get a Redis™ Database Instance. Retrieve information about a Redis™ Database Instance (Redis™ cluster). Specify the `cluster_id` and `region` in your request to get information such as `id`, `status`, `version`, `tls_enabled`, `cluster_settings`, `upgradable_versions` and `endpoints` about your cluster in the response.
func (*API) GetClusterCertificate ¶
func (s *API) GetClusterCertificate(req *GetClusterCertificateRequest, opts ...scw.RequestOption) (*scw.File, error)
GetClusterCertificate: get the TLS certificate of a cluster. Retrieve information about the TLS certificate of a Redis™ Database Instance (Redis™ cluster). Details like name and content are returned in the response.
func (*API) GetClusterMetrics ¶
func (s *API) GetClusterMetrics(req *GetClusterMetricsRequest, opts ...scw.RequestOption) (*ClusterMetricsResponse, error)
GetClusterMetrics: get metrics of a Redis™ Database Instance. Retrieve the metrics of a Redis™ Database Instance (Redis™ cluster). You can define the period from which to retrieve metrics by specifying the `start_date` and `end_date`.
func (*API) GetEndpoint ¶
func (s *API) GetEndpoint(req *GetEndpointRequest, opts ...scw.RequestOption) (*Endpoint, error)
GetEndpoint: get an endpoint. Retrieve information about a Redis™ Database Instance (Redis™ cluster) endpoint. Full details about the endpoint, like `ips`, `port`, `private_network` and `public_network` specifications are returned in the response.
func (*API) ListClusterVersions ¶
func (s *API) ListClusterVersions(req *ListClusterVersionsRequest, opts ...scw.RequestOption) (*ListClusterVersionsResponse, error)
ListClusterVersions: list available Redis™ versions. List the Redis™ database engine versions available. You can define additional parameters for your query, such as `include_disabled`, `include_beta`, `include_deprecated` and `version`.
func (*API) ListClusters ¶
func (s *API) ListClusters(req *ListClustersRequest, opts ...scw.RequestOption) (*ListClustersResponse, error)
ListClusters: list Redis™ Database Instances. List all Redis™ Database Instances (Redis™ cluster) in the specified zone. By default, the Database Instances returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. You can define additional parameters for your query, such as `tags`, `name`, `organization_id` and `version`.
func (*API) ListNodeTypes ¶
func (s *API) ListNodeTypes(req *ListNodeTypesRequest, opts ...scw.RequestOption) (*ListNodeTypesResponse, error)
ListNodeTypes: list available node types. List all available node types. By default, the node types returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
func (*API) MigrateCluster ¶
func (s *API) MigrateCluster(req *MigrateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
MigrateCluster: scale up a Redis™ Database Instance. Upgrade your standalone Redis™ Database Instance node, either by upgrading to a bigger node type (vertical scaling) or by adding more nodes to your Database Instance to increase your number of endpoints and distribute cache (horizontal scaling). Note that scaling horizontally your Redis™ Database Instance will not renew its TLS certificate. In order to refresh the TLS certificate, you must use the Renew TLS certificate endpoint.
func (*API) RenewClusterCertificate ¶
func (s *API) RenewClusterCertificate(req *RenewClusterCertificateRequest, opts ...scw.RequestOption) (*Cluster, error)
RenewClusterCertificate: renew the TLS certificate of a cluster. Renew a TLS certificate for a Redis™ Database Instance (Redis™ cluster). Renewing a certificate means that you will not be able to connect to your Database Instance using the previous certificate. You will also need to download and update the new certificate for all database clients.
func (*API) SetACLRules ¶
func (s *API) SetACLRules(req *SetACLRulesRequest, opts ...scw.RequestOption) (*SetACLRulesResponse, error)
SetACLRules: set ACL rules for a cluster. Replace all the ACL rules of a Redis™ Database Instance (Redis™ cluster).
func (*API) SetClusterSettings ¶
func (s *API) SetClusterSettings(req *SetClusterSettingsRequest, opts ...scw.RequestOption) (*ClusterSettingsResponse, error)
SetClusterSettings: set advanced settings. Update an advanced setting for a Redis™ Database Instance (Redis™ cluster). Settings added upon database engine initalization can only be defined once, and cannot, therefore, be updated.
func (*API) SetEndpoints ¶
func (s *API) SetEndpoints(req *SetEndpointsRequest, opts ...scw.RequestOption) (*SetEndpointsResponse, error)
SetEndpoints: set endpoints for a cluster. Update an endpoint for a Redis™ Database Instance (Redis™ cluster). You must specify the `cluster_id` and the `endpoints` parameters in your request.
func (*API) UpdateCluster ¶
func (s *API) UpdateCluster(req *UpdateClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
UpdateCluster: update a Redis™ Database Instance. Update the parameters of a Redis™ Database Instance (Redis™ cluster), including `name`, `tags`, `user_name` and `password`.
func (*API) UpdateEndpoint ¶
func (s *API) UpdateEndpoint(req *UpdateEndpointRequest, opts ...scw.RequestOption) (*Endpoint, error)
func (*API) WaitForCluster ¶
func (s *API) WaitForCluster(req *WaitForClusterRequest, opts ...scw.RequestOption) (*Cluster, error)
WaitForCluster waits for the cluster to be in a "terminal state" before returning. This function can be used to wait for a cluster to be ready for example.
type AddACLRulesRequest ¶
type AddACLRulesRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance you want to add ACL rules to. ClusterID string `json:"-"` // ACLRules: aCLs rules to add to the cluster. ACLRules []*ACLRuleSpec `json:"acl_rules"` }
type AddACLRulesResponse ¶
type AddACLRulesResponse struct { // ACLRules: ACL Rules enabled for the Database Instance. ACLRules []*ACLRule `json:"acl_rules"` // TotalCount: total count of ACL rules of the Database Instance. TotalCount uint32 `json:"total_count"` }
AddACLRulesResponse: add acl rules response.
type AddClusterSettingsRequest ¶
type AddClusterSettingsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance you want to add settings to. ClusterID string `json:"-"` // Settings: settings to add to the cluster. Settings []*ClusterSetting `json:"settings"` }
type AddEndpointsRequest ¶
type AddEndpointsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance you want to add endpoints to. ClusterID string `json:"-"` // Endpoints: endpoints to add to the Database Instance. Endpoints []*EndpointSpec `json:"endpoints"` }
type AddEndpointsResponse ¶
type AddEndpointsResponse struct { // Endpoints: endpoints defined on the Database Instance. Endpoints []*Endpoint `json:"endpoints"` // TotalCount: total count of endpoints of the Database Instance. TotalCount uint32 `json:"total_count"` }
AddEndpointsResponse: add endpoints response.
type AvailableClusterSetting ¶
type AvailableClusterSetting struct { // Name: name of the setting. Name string `json:"name"` // DefaultValue: default value of the setting. DefaultValue *string `json:"default_value"` // Type: type of setting. // Default value: UNKNOWN Type AvailableClusterSettingPropertyType `json:"type"` // Description: description of the setting. Description string `json:"description"` // MaxValue: optional maximum value of the setting. MaxValue *int64 `json:"max_value"` // MinValue: optional minimum value of the setting. MinValue *int64 `json:"min_value"` // Regex: optional validation rule of the setting. Regex *string `json:"regex"` // Deprecated: whether or not the setting is deprecated. Deprecated bool `json:"deprecated"` }
AvailableClusterSetting: available cluster setting.
type AvailableClusterSettingPropertyType ¶
type AvailableClusterSettingPropertyType string
func (AvailableClusterSettingPropertyType) MarshalJSON ¶
func (enum AvailableClusterSettingPropertyType) MarshalJSON() ([]byte, error)
func (AvailableClusterSettingPropertyType) String ¶
func (enum AvailableClusterSettingPropertyType) String() string
func (*AvailableClusterSettingPropertyType) UnmarshalJSON ¶
func (enum *AvailableClusterSettingPropertyType) UnmarshalJSON(data []byte) error
type Cluster ¶
type Cluster struct { // ID: UUID of the Database Instance. ID string `json:"id"` // Name: name of the Database Instance. Name string `json:"name"` // ProjectID: project ID the Database Instance belongs to. ProjectID string `json:"project_id"` // Status: status of the Database Instance. // Default value: unknown Status ClusterStatus `json:"status"` // Version: redis™ engine version of the Database Instance. Version string `json:"version"` // Endpoints: list of Database Instance endpoints. Endpoints []*Endpoint `json:"endpoints"` // Tags: list of tags applied to the Database Instance. Tags []string `json:"tags"` // NodeType: node type of the Database Instance. NodeType string `json:"node_type"` // CreatedAt: creation date (Format ISO 8601). CreatedAt *time.Time `json:"created_at"` // UpdatedAt: update date (Format ISO 8601). UpdatedAt *time.Time `json:"updated_at"` // TLSEnabled: whether or not TLS is enabled. TLSEnabled bool `json:"tls_enabled"` // ClusterSettings: list of Database Instance settings. ClusterSettings []*ClusterSetting `json:"cluster_settings"` // ACLRules: list of ACL rules. ACLRules []*ACLRule `json:"acl_rules"` // ClusterSize: number of nodes of the Database Instance cluster. ClusterSize uint32 `json:"cluster_size"` // Zone: zone of the Database Instance. Zone scw.Zone `json:"zone"` // UserName: name of the user associated to the cluster. UserName string `json:"user_name"` // UpgradableVersions: list of engine versions the Database Instance can upgrade to. UpgradableVersions []string `json:"upgradable_versions"` }
Cluster: cluster.
type ClusterMetricsResponse ¶
type ClusterMetricsResponse struct { // Timeseries: time series of metrics of a given cluster. Timeseries []*scw.TimeSeries `json:"timeseries"` }
ClusterMetricsResponse: cluster metrics response.
type ClusterSetting ¶
type ClusterSetting struct { // Value: value of the setting. Value string `json:"value"` // Name: name of the setting. Name string `json:"name"` }
ClusterSetting: cluster setting.
type ClusterSettingsResponse ¶
type ClusterSettingsResponse struct { // Settings: settings configured for a given Database Instance. Settings []*ClusterSetting `json:"settings"` }
ClusterSettingsResponse: cluster settings response.
type ClusterStatus ¶
type ClusterStatus string
func (ClusterStatus) MarshalJSON ¶
func (enum ClusterStatus) MarshalJSON() ([]byte, error)
func (ClusterStatus) String ¶
func (enum ClusterStatus) String() string
func (*ClusterStatus) UnmarshalJSON ¶
func (enum *ClusterStatus) UnmarshalJSON(data []byte) error
type ClusterVersion ¶
type ClusterVersion struct { // Version: redis™ engine version. Version string `json:"version"` // EndOfLifeAt: date of End of Life. EndOfLifeAt *time.Time `json:"end_of_life_at"` // AvailableSettings: cluster settings available to be updated. AvailableSettings []*AvailableClusterSetting `json:"available_settings"` // LogoURL: redis™ logo url. LogoURL string `json:"logo_url"` // Zone: zone of the Redis™ Database Instance. Zone scw.Zone `json:"zone"` }
ClusterVersion: cluster version.
type CreateClusterRequest ¶
type CreateClusterRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ProjectID: the Project ID in which to create the Database Instance. ProjectID string `json:"project_id"` // Name: name of the Database Instance. Name string `json:"name"` // Version: redis™ engine version of the Database Instance. Version string `json:"version"` // Tags: tags to apply to the Database Instance. Tags []string `json:"tags"` // NodeType: type of node to use for the Database Instance. NodeType string `json:"node_type"` // UserName: name of the user created upon Database Instance creation. UserName string `json:"user_name"` // Password: password of the user. Password string `json:"password"` // ClusterSize: number of nodes in the Redis™ cluster. ClusterSize *int32 `json:"cluster_size"` // ACLRules: list of ACLRuleSpec used to secure your publicly exposed cluster. ACLRules []*ACLRuleSpec `json:"acl_rules"` // Endpoints: zero or multiple EndpointSpec used to expose your cluster publicly and inside Private Networks. // Zero or multiple EndpointSpec used to expose your cluster publicly and inside private networks. If no EndpoindSpec is given the cluster will be publicly exposed by default. Endpoints []*EndpointSpec `json:"endpoints"` // TLSEnabled: whether or not TLS is enabled. TLSEnabled bool `json:"tls_enabled"` // ClusterSettings: list of advanced settings to be set upon Database Instance initialization. ClusterSettings []*ClusterSetting `json:"cluster_settings"` }
type DeleteACLRuleRequest ¶
type DeleteClusterRequest ¶
type DeleteClusterSettingRequest ¶
type DeleteClusterSettingRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance where the settings must be set. ClusterID string `json:"-"` // SettingName: setting name to delete. SettingName string `json:"-"` }
type DeleteEndpointRequest ¶
type Endpoint ¶
type Endpoint struct { // Port: TCP port of the endpoint. Port uint32 `json:"port"` // PrivateNetwork: private Network details. // Precisely one of PrivateNetwork, PublicNetwork must be set. PrivateNetwork *PrivateNetwork `json:"private_network,omitempty"` // PublicNetwork: public network details. // Precisely one of PrivateNetwork, PublicNetwork must be set. PublicNetwork *PublicNetwork `json:"public_network,omitempty"` // IPs: list of IPv4 addresses of the endpoint. IPs []net.IP `json:"ips"` // ID: UUID of the endpoint. ID string `json:"id"` }
Endpoint: endpoint.
type EndpointSpec ¶
type EndpointSpec struct { // PrivateNetwork: private Network specification details. // Precisely one of PrivateNetwork, PublicNetwork must be set. PrivateNetwork *EndpointSpecPrivateNetworkSpec `json:"private_network,omitempty"` // PublicNetwork: public network specification details. // Precisely one of PrivateNetwork, PublicNetwork must be set. PublicNetwork *EndpointSpecPublicNetworkSpec `json:"public_network,omitempty"` }
EndpointSpec: endpoint spec.
type EndpointSpecPrivateNetworkSpec ¶
type EndpointSpecPrivateNetworkSpec struct { // ID: UUID of the Private Network to connect to the Database Instance. ID string `json:"id"` // ServiceIPs: endpoint IPv4 address with a CIDR notation. You must provide at least one IPv4 per node. ServiceIPs []scw.IPNet `json:"service_ips"` }
EndpointSpecPrivateNetworkSpec: endpoint spec. private network spec.
type EndpointSpecPublicNetworkSpec ¶
type EndpointSpecPublicNetworkSpec struct { }
EndpointSpecPublicNetworkSpec: endpoint spec. public network spec.
type GetACLRuleRequest ¶
type GetClusterMetricsRequest ¶
type GetClusterMetricsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the cluster. ClusterID string `json:"-"` // StartAt: start date. StartAt *time.Time `json:"-"` // EndAt: end date. EndAt *time.Time `json:"-"` // MetricName: name of the metric to gather. MetricName *string `json:"-"` }
type GetClusterRequest ¶
type GetEndpointRequest ¶
type ListClusterVersionsRequest ¶
type ListClusterVersionsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // IncludeDisabled: whether or not to include disabled Redis™ engine versions. IncludeDisabled bool `json:"-"` // IncludeBeta: whether or not to include beta Redis™ engine versions. IncludeBeta bool `json:"-"` // IncludeDeprecated: whether or not to include deprecated Redis™ engine versions. IncludeDeprecated bool `json:"-"` // Version: list Redis™ engine versions that match a given name pattern. Version *string `json:"-"` Page *int32 `json:"-"` PageSize *uint32 `json:"-"` }
type ListClusterVersionsResponse ¶
type ListClusterVersionsResponse struct { // Versions: list of available Redis™ engine versions. Versions []*ClusterVersion `json:"versions"` // TotalCount: total count of available Redis™ engine versions. TotalCount uint32 `json:"total_count"` }
ListClusterVersionsResponse: list cluster versions response.
func (*ListClusterVersionsResponse) UnsafeAppend ¶
func (r *ListClusterVersionsResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListClusterVersionsResponse) UnsafeGetTotalCount ¶
func (r *ListClusterVersionsResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListClustersRequest ¶
type ListClustersRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // Tags: filter by Database Instance tags. Tags []string `json:"-"` // Name: filter by Database Instance names. Name *string `json:"-"` // OrderBy: criteria to use when ordering the list. // Default value: created_at_asc OrderBy ListClustersRequestOrderBy `json:"-"` // ProjectID: filter by Project ID. ProjectID *string `json:"-"` // OrganizationID: filter by Organization ID. OrganizationID *string `json:"-"` // Version: filter by Redis™ engine version. Version *string `json:"-"` Page *int32 `json:"-"` PageSize *uint32 `json:"-"` }
type ListClustersRequestOrderBy ¶
type ListClustersRequestOrderBy string
func (ListClustersRequestOrderBy) MarshalJSON ¶
func (enum ListClustersRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListClustersRequestOrderBy) String ¶
func (enum ListClustersRequestOrderBy) String() string
func (*ListClustersRequestOrderBy) UnmarshalJSON ¶
func (enum *ListClustersRequestOrderBy) UnmarshalJSON(data []byte) error
type ListClustersResponse ¶
type ListClustersResponse struct { // Clusters: list all Database Instances. Clusters []*Cluster `json:"clusters"` // TotalCount: total count of Database Instances. TotalCount uint32 `json:"total_count"` }
ListClustersResponse: list clusters response.
func (*ListClustersResponse) UnsafeAppend ¶
func (r *ListClustersResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListClustersResponse) UnsafeGetTotalCount ¶
func (r *ListClustersResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListNodeTypesRequest ¶
type ListNodeTypesResponse ¶
type ListNodeTypesResponse struct { // NodeTypes: types of node. NodeTypes []*NodeType `json:"node_types"` // TotalCount: total count of node types available. TotalCount uint32 `json:"total_count"` }
ListNodeTypesResponse: list node types response.
func (*ListNodeTypesResponse) UnsafeAppend ¶
func (r *ListNodeTypesResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListNodeTypesResponse) UnsafeGetTotalCount ¶
func (r *ListNodeTypesResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type MigrateClusterRequest ¶
type MigrateClusterRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance to update. ClusterID string `json:"-"` // Version: redis™ engine version of the Database Instance. // Precisely one of ClusterSize, NodeType, Version must be set. Version *string `json:"version,omitempty"` // NodeType: type of node to use for the Database Instance. // Precisely one of ClusterSize, NodeType, Version must be set. NodeType *string `json:"node_type,omitempty"` // ClusterSize: number of nodes for the Database Instance. // Precisely one of ClusterSize, NodeType, Version must be set. ClusterSize *uint32 `json:"cluster_size,omitempty"` }
type NodeType ¶
type NodeType struct { // Name: node type name. Name string `json:"name"` // StockStatus: current stock status of the node type. // Default value: unknown StockStatus NodeTypeStock `json:"stock_status"` // Description: current specifications of the offer. Description string `json:"description"` // Vcpus: number of virtual CPUs. Vcpus uint32 `json:"vcpus"` // Memory: quantity of RAM. Memory scw.Size `json:"memory"` // Disabled: the node type is currently disabled. Disabled bool `json:"disabled"` // Beta: the node type is currently in beta. Beta bool `json:"beta"` // Zone: zone of the node type. Zone scw.Zone `json:"zone"` }
NodeType: node type.
type NodeTypeStock ¶
type NodeTypeStock string
func (NodeTypeStock) MarshalJSON ¶
func (enum NodeTypeStock) MarshalJSON() ([]byte, error)
func (NodeTypeStock) String ¶
func (enum NodeTypeStock) String() string
func (*NodeTypeStock) UnmarshalJSON ¶
func (enum *NodeTypeStock) UnmarshalJSON(data []byte) error
type PrivateNetwork ¶
type PrivateNetwork struct { // ID: UUID of the Private Network. ID string `json:"id"` // ServiceIPs: list of IPv4 CIDR notation addresses of the endpoint. ServiceIPs []scw.IPNet `json:"service_ips"` // Zone: zone of the Private Network. Zone scw.Zone `json:"zone"` }
PrivateNetwork: private network.
type PublicNetwork ¶
type PublicNetwork struct { }
type SetACLRulesRequest ¶
type SetACLRulesRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance where the ACL rules have to be set. ClusterID string `json:"-"` // ACLRules: aCLs rules to define for the cluster. ACLRules []*ACLRuleSpec `json:"acl_rules"` }
type SetACLRulesResponse ¶
type SetACLRulesResponse struct { // ACLRules: ACL Rules enabled for the Database Instance. ACLRules []*ACLRule `json:"acl_rules"` }
SetACLRulesResponse: set acl rules response.
type SetClusterSettingsRequest ¶
type SetClusterSettingsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance where the settings must be set. ClusterID string `json:"-"` // Settings: settings to define for the Database Instance. Settings []*ClusterSetting `json:"settings"` }
type SetEndpointsRequest ¶
type SetEndpointsRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance where the endpoints have to be set. ClusterID string `json:"-"` // Endpoints: endpoints to define for the Database Instance. Endpoints []*EndpointSpec `json:"endpoints"` }
type SetEndpointsResponse ¶
type SetEndpointsResponse struct { // Endpoints: endpoints defined on the Database Instance. Endpoints []*Endpoint `json:"endpoints"` }
SetEndpointsResponse: set endpoints response.
type UpdateClusterRequest ¶
type UpdateClusterRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` // ClusterID: UUID of the Database Instance to update. ClusterID string `json:"-"` // Name: name of the Database Instance. Name *string `json:"name"` // Tags: database Instance tags. Tags *[]string `json:"tags"` // UserName: name of the Database Instance user. UserName *string `json:"user_name"` // Password: password of the Database Instance user. Password *string `json:"password"` }
type UpdateEndpointRequest ¶
type UpdateEndpointRequest struct { // Zone: zone to target. If none is passed will use default zone from the config. Zone scw.Zone `json:"-"` EndpointID string `json:"-"` // Precisely one of PrivateNetwork, PublicNetwork must be set. PrivateNetwork *EndpointSpecPrivateNetworkSpec `json:"private_network,omitempty"` // Precisely one of PrivateNetwork, PublicNetwork must be set. PublicNetwork *EndpointSpecPublicNetworkSpec `json:"public_network,omitempty"` }