provider

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 21, 2024 License: MPL-2.0 Imports: 50 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultAPIURL = "https://portal.biganimal.com/api/v3"

Variables

This section is empty.

Functions

func BackupRetentionPeriodValidator added in v0.6.1

func BackupRetentionPeriodValidator() validator.String

Backup Retention Period should be a value between one of the * 1d and 180d * 1w and 25w * 1m and 6m

func NewAnalyticsClusterDataSource added in v0.11.0

func NewAnalyticsClusterDataSource() datasource.DataSource

func NewAnalyticsClusterResource added in v0.11.0

func NewAnalyticsClusterResource() resource.Resource

func NewCSPTagDataSource added in v1.1.0

func NewCSPTagDataSource() datasource.DataSource

func NewCSPTagResource added in v1.1.0

func NewCSPTagResource() resource.Resource

func NewClusterDataSource added in v0.6.0

func NewClusterDataSource() datasource.DataSource

func NewClusterResource

func NewClusterResource() resource.Resource

func NewFAReplicaDataSource added in v1.0.0

func NewFAReplicaDataSource() datasource.DataSource

func NewFAReplicaResource added in v0.4.0

func NewFAReplicaResource() resource.Resource

func NewFrameworkProvider added in v0.5.0

func NewFrameworkProvider(version string) func() provider.Provider

func NewPgdDataSource added in v0.5.0

func NewPgdDataSource() datasource.DataSource

func NewPgdResource added in v0.5.0

func NewPgdResource() resource.Resource

func NewProjectResource added in v0.3.0

func NewProjectResource() resource.Resource

func NewProjectsDataSource added in v0.5.0

func NewProjectsDataSource() datasource.DataSource

func NewRegionResource

func NewRegionResource() resource.Resource

func NewRegionsDataSource added in v0.5.0

func NewRegionsDataSource() datasource.DataSource

NewRegionsDataSource is a helper function to simplify the provider implementation.

func NewSDKProvider added in v0.5.0

func NewSDKProvider(version string) func() *sdkschema.Provider

func NewTagDataSource added in v1.1.0

func NewTagDataSource() datasource.DataSource

func NewTagResource added in v1.1.0

func NewTagResource() resource.Resource

func PgdSchema added in v0.6.1

func PgdSchema(ctx context.Context) schema.Schema

func ProjectIdValidator added in v0.5.0

func ProjectIdValidator() validator.String

Project_id should start with prj_ and then 16 alphanumeric characters.

func StringSliceToList added in v0.6.0

func StringSliceToList(items []string) types.List

func StringSliceToSet added in v0.6.0

func StringSliceToSet(items *[]string) types.Set

func TdeActionInfo added in v1.0.0

func TdeActionInfo(provider string) string

Types

type AWSConnectionData added in v0.4.0

type AWSConnectionData struct{}

func NewAWSConnectionData added in v0.4.0

func NewAWSConnectionData() *AWSConnectionData

func (*AWSConnectionData) Read added in v0.4.0

func (d *AWSConnectionData) Read(ctx context.Context, data *schema.ResourceData, meta interface{}) diag.Diagnostics

func (*AWSConnectionData) Schema added in v0.4.0

func (d *AWSConnectionData) Schema() *schema.Resource

type AWSConnectionResource added in v0.4.0

type AWSConnectionResource struct{}

func NewAWSConnectionResource added in v0.4.0

func NewAWSConnectionResource() *AWSConnectionResource

func (*AWSConnectionResource) Create added in v0.4.0

func (*AWSConnectionResource) Delete added in v0.4.0

func (a *AWSConnectionResource) Delete(ctx context.Context, data *schema.ResourceData, i interface{}) diag.Diagnostics

func (*AWSConnectionResource) Read added in v0.4.0

func (*AWSConnectionResource) Schema added in v0.4.0

func (a *AWSConnectionResource) Schema() *schema.Resource

func (*AWSConnectionResource) Update added in v0.4.0

type AllowedIpRangesResourceModel added in v0.6.0

type AllowedIpRangesResourceModel struct {
	CidrBlock   string       `tfsdk:"cidr_block"`
	Description types.String `tfsdk:"description"`
}

type AzureConnectionResource added in v0.4.0

type AzureConnectionResource struct{}

func NewAzureConnectionResource added in v0.4.0

func NewAzureConnectionResource() *AzureConnectionResource

func (*AzureConnectionResource) Create added in v0.4.0

func (*AzureConnectionResource) Delete added in v0.4.0

func (a *AzureConnectionResource) Delete(ctx context.Context, data *schema.ResourceData, i interface{}) diag.Diagnostics

func (*AzureConnectionResource) Read added in v0.4.0

func (a *AzureConnectionResource) Read(ctx context.Context, data *schema.ResourceData, i interface{}) diag.Diagnostics

func (*AzureConnectionResource) Schema added in v0.4.0

func (*AzureConnectionResource) Update added in v0.4.0

func (a *AzureConnectionResource) Update(ctx context.Context, data *schema.ResourceData, i interface{}) diag.Diagnostics

type CSPTag added in v1.1.0

type CSPTag struct {
	CSPTagID    types.String `tfsdk:"csp_tag_id"`
	CSPTagKey   types.String `tfsdk:"csp_tag_key"`
	CSPTagValue types.String `tfsdk:"csp_tag_value"`
	Status      types.String `tfsdk:"status"`
}

type CSPTagResourceModel added in v1.1.0

type CSPTagResourceModel struct {
	ID              types.String `tfsdk:"id"`
	ProjectID       types.String `tfsdk:"project_id"`
	CloudProviderID types.String `tfsdk:"cloud_provider_id"`
	AddTags         []addTag     `tfsdk:"add_tags"`
	DeleteTags      types.List   `tfsdk:"delete_tags"`
	EditTags        []CSPTag     `tfsdk:"edit_tags"`
	CSPTags         types.List   `tfsdk:"csp_tags"`

	Timeouts timeouts.Value `tfsdk:"timeouts"`
}

type ClusterArchitectureResourceModel added in v0.6.0

type ClusterArchitectureResourceModel struct {
	Id    string       `tfsdk:"id"`
	Name  types.String `tfsdk:"name"`
	Nodes int          `tfsdk:"nodes"`
}

type ClusterResourceModel added in v0.6.0

type ClusterResourceModel struct {
	ID                              types.String                       `tfsdk:"id"`
	CspAuth                         types.Bool                         `tfsdk:"csp_auth"`
	Region                          types.String                       `tfsdk:"region"`
	InstanceType                    types.String                       `tfsdk:"instance_type"`
	ReadOnlyConnections             types.Bool                         `tfsdk:"read_only_connections"`
	ResizingPvc                     types.List                         `tfsdk:"resizing_pvc"`
	MetricsUrl                      *string                            `tfsdk:"metrics_url"`
	ClusterId                       *string                            `tfsdk:"cluster_id"`
	Phase                           types.String                       `tfsdk:"phase"`
	ClusterArchitecture             *ClusterArchitectureResourceModel  `tfsdk:"cluster_architecture"`
	ConnectionUri                   types.String                       `tfsdk:"connection_uri"`
	ClusterName                     types.String                       `tfsdk:"cluster_name"`
	RoConnectionUri                 types.String                       `tfsdk:"ro_connection_uri"`
	Storage                         *StorageResourceModel              `tfsdk:"storage"`
	PgConfig                        []PgConfigResourceModel            `tfsdk:"pg_config"`
	FirstRecoverabilityPointAt      types.String                       `tfsdk:"first_recoverability_point_at"`
	ProjectId                       string                             `tfsdk:"project_id"`
	LogsUrl                         *string                            `tfsdk:"logs_url"`
	BackupRetentionPeriod           types.String                       `tfsdk:"backup_retention_period"`
	ClusterType                     *string                            `tfsdk:"cluster_type"`
	CloudProvider                   types.String                       `tfsdk:"cloud_provider"`
	PgType                          types.String                       `tfsdk:"pg_type"`
	Password                        types.String                       `tfsdk:"password"`
	FarawayReplicaIds               types.Set                          `tfsdk:"faraway_replica_ids"`
	PgVersion                       types.String                       `tfsdk:"pg_version"`
	PrivateNetworking               types.Bool                         `tfsdk:"private_networking"`
	AllowedIpRanges                 []AllowedIpRangesResourceModel     `tfsdk:"allowed_ip_ranges"`
	CreatedAt                       types.String                       `tfsdk:"created_at"`
	MaintenanceWindow               *commonTerraform.MaintenanceWindow `tfsdk:"maintenance_window"`
	ServiceAccountIds               types.Set                          `tfsdk:"service_account_ids"`
	PeAllowedPrincipalIds           types.Set                          `tfsdk:"pe_allowed_principal_ids"`
	SuperuserAccess                 types.Bool                         `tfsdk:"superuser_access"`
	Pgvector                        types.Bool                         `tfsdk:"pgvector"`
	PostGIS                         types.Bool                         `tfsdk:"post_gis"`
	PgBouncer                       *PgBouncerModel                    `tfsdk:"pg_bouncer"`
	Pause                           types.Bool                         `tfsdk:"pause"`
	TransparentDataEncryption       *TransparentDataEncryptionModel    `tfsdk:"transparent_data_encryption"`
	PgIdentity                      types.String                       `tfsdk:"pg_identity"`
	TransparentDataEncryptionAction types.String                       `tfsdk:"transparent_data_encryption_action"`
	VolumeSnapshot                  types.Bool                         `tfsdk:"volume_snapshot_backup"`
	Tags                            []commonTerraform.Tag              `tfsdk:"tags"`
	ServiceName                     types.String                       `tfsdk:"service_name"`

	Timeouts timeouts.Value `tfsdk:"timeouts"`
}

type FAReplicaData added in v0.4.0

type FAReplicaData struct {
	// contains filtered or unexported fields
}

func (*FAReplicaData) Configure added in v1.0.0

Configure adds the provider configured client to the data source.

func (*FAReplicaData) Metadata added in v1.0.0

func (*FAReplicaData) Read added in v0.4.0

func (*FAReplicaData) Schema added in v0.4.0

type FAReplicaDataModel added in v1.0.0

type FAReplicaDataModel struct {
	FAReplicaResourceModel
}

type FAReplicaResource added in v0.4.0

type FAReplicaResource struct {
	// contains filtered or unexported fields
}

func (*FAReplicaResource) Configure added in v1.0.0

func (*FAReplicaResource) Create added in v0.4.0

func (*FAReplicaResource) Delete added in v0.4.0

func (FAReplicaResource) ImportState added in v1.0.0

func (*FAReplicaResource) Metadata added in v1.0.0

func (*FAReplicaResource) Read added in v0.4.0

func (*FAReplicaResource) Schema added in v0.4.0

func (*FAReplicaResource) Update added in v0.4.0

type FAReplicaResourceModel added in v1.0.0

type FAReplicaResourceModel struct {
	ID                              types.String                      `tfsdk:"id"`
	CspAuth                         types.Bool                        `tfsdk:"csp_auth"`
	Region                          types.String                      `tfsdk:"region"`
	InstanceType                    types.String                      `tfsdk:"instance_type"`
	ResizingPvc                     types.List                        `tfsdk:"resizing_pvc"`
	MetricsUrl                      *string                           `tfsdk:"metrics_url"`
	ClusterId                       *string                           `tfsdk:"cluster_id"`
	ReplicaSourceClusterId          *string                           `tfsdk:"source_cluster_id"`
	Phase                           types.String                      `tfsdk:"phase"`
	ConnectionUri                   types.String                      `tfsdk:"connection_uri"`
	ClusterName                     types.String                      `tfsdk:"cluster_name"`
	Storage                         *StorageResourceModel             `tfsdk:"storage"`
	PgConfig                        []PgConfigResourceModel           `tfsdk:"pg_config"`
	ProjectId                       string                            `tfsdk:"project_id"`
	LogsUrl                         *string                           `tfsdk:"logs_url"`
	BackupRetentionPeriod           types.String                      `tfsdk:"backup_retention_period"`
	PrivateNetworking               types.Bool                        `tfsdk:"private_networking"`
	AllowedIpRanges                 []AllowedIpRangesResourceModel    `tfsdk:"allowed_ip_ranges"`
	CreatedAt                       types.String                      `tfsdk:"created_at"`
	ServiceAccountIds               types.Set                         `tfsdk:"service_account_ids"`
	PeAllowedPrincipalIds           types.Set                         `tfsdk:"pe_allowed_principal_ids"`
	ClusterArchitecture             *ClusterArchitectureResourceModel `tfsdk:"cluster_architecture"`
	ClusterType                     *string                           `tfsdk:"cluster_type"`
	PgType                          types.String                      `tfsdk:"pg_type"`
	PgVersion                       types.String                      `tfsdk:"pg_version"`
	CloudProvider                   types.String                      `tfsdk:"cloud_provider"`
	TransparentDataEncryption       *TransparentDataEncryptionModel   `tfsdk:"transparent_data_encryption"`
	PgIdentity                      types.String                      `tfsdk:"pg_identity"`
	TransparentDataEncryptionAction types.String                      `tfsdk:"transparent_data_encryption_action"`
	VolumeSnapshot                  types.Bool                        `tfsdk:"volume_snapshot_backup"`
	Tags                            []commonTerraform.Tag             `tfsdk:"tags"`

	Timeouts timeouts.Value `tfsdk:"timeouts"`
}

type PGD added in v0.5.0

type PGD struct {
	ID            *string                  `tfsdk:"id"`
	ProjectId     string                   `tfsdk:"project_id"`
	ClusterId     *string                  `tfsdk:"cluster_id"`
	ClusterName   *string                  `tfsdk:"cluster_name"`
	MostRecent    *bool                    `tfsdk:"most_recent"`
	Password      *string                  `tfsdk:"password"`
	Timeouts      timeouts.Value           `tfsdk:"timeouts"`
	Pause         types.Bool               `tfsdk:"pause"`
	Tags          []commonTerraform.Tag    `tfsdk:"tags"`
	DataGroups    []terraform.DataGroup    `tfsdk:"data_groups"`
	WitnessGroups []terraform.WitnessGroup `tfsdk:"witness_groups"`
}

type PGDDataSourceData added in v0.5.0

type PGDDataSourceData struct {
	ID            *string                  `tfsdk:"id"`
	ProjectID     string                   `tfsdk:"project_id"`
	ClusterID     *string                  `tfsdk:"cluster_id"`
	ClusterName   string                   `tfsdk:"cluster_name"`
	MostRecent    *bool                    `tfsdk:"most_recent"`
	DataGroups    []terraform.DataGroup    `tfsdk:"data_groups"`
	WitnessGroups []terraform.WitnessGroup `tfsdk:"witness_groups"`
}

type PgBouncerModel added in v0.7.0

type PgBouncerModel struct {
	IsEnabled bool      `tfsdk:"is_enabled"`
	Settings  types.Set `tfsdk:"settings"`
}

type PgBouncerSettingsModel added in v0.7.0

type PgBouncerSettingsModel struct {
	Name      string `tfsdk:"name"`
	Operation string `tfsdk:"operation"`
	Value     string `tfsdk:"value"`
}

type PgConfigResourceModel added in v0.6.0

type PgConfigResourceModel struct {
	Name  string `tfsdk:"name"`
	Value string `tfsdk:"value"`
}

type Project added in v0.5.0

type Project struct {
	ID             *string               `tfsdk:"id"`
	ProjectID      *string               `tfsdk:"project_id"`
	ProjectName    *string               `tfsdk:"project_name"`
	UserCount      *int                  `tfsdk:"user_count"`
	ClusterCount   *int                  `tfsdk:"cluster_count"`
	CloudProviders []cloudProvider       `tfsdk:"cloud_providers"`
	Tags           []commonTerraform.Tag `tfsdk:"tags"`
}

type Region added in v0.5.0

type Region struct {
	ProjectID     *string               `tfsdk:"project_id"`
	CloudProvider *string               `tfsdk:"cloud_provider"`
	RegionID      *string               `tfsdk:"region_id"`
	ID            *string               `tfsdk:"id"`
	Name          *string               `tfsdk:"name"`
	Continent     *string               `tfsdk:"continent"`
	Status        *string               `tfsdk:"status"`
	Tags          []commonTerraform.Tag `tfsdk:"tags"`

	Timeouts timeouts.Value `tfsdk:"timeouts"`
}

type StorageResourceModel added in v0.6.0

type StorageResourceModel struct {
	VolumeType       types.String `tfsdk:"volume_type"`
	VolumeProperties types.String `tfsdk:"volume_properties"`
	Size             types.String `tfsdk:"size"`
	Iops             types.String `tfsdk:"iops"`
	Throughput       types.String `tfsdk:"throughput"`
}

type TagResourceModel added in v1.1.0

type TagResourceModel struct {
	ID      types.String `tfsdk:"id"`
	TagId   types.String `tfsdk:"tag_id"`
	TagName types.String `tfsdk:"tag_name"`
	Color   types.String `tfsdk:"color"`

	Timeouts timeouts.Value `tfsdk:"timeouts"`
}

type TransparentDataEncryptionModel added in v1.0.0

type TransparentDataEncryptionModel struct {
	KeyId   types.String `tfsdk:"key_id"`
	KeyName types.String `tfsdk:"key_name"`
	Status  types.String `tfsdk:"status"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL