Skip to content

Commit

Permalink
doc enhancements (#194)
Browse files Browse the repository at this point in the history
* doc enhancements

Signed-off-by: Shendge <[email protected]>
  • Loading branch information
shenda1 committed Jun 20, 2024
1 parent 9a0036e commit acd7860
Show file tree
Hide file tree
Showing 12 changed files with 143 additions and 10 deletions.
30 changes: 30 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,36 @@ See the License for the specific language governing permissions and
limitations under the License.
-->

# v1.5.0 (June 28, 2024)

## Release Summary

The release supports resources and data sources mentioned in the Features section for Dell PowerFlex.

## Features

### Resources

* `powerflex_firmware_repository` for managing firmware repository in PowerFlex.
* `powerflex_sdc_host` for managing SDCs in PowerFlex.
* `powerflex_system` for managing system level configuration in PowerFlex

### Data Sources

* `powerflex_firmware_repository` for reading firmware repository details in PowerFlex.

### Enhancements

* All existing resources and datasources are qualified against PowerFlex v4.5 on AWS.
* All existing resources and datasources are qualified against PowerFlex v4.6.
* Added support for multiple mdm ips in Cluster/SDC resource.
* Added support for passwordless authentication in Cluster resource.

### Deprecations

* Service Resource/Datasource is deprecated.
* SDC resource is deprecated.

# v1.4.0 (March 27, 2024)

## Release Summary
Expand Down
20 changes: 15 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ limitations under the License.

The Terraform Provider for Dell Technologies (Dell) PowerFlex allows Data Center and IT administrators to use Hashicorp Terraform to automate and orchestrate the provisioning and management of Dell PowerFlex storage systems.

The Terraform Provider can be used to manage SDCs, volumes, snapshots, snapshot-policies, storage pools, SDSs and protection domains.
The Terraform Provider can be used to manage SDCs, volumes, snapshots, snapshot-policies, storage pools, SDSs, protection domains, devices, users, MDM cluster, fault sets and firmware repository.

## Table of contents

Expand All @@ -43,13 +43,13 @@ The Terraform Provider can be used to manage SDCs, volumes, snapshots, snapshot-
For any Terraform Provider for Dell PowerFlex issues, questions or feedback, please follow our [support process](https://github.com/dell/dell-terraform-providers/blob/main/docs/SUPPORT.md)

## License
The Terraform Provider for Dell PowerFlex is released and licensed under the MPL-2.0 license. See [LICENSE](LICENSE) for the full terms.
The Terraform Provider for Dell PowerFlex is released and licensed under the MPL-2.0 license. See [LICENSE](https://github.com/dell/terraform-provider-powerflex/blob/main/LICENSE) for the full terms.

## Prerequisites

| **Terraform Provider** | **PowerFlex/VxFlex OS Version** | **OS** | **Terraform** | **Golang** |
|---------------------|-----------------------|-------|--------------------|--------------------------|
| v1.4.0 | 3.6 <br> 4.5 | ubuntu22.04 <br> rhel9.x | 1.5.x <br> 1.6.x <br>| 1.22.x
| v1.5.0 | 3.6 <br> 4.5 <br> 4.6 | ubuntu22.04 <br> rhel9.x | 1.6.x <br> 1.7.x <br>| 1.22.x

## List of DataSources in Terraform Provider for Dell PowerFlex
* [SDC](docs/data-sources/sdc.md)
Expand All @@ -64,6 +64,7 @@ The Terraform Provider for Dell PowerFlex is released and licensed under the MPL
* [Node](docs/data-sources/node.md)
* [Template](docs/data-sources/template.md)
* [Service](docs/data-sources/service.md)
* [Firmware Repository](docs/data-sources/firmware_repository.md)

## List of Resources in Terraform Provider for Dell PowerFlex
* [SDC](docs/resources/sdc.md)
Expand All @@ -81,12 +82,15 @@ The Terraform Provider for Dell PowerFlex is released and licensed under the MPL
* [Fault Set](docs/resources/fault_set.md)
* [Service](docs/resources/service.md)
* [Snapshot Policy](docs/resources/snapshot_policy.md)
* [Firmware Repository](docs/resources/firmware_repository.md)
* [SDC Host](docs/resources/sdc_host.md)
* [System](docs/resources/system.md)

## List of Modules in Terraform Provider for Dell PowerFlex
* [User](https://registry.terraform.io/modules/dell/modules/powerflex/latest/submodules/user)

## Installation and execution of Terraform Provider for Dell PowerFlex
The installation and execution steps of Terraform Provider for Dell PowerFlex can be found [here](about/INSTALLATION.md).
The installation and execution steps of Terraform Provider for Dell PowerFlex can be found [here](https://github.com/dell/terraform-provider-powerflex/blob/main/about/INSTALLATION.md).

## Releasing, Maintenance and Deprecation

Expand All @@ -98,4 +102,10 @@ Released code versions are located on tags in the form of "vx.y.z" where x.y.z c

## Documentation

For more detailed information, please refer to [Dell Terraform Providers Documentation](https://dell.github.io/terraform-docs/).
For more detailed information, please refer to [Dell Terraform Providers Documentation](https://dell.github.io/terraform-docs/).

## Terraform PowerFlex Modules

Check the following links for the terraform-modules repository and registry.
* [Terraform PowerFlex Modules GitHub](https://github.com/dell/terraform-powerflex-modules)
* [Terraform PowerFlex Modules Registry](https://registry.terraform.io/modules/dell/modules/powerflex/latest)
2 changes: 1 addition & 1 deletion about/INSTALLATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Create a file called `main.tf` in your workspace with the following contents
terraform {
required_providers {
powerflex = {
version = "1.4.0"
version = "1.5.0"
source = "registry.terraform.io/dell/powerflex"
}
}
Expand Down
2 changes: 1 addition & 1 deletion docs/guides/cluster_resource_using_csv_input.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ resource "powerflex_cluster" "test" {
is_rfcache = row["RFcache"]
is_sdr = row["Is SDR"]
}
if row["Is MDM/TB"] != ""
if row["Is MDM/TB"] != "" # Validates if MDM role is not empty string
]
storage_pools = [
Expand Down
44 changes: 44 additions & 0 deletions docs/guides/importing_existing_volumes_mapped_to_sdc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
page_title: "Import existing volume mappings of SDC"
title: "Import existing volume mappings of SDC"
linkTitle: "Import existing volume mappings of SDC"
---

<!--
Copyright (c) 2024 Dell Inc., or its subsidiaries. All Rights Reserved.
Licensed under the Mozilla Public License Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://mozilla.org/MPL/2.0/
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

# Importing existing volume mappings of SDC using sdc_volumes_mapping resource

This guide explains how to import volumes mapped to SDC using sdc_volumes_mapping_resource. Below steps are taken from [this article](https://developer.hashicorp.com/terraform/language/import/generating-configuration).

### Step 1: Add the import block
```terraform
import {
to = powerflex_sdc_volumes_mapping.test
id = "sdc_id"
}
```

### Step 2: Plan and generate configuration
```
terraform plan -generate-config-out=test.tf
```

### Step 3: Review generated configuration in test.tf

### Step 4: Run terraform apply to import the volumes mapped to SDC. Choose only one argument from mutually exclusive arguments.<br>
For example, choose either volume_id or volume_name from sdc_volumes_mapping resource.
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ limitations under the License.
terraform {
required_providers {
powerflex = {
version = "1.4.0"
version = "1.5.0"
source = "registry.terraform.io/dell/powerflex"
}
}
Expand Down
2 changes: 2 additions & 0 deletions docs/resources/sdc_volumes_mapping.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ If the taint is not removed, terraform will destroy and recreate the resource.</
> **Note:** Either `volume_id` or `volume_name` is required. But not both.
> **Note:** If there are existing volumes mapped to SDC, import the mappings first before performing any operation.
## Example Usage

```terraform
Expand Down
2 changes: 1 addition & 1 deletion examples/provider/provider.tf
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ limitations under the License.
terraform {
required_providers {
powerflex = {
version = "1.4.0"
version = "1.5.0"
source = "registry.terraform.io/dell/powerflex"
}
}
Expand Down
1 change: 1 addition & 0 deletions powerflex/provider/sdc_resource_schema.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ import (

// SDCReourceSchema - varible holds schema for SDC resource
var SDCReourceSchema schema.Schema = schema.Schema{
DeprecationMessage: "Use sdc_host instead",
Description: "This resource is used to manage the SDC entity of PowerFlex Array. We can Create, Update and Delete the PowerFlex SDC using this resource. We can also Import an existing SDC from PowerFlex array.",
MarkdownDescription: "This resource is used to manage the SDC entity of PowerFlex Array. We can Create, Update and Delete the PowerFlex SDC using this resource. We can also Import an existing SDC from PowerFlex array.",
Attributes: map[string]schema.Attribute{
Expand Down
2 changes: 1 addition & 1 deletion templates/guides/cluster_resource_using_csv_input.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ resource "powerflex_cluster" "test" {
is_rfcache = row["RFcache"]
is_sdr = row["Is SDR"]
}
if row["Is MDM/TB"] != ""
if row["Is MDM/TB"] != "" # Validates if MDM role is not empty string
]
storage_pools = [
Expand Down
44 changes: 44 additions & 0 deletions templates/guides/importing_existing_volumes_mapped_to_sdc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
page_title: "Import existing volume mappings of SDC"
title: "Import existing volume mappings of SDC"
linkTitle: "Import existing volume mappings of SDC"
---

<!--
Copyright (c) 2024 Dell Inc., or its subsidiaries. All Rights Reserved.
Licensed under the Mozilla Public License Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://mozilla.org/MPL/2.0/
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

# Importing existing volume mappings of SDC using sdc_volumes_mapping resource

This guide explains how to import volumes mapped to SDC using sdc_volumes_mapping_resource. Below steps are taken from [this article](https://developer.hashicorp.com/terraform/language/import/generating-configuration).

### Step 1: Add the import block
```terraform
import {
to = powerflex_sdc_volumes_mapping.test
id = "sdc_id"
}
```

### Step 2: Plan and generate configuration
```
terraform plan -generate-config-out=test.tf
```

### Step 3: Review generated configuration in test.tf

### Step 4: Run terraform apply to import the volumes mapped to SDC. Choose only one argument from mutually exclusive arguments.<br>
For example, choose either volume_id or volume_name from sdc_volumes_mapping resource.
2 changes: 2 additions & 0 deletions templates/resources/sdc_volumes_mapping.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ If the taint is not removed, terraform will destroy and recreate the resource.</

> **Note:** Either `volume_id` or `volume_name` is required. But not both.

> **Note:** If there are existing volumes mapped to SDC, import the mappings first before performing any operation.

{{ if .HasExample -}}
## Example Usage

Expand Down

0 comments on commit acd7860

Please sign in to comment.