Documentation ¶
Index ¶
- Constants
- func IPAddresses(iplist string) string
- func ParseIPWhitelist(ips string) ([]string, error)
- type AivenProvider
- func (ap *AivenProvider) Bind(ctx context.Context, bindData BindData) (binding domain.Binding, err error)
- func (ap *AivenProvider) Deprovision(ctx context.Context, deprovisionData DeprovisionData) (operationData string, err error)
- func (ap *AivenProvider) LastOperation(ctx context.Context, lastOperationData LastOperationData) (state domain.LastOperationState, description string, err error)
- func (ap *AivenProvider) Provision(ctx context.Context, provisionData ProvisionData, ...) (dashboardURL, operationData string, err error)
- func (ap *AivenProvider) Unbind(ctx context.Context, unbindData UnbindData) (err error)
- func (ap *AivenProvider) Update(ctx context.Context, updateData UpdateData, details domain.UpdateDetails) (operationData string, err error)
- type AivenServiceCommonConfig
- type AivenServiceElasticsearchConfig
- type AivenServiceInfluxDBConfig
- type BindData
- type Catalog
- type CommonCredentials
- type Config
- type Credentials
- type DeprovisionData
- type InfluxDBCredentials
- type InfluxDBPrometheusBasicAuthCredentials
- type InfluxDBPrometheusCredentials
- type InfluxDBPrometheusRemoteCredentials
- type InfluxDBPrometheusRemoteReadCredentials
- type LastOperationData
- type Plan
- type PlanSpecificConfig
- type ProvisionData
- type ProvisionParameters
- type Service
- type ServiceProvider
- type UnbindData
- type UpdateData
- type UpdateParameters
Constants ¶
View Source
const AIVEN_BASE_URL string = "https://api.aiven.io"
Variables ¶
This section is empty.
Functions ¶
func IPAddresses ¶ added in v0.35.0
func ParseIPWhitelist ¶
Types ¶
type AivenProvider ¶
type AivenProvider struct { Client aiven.Client Config *Config AllowUserProvisionParameters bool AllowUserUpdateParameters bool }
func New ¶
func New(configJSON []byte) (*AivenProvider, error)
func (*AivenProvider) Deprovision ¶
func (ap *AivenProvider) Deprovision(ctx context.Context, deprovisionData DeprovisionData) (operationData string, err error)
func (*AivenProvider) LastOperation ¶
func (ap *AivenProvider) LastOperation( ctx context.Context, lastOperationData LastOperationData, ) (state domain.LastOperationState, description string, err error)
func (*AivenProvider) Provision ¶
func (ap *AivenProvider) Provision(ctx context.Context, provisionData ProvisionData, details domain.ProvisionDetails) (dashboardURL, operationData string, err error)
func (*AivenProvider) Unbind ¶
func (ap *AivenProvider) Unbind(ctx context.Context, unbindData UnbindData) (err error)
func (*AivenProvider) Update ¶
func (ap *AivenProvider) Update(ctx context.Context, updateData UpdateData, details domain.UpdateDetails) (operationData string, err error)
type AivenServiceCommonConfig ¶ added in v0.22.0
type AivenServiceCommonConfig struct{}
type AivenServiceElasticsearchConfig ¶ added in v0.22.0
type AivenServiceElasticsearchConfig struct {
ElasticsearchVersion string `json:"elasticsearch_version"`
}
type AivenServiceInfluxDBConfig ¶ added in v0.22.0
type AivenServiceInfluxDBConfig struct{}
type BindData ¶
type BindData struct { InstanceID string BindingID string Details domain.BindDetails }
type CommonCredentials ¶ added in v0.22.0
type Config ¶
type Config struct { Cloud string `json:"cloud"` ServiceNamePrefix string APIToken string Project string Catalog Catalog `json:"catalog"` }
func DecodeConfig ¶
type Credentials ¶
type Credentials struct { CommonCredentials InfluxDBCredentials }
func BuildCredentials ¶ added in v0.22.0
type DeprovisionData ¶
type DeprovisionData struct { InstanceID string Details domain.DeprovisionDetails Service domain.Service Plan domain.ServicePlan }
type InfluxDBCredentials ¶ added in v0.22.0
type InfluxDBCredentials struct { InfluxDBPrometheus *InfluxDBPrometheusCredentials `json:"prometheus,omitempty"` InfluxDBDatabase string `json:"database,omitempty"` }
type InfluxDBPrometheusBasicAuthCredentials ¶ added in v0.22.0
type InfluxDBPrometheusCredentials ¶ added in v0.22.0
type InfluxDBPrometheusCredentials struct { RemoteRead []InfluxDBPrometheusRemoteReadCredentials `json:"remote_read"` RemoteWrite []InfluxDBPrometheusRemoteCredentials `json:"remote_write"` }
type InfluxDBPrometheusRemoteCredentials ¶ added in v0.22.0
type InfluxDBPrometheusRemoteCredentials struct { URL string `json:"url"` BasicAuthCredentials InfluxDBPrometheusBasicAuthCredentials `json:"basic_auth"` }
type InfluxDBPrometheusRemoteReadCredentials ¶ added in v0.26.0
type InfluxDBPrometheusRemoteReadCredentials struct { InfluxDBPrometheusRemoteCredentials ReadRecent bool `json:"read_recent"` }
type LastOperationData ¶
type Plan ¶
type Plan struct { domain.ServicePlan PlanSpecificConfig }
type PlanSpecificConfig ¶
type PlanSpecificConfig struct { AivenPlan string `json:"aiven_plan"` AivenServiceCommonConfig AivenServiceElasticsearchConfig AivenServiceInfluxDBConfig }
type ProvisionData ¶
type ProvisionData struct { InstanceID string Details domain.ProvisionDetails Service domain.Service Plan domain.ServicePlan RawParameters json.RawMessage }
type ProvisionParameters ¶ added in v0.35.0
type ProvisionParameters struct {
UserIpFilter string `json:"ip_filter"`
}
type ServiceProvider ¶
type ServiceProvider interface { Provision(context.Context, ProvisionData, domain.ProvisionDetails) (dashboardURL, operationData string, err error) Deprovision(context.Context, DeprovisionData) (operationData string, err error) Bind(context.Context, BindData) (binding domain.Binding, err error) Unbind(context.Context, UnbindData) (err error) Update(context.Context, UpdateData, domain.UpdateDetails) (operationData string, err error) LastOperation(context.Context, LastOperationData) (state domain.LastOperationState, description string, err error) }
type UnbindData ¶
type UnbindData struct { InstanceID string BindingID string Details domain.UnbindDetails }
type UpdateData ¶
type UpdateData struct { InstanceID string Details domain.UpdateDetails Service domain.Service Plan domain.ServicePlan RawParameters json.RawMessage }
type UpdateParameters ¶ added in v0.35.0
type UpdateParameters struct {
UserIpFilter string `json:"ip_filter"`
}
Click to show internal directories.
Click to hide internal directories.