Skip to content

Commit

Permalink
docs(dws): fix docs issues.
Browse files Browse the repository at this point in the history
  • Loading branch information
Zippo-Wang committed Sep 12, 2023
1 parent 9d08db8 commit 23c8f31
Show file tree
Hide file tree
Showing 3 changed files with 96 additions and 25 deletions.
37 changes: 33 additions & 4 deletions docs/data-sources/dws_flavors.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,48 @@ data "flexibleengine_dws_flavors" "flavor" {

* `memory` - (Optional, String) Specifies the ram of the DWS node flavor in GB.

## Attributes Reference
* `datastore_type` - (Optional, String) The type of datastore. The options are as follows:
- **dws**: OLAP, elastic scaling, unlimited scaling of compute and storage capacity.
- **hybrid**: a single data warehouse used for transaction and analytics workloads,
in single-node or cluster mode.
- **stream**: built-in time series operators; up to 40:1 compression ratio; applicable to IoT services.

## Attribute Reference

In addition to all arguments above, the following attributes are exported:

* `id` - Indicates a data source ID.

* `flavors` - Indicates the flavors information. Structure is documented below.
* `flavors` - Indicates the flavors information. The [flavors](#dws_flavors) object structure is documented below.

The `flavors` block contains:
<a name="dws_flavors"></a>
The `flavors` block supports:

* `flavor_id` - The name of the DWS node flavor. It is referenced by **node_type** in `flexibleengine_dws_cluster_v1`.

* `vcpus` - Indicates the vcpus of the DWS node flavor.

* `memory` - Indicates the ram of the DWS node flavor in GB.

* `volumetype` - Indicates Disk type.

* `size` - Indicates the Disk size in GB.
* `availability_zone` - Indicates the availability zone where the node resides.

* `availability_zones` - Indicates the availability zone where the node resides.

* `datastore_type` - The type of datastore.The options are as follows:
- **dws**: OLAP, elastic scaling, unlimited scaling of compute and storage capacity.
- **hybrid**: a single data warehouse used for transaction and analytics workloads,
in single-node or cluster mode.
- **stream**: built-in time series operators; up to 40:1 compression ratio; applicable to IoT services.

* `elastic_volume_specs` - The [elastic_volume_specs](#dws_elastic_volume_specs) object structure is documented below.

<a name="dws_elastic_volume_specs"></a>
The `elastic_volume_specs` block supports:

* `step` - Disk size increment step.

* `min_size` - Minimum disk size.

* `max_size` - Maximum disk size.
61 changes: 40 additions & 21 deletions docs/resources/dws_cluster_v1.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,61 +50,71 @@ resource "flexibleengine_dws_cluster_v1" "cluster" {

The following arguments are supported:

* `name` - (Required) Cluster name, which must be unique and contains 4 to 64
characters, which consist of letters, digits, hyphens (-), or underscores
(_) only and must start with a letter.
* `region` - (Optional, String, ForceNew) Specifies the region in which to create the DWS cluster (v1) resource.
If omitted, the provider-level region will be used. Changing this will create a new DWS cluster (v1) resource.

* `node_type` - (Required) Node type.
* `name` - (Required, String, ForceNew) Cluster name, which must be unique and contains 4 to 64
characters, which consist of letters, digits, hyphens (-), or underscores(_) only and must start with a letter.
Changing this will create a new resource.

* `number_of_node` - (Required) Number of nodes in a cluster. The value ranges
from 3 to 32.
* `node_type` - (Required, String, ForceNew) Node type.Changing this will create a new resource.

* `user_name` - (Required) Administrator username for logging in to a data
* `number_of_node` - (Required, Int, ForceNew) Number of nodes in a cluster. The value ranges from 3 to 32.
Changing this will create a new resource.

* `user_name` - (Required, String, ForceNew) Administrator username for logging in to a data
warehouse cluster The administrator username must:
- Consist of lowercase letters, digits, or underscores.
- Start with a lowercase letter or an underscore.
- Contain 1 to 63 characters.
- Cannot be a keyword of the DWS database.
Changing this will create a new resource.

* `user_pwd` - (Required) Administrator password for logging in to a data
* `user_pwd` - (Required, String, ForceNew) Administrator password for logging in to a data
warehouse cluster. A password must conform to the following rules:
- Contains 8 to 32 characters.
- Cannot be the same as the username or the username written in reverse order.
- Contains three types of lowercase letters, uppercase letters, digits and
special characters ~!@#%^&*()-_=+|[{}];:,<.>/?
Changing this will create a new resource.

* `vpc_id` - (Required) VPC ID, which is used for configuring cluster network.
* `vpc_id` - (Required, String, ForceNew) VPC ID, which is used for configuring cluster network.
Changing this will create a new resource.

* `subnet_id` - (Required) The ID of the VPC Subnet, which is used for configuring cluster network.
* `subnet_id` - (Required, String, ForceNew) The ID of the VPC Subnet, which is used for configuring cluster network.
Changing this will create a new resource.

* `security_group_id` - (Required) ID of a security group. The ID is used for
configuring cluster network.
* `security_group_id` - (Required, String, ForceNew) ID of a security group. The ID is used for
configuring cluster network. Changing this will create a new resource.

* `port` - (Optional) Service port of a cluster (8000 to 10000). The default value is 8000.
* `port` - (Optional, Int, ForceNew) Service port of a cluster (8000 to 10000). The default value is 8000.
Changing this will create a new resource.

* `availability_zone` - (Optional) AZ in a cluster.
* `availability_zone` - (Optional, String, ForceNew) AZ in a cluster.Changing this will create a new resource.

* `public_ip` - (Optional) Public IP address. The object structure is documented below.
* `public_ip` - (Optional, List, ForceNew) Public IP address.The [public_ip](#_dws_public_ip) object structure is

Check failure on line 95 in docs/resources/dws_cluster_v1.md

View workflow job for this annotation

GitHub Actions / markdownlint

Link fragments should be valid [Context: "[public_ip](#_dws_public_ip)"]
documented below. Changing this will create a new resource.

<a name="dws_public_ip"></a>
The `public_ip` block supports:

* `public_bind_type` - (Optional) Binding type of an EIP. The value can be
* `public_bind_type` - (Optional, String, ForceNew) Binding type of an EIP. The value can be
either of the following: *auto_assign*, *not_use* and *bind_existing*.
The default value is *not_use*.
The default value is *not_use*. Changing this will create a new resource.

* `eip_id` - (Optional) EIP ID
* `eip_id` - (Optional, String, ForceNew) EIP ID. Changing this will create a new resource.

## Attributes Reference
## Attribute Reference

In addition to all arguments above, the following attributes are exported:

* `id` - Cluster ID

* `endpoints` - The private network connection information about the cluster.
The object structure is documented below.
The [endpoints](#dws_endpoints) object structure is documented below.

* `public_endpoints` - The public network connection information about the cluster.
The object structure is documented below.
The [public_endpoints](#dws_public_endpoints) object structure is documented below.

* `private_ip` - List of private network IP address.

Expand All @@ -120,20 +130,29 @@ In addition to all arguments above, the following attributes are exported:

* `updated` - Last modification time of a cluster. The format is ISO8601:YYYY-MM-DDThh:mm:ssZ.

<a name="dws_endpoints"></a>
The `endpoints` block supports:

* `connect_info` - Private network connection information

* `jdbc_url` - JDBC URL. The following is the default format:
jdbc:postgresql://< connect_info>/<YOUR_DATABASE_NAME>

<a name="dws_public_endpoints"></a>
The `public_endpoints` block supports:

* `public_connect_info` - Public network connection information

* `jdbc_url` - JDBC URL. The following is the default format:
jdbc:postgresql://< public_connect_info>/<YOUR_DATABASE_NAME>

## Timeouts

This resource provides the following timeouts configuration options:

* `create` - Default is 30 minutes.
* `delete` - Default is 30 minutes.

## Import

DWS cluster can be imported using the `id`, e.g.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,23 @@ func TestAccDwsFlavorsDataSource_memory(t *testing.T) {
})
}

func TestAccDwsFlavorsDataSource_dataStoreType(t *testing.T) {
resourceName := "data.flexibleengine_dws_flavors.test"
resource.ParallelTest(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
ProviderFactories: TestAccProviderFactories,
Steps: []resource.TestStep{
{
Config: testAccDwsFlavorsDataSource_dataStoreType,
Check: resource.ComposeTestCheckFunc(
testAccCheckDwsFlavorDataSourceID(resourceName),
resource.TestCheckResourceAttrSet(resourceName, "flavors.#"),
),
},
},
})
}

func TestAccDwsFlavorsDataSource_all(t *testing.T) {
resourceName := "data.flexibleengine_dws_flavors.test"
resource.ParallelTest(t, resource.TestCase{
Expand Down Expand Up @@ -125,6 +142,12 @@ data "flexibleengine_dws_flavors" "test" {
memory = 64
}
`

const testAccDwsFlavorsDataSource_dataStoreType = `
data "flexibleengine_dws_flavors" "test" {
datastore_type = "hybrid"
}`

const testAccDwsFlavorsDataSource_all = `
data "flexibleengine_availability_zones" "test" {}
Expand Down

0 comments on commit 23c8f31

Please sign in to comment.