Skip to content

Commit

Permalink
Merge branch 'ww-tag-assign-pgd-project-region' into ww-tag-assign-pr…
Browse files Browse the repository at this point in the history
…oject

# Conflicts:
#	pkg/provider/resource_cluster.go
  • Loading branch information
wai-wong-edb committed Aug 19, 2024
2 parents 0364ce9 + bd4ae33 commit 4b97360
Show file tree
Hide file tree
Showing 100 changed files with 4,430 additions and 4,260 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
name: Run GoReleaser
uses: goreleaser/[email protected]
with:
version: latest
version: v1.26.2
args: release --rm-dist
env:
GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }}
Expand Down
4 changes: 4 additions & 0 deletions .wordlist-en-custom.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ InstanceType
MPL
PGD
Postgres
analytics
aws
awsconnection
azureconnection
Expand Down Expand Up @@ -37,7 +38,10 @@ pgextended
pgBouncer
pgvector
postgres
PostGIS
postGIS
ssd
TDE
terraform
ultradisk
uri
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,36 @@
## v1.0.0 (August 07. 2024)
Features:
* Transparent Data Encryption (TDE) is now supported in `biganimal_cluster` and `biganimal_faraway_replica` resources
* Volume Snapshots are now supported in `biganimal_cluster` and `biganimal_faraway_replica` resources
* (Breaking change) `biganimal_cluster` and `biganimal_faraway_replica` datasources now use cluster ID instead of cluster name

Enhancements:
* (Breaking change) data groups in `biganimal_pgd` resources now use lists instead of sets
* (Breaking change) blocks are migrated to terraform plugin framework attributes in `biganimal_cluster` resources
* (Breaking change) `biganimal_faraway_replica` resources are migrated to terraform plugin framework attributes
* Updated examples

## v0.11.2 (July 31. 2024)
Bug Fixes:
* fixed pg bouncer settings = null will always show changes on update

## v0.11.0 (June 20. 2024)
Features:
* New Resource to manage Analytical clusters: `biganimal_analytics_cluster`
* New Data Source: `biganimal_analytics_cluster`

## v0.10.0 (May 13. 2024)
Features:
* PostGIS support for `biganimal_cluster` resources
* PostGIS and Pgvector support for `biganimal_faraway_replica` resources

## v0.9.0 (March 27. 2024)
Features:
* Added support to pause and resume a cluster for `biganimal_pgd` and `biganimal_cluster` resources

Bug Fixes:
* Fixed maintenance window plan inconsistent with response

## v0.8.1 (February 29. 2024)
Features:
* Updated access key requirements documentation
Expand Down
2 changes: 1 addition & 1 deletion GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ HOSTNAME=registry.terraform.io
NAMESPACE=EnterpriseDB
NAME=biganimal
BINARY=terraform-provider-${NAME}
VERSION=0.8.1
VERSION=1.0.0

# Figure out the OS and ARCH of the
# builder machine
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ terraform {
required_providers {
biganimal = {
source = "EnterpriseDB/biganimal"
version = "0.8.1"
version = "1.0.0"
}
}
}
Expand Down
166 changes: 166 additions & 0 deletions docs/data-sources/analytics_cluster.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "biganimal_analytics_cluster Data Source - terraform-provider-biganimal"
subcategory: ""
description: |-
The analytics cluster resource is used to manage BigAnimal analytics clusters.
---

# biganimal_analytics_cluster (Data Source)

The analytics cluster resource is used to manage BigAnimal analytics clusters.

## Example Usage

```terraform
variable "cluster_id" {
type = string
description = "The id of the cluster"
}
variable "project_id" {
type = string
description = "BigAnimal Project ID"
}
data "biganimal_analytics_cluster" "this" {
cluster_id = var.cluster_id
project_id = var.project_id
}
output "backup_retention_period" {
value = data.biganimal_analytics_cluster.this.backup_retention_period
}
output "cluster_name" {
value = data.biganimal_analytics_cluster.this.cluster_name
}
output "created_at" {
value = data.biganimal_analytics_cluster.this.created_at
}
output "csp_auth" {
value = coalesce(data.biganimal_analytics_cluster.this.csp_auth, false)
}
output "instance_type" {
value = data.biganimal_analytics_cluster.this.instance_type
}
output "metrics_url" {
value = data.biganimal_analytics_cluster.this.metrics_url
}
output "logs_url" {
value = data.biganimal_analytics_cluster.this.logs_url
}
output "pg_type" {
value = data.biganimal_analytics_cluster.this.pg_type
}
output "pg_version" {
value = data.biganimal_analytics_cluster.this.pg_version
}
output "phase" {
value = data.biganimal_analytics_cluster.this.phase
}
output "private_networking" {
value = coalesce(data.biganimal_analytics_cluster.this.private_networking, false)
}
output "cloud_provider" {
value = data.biganimal_analytics_cluster.this.cloud_provider
}
output "region" {
value = data.biganimal_analytics_cluster.this.region
}
output "resizing_pvc" {
value = data.biganimal_analytics_cluster.this.resizing_pvc
}
output "pe_allowed_principal_ids" {
value = data.biganimal_analytics_cluster.this.pe_allowed_principal_ids
}
output "service_account_ids" {
value = data.biganimal_analytics_cluster.this.service_account_ids
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `cluster_id` (String) Cluster ID.
- `project_id` (String) BigAnimal Project ID.

### Optional

- `allowed_ip_ranges` (Attributes Set) Allowed IP ranges. (see [below for nested schema](#nestedatt--allowed_ip_ranges))
- `backup_retention_period` (String) Backup retention period. For example, "7d", "2w", or "3m".
- `csp_auth` (Boolean) Is authentication handled by the cloud service provider.
- `maintenance_window` (Attributes) Custom maintenance window. (see [below for nested schema](#nestedatt--maintenance_window))
- `pause` (Boolean) Pause cluster. If true it will put the cluster on pause and set the phase as paused, if false it will resume the cluster and set the phase as healthy. Pausing a cluster allows you to save on compute costs without losing data or cluster configuration settings. While paused, clusters aren't upgraded or patched, but changes are applied when the cluster resumes. Pausing a high availability cluster shuts down all cluster nodes
- `pe_allowed_principal_ids` (Set of String) Cloud provider subscription/account ID, need to be specified when cluster is deployed on BigAnimal's cloud account.
- `service_account_ids` (Set of String) A Google Cloud Service Account is used for logs. If you leave this blank, then you will be unable to access log details for this cluster. Required when cluster is deployed on BigAnimal's cloud account.
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))

### Read-Only

- `cloud_provider` (String) Cloud provider. For example, "aws" or "bah:aws".
- `cluster_name` (String) Name of the cluster.
- `connection_uri` (String) Cluster connection URI.
- `created_at` (String) Cluster creation time.
- `first_recoverability_point_at` (String) Earliest backup recover time.
- `id` (String) Resource ID of the cluster.
- `instance_type` (String) Instance type. For example, "azure:Standard_D2s_v3", "aws:c5.large" or "gcp:e2-highcpu-4".
- `logs_url` (String) The URL to find the logs of this cluster.
- `metrics_url` (String) The URL to find the metrics of this cluster.
- `password` (String) Password for the user edb_admin. It must be 12 characters or more.
- `pg_type` (String) Postgres type. For example, "epas" or "pgextended".
- `pg_version` (String) Postgres version. For example 16
- `phase` (String) Current phase of the cluster.
- `private_networking` (Boolean) Is private networking enabled.
- `region` (String) Region to deploy the cluster. See [Supported regions](https://www.enterprisedb.com/docs/biganimal/latest/overview/03a_region_support/) for supported regions.
- `resizing_pvc` (List of String) Resizing PVC.

<a id="nestedatt--allowed_ip_ranges"></a>
### Nested Schema for `allowed_ip_ranges`

Required:

- `cidr_block` (String) CIDR block

Optional:

- `description` (String) Description of CIDR block


<a id="nestedatt--maintenance_window"></a>
### Nested Schema for `maintenance_window`

Required:

- `is_enabled` (Boolean) Is maintenance window enabled.

Optional:

- `start_day` (Number) The day of week, 0 represents Sunday, 1 is Monday, and so on.
- `start_time` (String) Start time. "hh:mm", for example: "23:59".


<a id="nestedblock--timeouts"></a>
### Nested Schema for `timeouts`

Optional:

- `create` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- `delete` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
- `update` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
Loading

0 comments on commit 4b97360

Please sign in to comment.