Skip to content

Commit

Permalink
Release 0.2.3 (#31)
Browse files Browse the repository at this point in the history
* Release 0.2.1

* Release 0.2.2

* feat: TF < 1.3.0 restriction removed

* feat: TF binary equal or greater than 1.3.0 requirement added

* chore: release notes and version bump

* chore: release notes, tag and SPECs updated

* OCI provider requirement removed

version <= "5.16.0" removed

Signed-off-by: Andre Correa <[email protected]>

---------

Signed-off-by: Andre Correa <[email protected]>
  • Loading branch information
andrecorreaneto authored Sep 3, 2024
1 parent ebf7293 commit a41b383
Show file tree
Hide file tree
Showing 33 changed files with 69 additions and 172 deletions.
6 changes: 6 additions & 0 deletions RELEASE-NOTES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# August 27, 2024 Release Notes - 0.2.3
## Updates
1. All modules now require Terraform binary equal or greater than 1.3.0.
2. *cislz-terraform-module* tag renamed to *ocilz-terraform-module*.


# July 24, 2024 Release Notes - 0.2.2
## New
1. [Identity Domains module](./identity-domains/)
Expand Down
25 changes: 4 additions & 21 deletions compartments/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,10 @@ Example:
```

## Requirements
### Terraform Version >= 1.3.0

This module requires Terraform binary version 1.3.0 or greater, as it relies on Optional Object Type Attributes feature. The feature shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes.

### IAM Permissions

This module requires the following OCI IAM permission in compartments referred by *default_parent_ocid* and/or *parent_ocid*:
Expand All @@ -102,27 +106,6 @@ Allow group <group> to inspect tag-namespaces in tenancy
- *\<tag_default_compartment_name\>* is the compartment where the tag default is applied.
- *\<tag_namespace_compartment_name\>* is the compartment where the tag namespace is available.

### Terraform Version < 1.3.x and Optional Object Type Attributes
This module relies on [Terraform Optional Object Type Attributes feature](https://developer.hashicorp.com/terraform/language/expressions/type-constraints#optional-object-type-attributes), which is experimental from Terraform 0.14.x to 1.2.x. It shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes. The feature has been promoted and it is no longer experimental in Terraform 1.3.x.

**As is, this module can only be used with Terraform versions up to 1.2.x**, because it can be consumed by other modules via [OCI Resource Manager service](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/home.htm), that still does not support Terraform 1.3.x.

Upon running *terraform plan* with Terraform versions prior to 1.3.x, Terraform displays the following warning:
```
Warning: Experimental feature "module_variable_optional_attrs" is active
```

Note the warning is harmless. The code has been tested with Terraform 1.3.x and the implementation is fully compatible.

If you really want to use Terraform 1.3.x, in [providers.tf](./providers.tf):
1. Change the terraform version requirement to:
```
required_version = ">= 1.3.0"
```
2. Remove the line:
```
experiments = [module_variable_optional_attrs]
```
## How to Invoke the Module

Terraform modules can be invoked locally or remotely.
Expand Down
2 changes: 1 addition & 1 deletion compartments/SPEC.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | < 1.3.0 |
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.0 |

## Providers

Expand Down
2 changes: 0 additions & 2 deletions compartments/examples/external-dependency/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@ provider "oci" {
}

terraform {
required_version = "< 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
2 changes: 0 additions & 2 deletions compartments/examples/vision/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@ provider "oci" {
}

terraform {
required_version = "< 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
2 changes: 1 addition & 1 deletion compartments/metadata.tf
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@

#-- Used to inform module and release number.
locals {
cislz_module_tag = {"cislz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
cislz_module_tag = {"ocilz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
}
3 changes: 1 addition & 2 deletions compartments/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.

terraform {
required_version = "< 1.3.0"
required_version = ">= 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
24 changes: 4 additions & 20 deletions dynamic-groups/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,33 +14,17 @@ The module defines a single input variable named *dynamic_groups_configuration*,
Check the [examples](./examples/) folder for module usage. Specifically, see [vision](./examples/vision/README.md) example for the dynamic groups deployed by [OCI Base Landing Zone](https://github.com/oracle-quickstart/oci-cis-landingzone-quickstart).

## Requirements
### Terraform Version >= 1.3.0

This module requires Terraform binary version 1.3.0 or greater, as it relies on Optional Object Type Attributes feature. The feature shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes.

### IAM Permissions

This module requires the following OCI IAM permission:
```
Allow group <group> to manage dynamic-groups in tenancy
```
### Terraform Version < 1.3.x and Optional Object Type Attributes
This module relies on [Terraform Optional Object Type Attributes feature](https://developer.hashicorp.com/terraform/language/expressions/type-constraints#optional-object-type-attributes), which is experimental from Terraform 0.14.x to 1.2.x. It shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes. The feature has been promoted and it is no longer experimental in Terraform 1.3.x.

**As is, this module can only be used with Terraform versions up to 1.2.x**, because it can be consumed by other modules via [OCI Resource Manager service](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/home.htm), that still does not support Terraform 1.3.x.

Upon running *terraform plan* with Terraform versions prior to 1.3.x, Terraform displays the following warning:
```
Warning: Experimental feature "module_variable_optional_attrs" is active
```

Note the warning is harmless. The code has been tested with Terraform 1.3.x and the implementation is fully compatible.

If you really want to use Terraform 1.3.x, in [providers.tf](./providers.tf):
1. Change the terraform version requirement to:
```
required_version = ">= 1.3.0"
```
2. Remove the line:
```
experiments = [module_variable_optional_attrs]
```
## How to Invoke the Module

Terraform modules can be invoked locally or remotely.
Expand Down
2 changes: 1 addition & 1 deletion dynamic-groups/SPEC.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | < 1.3.0 |
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.0 |

## Providers

Expand Down
2 changes: 0 additions & 2 deletions dynamic-groups/examples/vision/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@ provider "oci" {
}

terraform {
required_version = "< 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
2 changes: 1 addition & 1 deletion dynamic-groups/metadata.tf
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@

#-- Used to inform module and release number.
locals {
cislz_module_tag = {"cislz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
cislz_module_tag = {"ocilz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
}
3 changes: 1 addition & 2 deletions dynamic-groups/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.

terraform {
required_version = "< 1.3.0"
required_version = ">= 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
24 changes: 4 additions & 20 deletions groups/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,33 +17,17 @@ The module defines a single input variable named *groups_configuration*, support
Check the [examples](./examples/) folder for module usage. Specifically, see [vision](./examples/vision/README.md) example for the groups deployed by [OCI Base Landing Zone](https://github.com/oracle-quickstart/oci-cis-landingzone-quickstart).

## Requirements
### Terraform Version >= 1.3.0

This module requires Terraform binary version 1.3.0 or greater, as it relies on Optional Object Type Attributes feature. The feature shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes.

### IAM Permissions

This module requires the following OCI IAM permission:
```
Allow group <group> to manage groups in tenancy
```
### Terraform Version < 1.3.x and Optional Object Type Attributes
This module relies on [Terraform Optional Object Type Attributes feature](https://developer.hashicorp.com/terraform/language/expressions/type-constraints#optional-object-type-attributes), which is experimental from Terraform 0.14.x to 1.2.x. It shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes. The feature has been promoted and it is no longer experimental in Terraform 1.3.x.

**As is, this module can only be used with Terraform versions up to 1.2.x**, because it can be consumed by other modules via [OCI Resource Manager service](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/home.htm), that still does not support Terraform 1.3.x.

Upon running *terraform plan* with Terraform versions prior to 1.3.x, Terraform displays the following warning:
```
Warning: Experimental feature "module_variable_optional_attrs" is active
```

Note the warning is harmless. The code has been tested with Terraform 1.3.x and the implementation is fully compatible.

If you really want to use Terraform 1.3.x, in [providers.tf](./providers.tf):
1. Change the terraform version requirement to:
```
required_version = ">= 1.3.0"
```
2. Remove the line:
```
experiments = [module_variable_optional_attrs]
```
## How to Invoke the Module

Terraform modules can be invoked locally or remotely.
Expand Down
2 changes: 1 addition & 1 deletion groups/SPEC.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | < 1.3.0 |
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.0 |

## Providers

Expand Down
2 changes: 0 additions & 2 deletions groups/examples/vision/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@ provider "oci" {
}

terraform {
required_version = "< 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
2 changes: 1 addition & 1 deletion groups/metadata.tf
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@

#-- Used to inform module and release number.
locals {
cislz_module_tag = {"cislz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
cislz_module_tag = {"ocilz-terraform-module" : fileexists("${path.module}/../release.txt") ? "${var.module_name}/${file("${path.module}/../release.txt")}" : "${var.module_name}"}
}
3 changes: 1 addition & 2 deletions groups/providers.tf
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.

terraform {
required_version = "< 1.3.0"
required_version = ">= 1.3.0"
required_providers {
oci = {
source = "oracle/oci"
}
}
experiments = [module_variable_optional_attrs]
}
33 changes: 3 additions & 30 deletions identity-domains/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,43 +15,16 @@ Check the [examples](./examples/) folder for actual module usage.
- [Known Issues](#issues)

## <a name="requirements">Requirements</a>
### Terraform Version >= 1.3.0

This module requires Terraform binary version 1.3.0 or greater, as it relies on Optional Object Type Attributes feature. The feature shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes.

### IAM Permissions

This module requires the following OCI IAM permission:

```
Allow group <group> to manage domains in tenancy
```

### Terraform Version < 1.3.x and Optional Object Type Attributes

This module relies on [Terraform Optional Object Type Attributes feature](https://developer.hashicorp.com/terraform/language/expressions/type-constraints#optional-object-type-attributes), which is experimental from Terraform 0.14.x to 1.2.x. It shortens the amount of input values in complex object types, by having Terraform automatically inserting a default value for any missing optional attributes. The feature has been promoted and it is no longer experimental in Terraform 1.3.x.

**As is, this module can only be used with Terraform versions up to 1.2.x**, because it can be consumed by other modules via [OCI Resource Manager service](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/home.htm), that still does not support Terraform 1.3.x.

Upon running *terraform plan* with Terraform versions prior to 1.3.x, Terraform displays the following warning:

```
Warning: Experimental feature "module_variable_optional_attrs" is active
```

Note the warning is harmless. The code has been tested with Terraform 1.3.x and the implementation is fully compatible.

If you really want to use Terraform 1.3.x, in [providers.tf](./providers.tf):

1. Change the terraform version requirement to:

```
required_version = ">= 1.3.0"
```

2. Remove the line:

```
experiments = [module_variable_optional_attrs]
```

## <a name="invoke">How to Invoke the Module</a>

Terraform modules can be invoked locally or remotely.
Expand Down
Loading

0 comments on commit a41b383

Please sign in to comment.