Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CDP provider to version 0.6.1 #68

Merged
merged 3 commits into from
Jun 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ terraform {
required_providers {
cdp = {
source = "cloudera/cdp"
version = "0.5.8"
version = "0.6.1"
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ terraform {
required_providers {
cdp = {
source = "cloudera/cdp"
version = "0.5.8"
version = "0.6.1"
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ terraform {
required_providers {
cdp = {
source = "cloudera/cdp"
version = "0.5.8"
version = "0.6.1"
}
}
}
Expand Down
10 changes: 8 additions & 2 deletions modules/terraform-cdp-deploy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ In each directory an example `terraform.tfvars.sample` values file is included t
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3.0 |
| <a name="requirement_cdp"></a> [cdp](#requirement\_cdp) | 0.5.8 |
| <a name="requirement_cdp"></a> [cdp](#requirement\_cdp) | 0.6.1 |

## Providers

Expand Down Expand Up @@ -63,13 +63,15 @@ No resources.
| <a name="input_aws_xaccount_role_arn"></a> [aws\_xaccount\_role\_arn](#input\_aws\_xaccount\_role\_arn) | Cross Account Role ARN. Required for CDP deployment on AWS. | `string` | `null` | no |
| <a name="input_azure_accept_image_terms"></a> [azure\_accept\_image\_terms](#input\_azure\_accept\_image\_terms) | Flag to automatically accept Azure Marketplace image terms during CDP cluster deployment. | `bool` | `true` | no |
| <a name="input_azure_aks_private_dns_zone_id"></a> [azure\_aks\_private\_dns\_zone\_id](#input\_azure\_aks\_private\_dns\_zone\_id) | The ID of an existing private DNS zone used for the AKS. | `string` | `null` | no |
| <a name="input_azure_cdp_flexible_server_delegated_subnet_names"></a> [azure\_cdp\_flexible\_server\_delegated\_subnet\_names](#input\_azure\_cdp\_flexible\_server\_delegated\_subnet\_names) | List of Azure Subnet Names delegated for Private Flexible servers. Required for CDP deployment on Azure. | `list(any)` | `null` | no |
| <a name="input_azure_cdp_gateway_subnet_names"></a> [azure\_cdp\_gateway\_subnet\_names](#input\_azure\_cdp\_gateway\_subnet\_names) | List of Azure Subnet Names CDP Endpoint Access Gateway. Required for CDP deployment on Azure. | `list(any)` | `null` | no |
| <a name="input_azure_cdp_subnet_names"></a> [azure\_cdp\_subnet\_names](#input\_azure\_cdp\_subnet\_names) | List of Azure Subnet Names for CDP Resources. Required for CDP deployment on Azure. | `list(any)` | `null` | no |
| <a name="input_azure_create_private_endpoints"></a> [azure\_create\_private\_endpoints](#input\_azure\_create\_private\_endpoints) | Flag to specify that Azure Postgres will be configured with Private Endpoint and a Private DNS Zone. | `bool` | `null` | no |
| <a name="input_azure_database_private_dns_zone_id"></a> [azure\_database\_private\_dns\_zone\_id](#input\_azure\_database\_private\_dns\_zone\_id) | The ID of an existing private DNS zone used for the database. | `string` | `null` | no |
| <a name="input_azure_datalake_flexible_server_delegated_subnet_name"></a> [azure\_datalake\_flexible\_server\_delegated\_subnet\_name](#input\_azure\_datalake\_flexible\_server\_delegated\_subnet\_name) | The subnet ID for the subnet within which you want to configure your Azure Flexible Server for the CDP datalake | `string` | `null` | no |
| <a name="input_azure_datalakeadmin_identity_id"></a> [azure\_datalakeadmin\_identity\_id](#input\_azure\_datalakeadmin\_identity\_id) | Datalake Admin Managed Identity ID. Required for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_azure_environment_flexible_server_delegated_subnet_names"></a> [azure\_environment\_flexible\_server\_delegated\_subnet\_names](#input\_azure\_environment\_flexible\_server\_delegated\_subnet\_names) | List of Azure Subnet Names delegated for Private Flexible servers. Required for CDP deployment on Azure. | `list(any)` | `null` | no |
| <a name="input_azure_idbroker_identity_id"></a> [azure\_idbroker\_identity\_id](#input\_azure\_idbroker\_identity\_id) | IDBroker Managed Identity ID. Required for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_azure_load_balancer_sku"></a> [azure\_load\_balancer\_sku](#input\_azure\_load\_balancer\_sku) | The Azure load balancer SKU type. Possible values are BASIC, STANDARD or None. The current default is BASIC. To disable the load balancer, use type NONE. | `string` | `null` | no |
| <a name="input_azure_log_identity_id"></a> [azure\_log\_identity\_id](#input\_azure\_log\_identity\_id) | Log Data Access Managed Identity ID. Required for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_azure_ranger_audit_identity_id"></a> [azure\_ranger\_audit\_identity\_id](#input\_azure\_ranger\_audit\_identity\_id) | Ranger Audit Managed Identity ID. Required for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_azure_raz_identity_id"></a> [azure\_raz\_identity\_id](#input\_azure\_raz\_identity\_id) | RAZ Managed Identity ID. Required for CDP deployment on Azure. | `string` | `null` | no |
Expand All @@ -87,6 +89,7 @@ No resources.
| <a name="input_cdp_xacccount_credential_name"></a> [cdp\_xacccount\_credential\_name](#input\_cdp\_xacccount\_credential\_name) | Name of the CDP Cross Account Credential. Defaults to '<env\_prefix>-xaccount-cred' if not specified. If create\_cdp\_credential is set to false then this should should be a valid pre-existing credential. | `string` | `null` | no |
| <a name="input_create_cdp_credential"></a> [create\_cdp\_credential](#input\_create\_cdp\_credential) | Flag to specify if the CDP Cross Account Credential should be created. If set to false then cdp\_xacccount\_credential\_name should be a valid pre-existing credential. | `bool` | `true` | no |
| <a name="input_datalake_async_creation"></a> [datalake\_async\_creation](#input\_datalake\_async\_creation) | Flag to specify if Terraform should wait for CDP datalake resource creation/deletion | `bool` | `false` | no |
| <a name="input_datalake_call_failure_threshold"></a> [datalake\_call\_failure\_threshold](#input\_datalake\_call\_failure\_threshold) | Threshold value that specifies how many times should a single CDP Datalake API call failure happen before giving up the polling | `number` | `3` | no |
| <a name="input_datalake_custom_instance_groups"></a> [datalake\_custom\_instance\_groups](#input\_datalake\_custom\_instance\_groups) | A set of custom instance groups for the datalake. Only applicable for CDP deployment on AWS and GCP. | <pre>list(<br> object({<br> name = string,<br> instance_type = optional(string)<br> })<br> )</pre> | `null` | no |
| <a name="input_datalake_image"></a> [datalake\_image](#input\_datalake\_image) | The image to use for the datalake. Can only be used when the 'datalake\_version' parameter is set to null. You can use 'catalog' name and/or 'id' for selecting an image. | <pre>object({<br> id = optional(string)<br> catalog = optional(string)<br> })</pre> | `null` | no |
| <a name="input_datalake_java_version"></a> [datalake\_java\_version](#input\_datalake\_java\_version) | The Java major version to use on the datalake cluster. | `number` | `null` | no |
Expand All @@ -102,16 +105,19 @@ No resources.
| <a name="input_encryption_key_arn"></a> [encryption\_key\_arn](#input\_encryption\_key\_arn) | ARN of the AWS KMS CMK to use for the server-side encryption of AWS storage resources. Only applicable for CDP deployment on AWS. | `string` | `null` | no |
| <a name="input_encryption_key_resource_group_name"></a> [encryption\_key\_resource\_group\_name](#input\_encryption\_key\_resource\_group\_name) | Name of the existing Azure resource group hosting the Azure Key Vault containing customer managed key which will be used to encrypt the Azure Managed Disk. Only applicable for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_encryption_key_url"></a> [encryption\_key\_url](#input\_encryption\_key\_url) | URL of the key which will be used to encrypt the Azure Managed Disks. Only applicable for CDP deployment on Azure. | `string` | `null` | no |
| <a name="input_encryption_user_managed_identity"></a> [encryption\_user\_managed\_identity](#input\_encryption\_user\_managed\_identity) | Managed Identity ID for encryption | `string` | `""` | no |
| <a name="input_endpoint_access_scheme"></a> [endpoint\_access\_scheme](#input\_endpoint\_access\_scheme) | The scheme for the workload endpoint gateway. PUBLIC creates an external endpoint that can be accessed over the Internet. PRIVATE which restricts the traffic to be internal to the VPC / Vnet. Relevant in Private Networks. | `string` | `null` | no |
| <a name="input_env_tags"></a> [env\_tags](#input\_env\_tags) | Tags applied to provisioned resources | `map(any)` | `null` | no |
| <a name="input_environment_async_creation"></a> [environment\_async\_creation](#input\_environment\_async\_creation) | Flag to specify if Terraform should wait for CDP environment resource creation/deletion | `bool` | `false` | no |
| <a name="input_environment_call_failure_threshold"></a> [environment\_call\_failure\_threshold](#input\_environment\_call\_failure\_threshold) | Threshold value that specifies how many times should a single CDP Environment API call failure happen before giving up the polling | `number` | `3` | no |
| <a name="input_environment_name"></a> [environment\_name](#input\_environment\_name) | Name of the CDP environment. Defaults to '<env\_prefix>-cdp-env' if not specified. | `string` | `null` | no |
| <a name="input_environment_polling_timeout"></a> [environment\_polling\_timeout](#input\_environment\_polling\_timeout) | Timeout value in minutes for how long to poll for CDP Environment resource creation/deletion | `number` | `60` | no |
| <a name="input_freeipa_catalog"></a> [freeipa\_catalog](#input\_freeipa\_catalog) | Image catalog to use for FreeIPA image selection | `string` | `null` | no |
| <a name="input_freeipa_image_id"></a> [freeipa\_image\_id](#input\_freeipa\_image\_id) | Image ID to use for creating FreeIPA instances | `string` | `null` | no |
| <a name="input_freeipa_instance_type"></a> [freeipa\_instance\_type](#input\_freeipa\_instance\_type) | Instance Type to use for creating FreeIPA instances | `string` | `null` | no |
| <a name="input_freeipa_instances"></a> [freeipa\_instances](#input\_freeipa\_instances) | The number of FreeIPA instances to create in the environment | `number` | `3` | no |
| <a name="input_freeipa_recipes"></a> [freeipa\_recipes](#input\_freeipa\_recipes) | The recipes for the FreeIPA cluster | `set(string)` | `null` | no |
| <a name="input_gcp_availability_zones"></a> [gcp\_availability\_zones](#input\_gcp\_availability\_zones) | The zones of the environment in the given region. Multi-zone selection is not supported in GCP yet. It accepts only one zone until support is added. | `list(string)` | `null` | no |
| <a name="input_gcp_cdp_subnet_names"></a> [gcp\_cdp\_subnet\_names](#input\_gcp\_cdp\_subnet\_names) | List of GCP Subnet Names for CDP Resources. Required for CDP deployment on GCP. | `list(any)` | `null` | no |
| <a name="input_gcp_datalake_admin_service_account_email"></a> [gcp\_datalake\_admin\_service\_account\_email](#input\_gcp\_datalake\_admin\_service\_account\_email) | Email id of the service account for Datalake Admin. Required for CDP deployment on GCP. | `string` | `null` | no |
| <a name="input_gcp_encryption_key"></a> [gcp\_encryption\_key](#input\_gcp\_encryption\_key) | Key Resource ID of the customer managed encryption key to encrypt GCP resources. Only applicable for CDP deployment on GCP. | `string` | `null` | no |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ terraform {
required_providers {
cdp = {
source = "cloudera/cdp"
version = "0.5.8"
version = "0.6.1"
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,9 @@ module "cdp_deploy" {
azure_cdp_subnet_names = module.cdp_azure_prereqs.azure_cdp_subnet_names
azure_cdp_gateway_subnet_names = module.cdp_azure_prereqs.azure_cdp_gateway_subnet_names

azure_cdp_flexible_server_delegated_subnet_names = module.cdp_azure_prereqs.azure_cdp_flexible_server_delegated_subnet_names
azure_database_private_dns_zone_id = module.cdp_azure_prereqs.azure_database_private_dns_zone_id
azure_environment_flexible_server_delegated_subnet_names = module.cdp_azure_prereqs.azure_cdp_flexible_server_delegated_subnet_names
azure_datalake_flexible_server_delegated_subnet_name = try(module.cdp_azure_prereqs.azure_cdp_flexible_server_delegated_subnet_names[0], null)
azure_database_private_dns_zone_id = module.cdp_azure_prereqs.azure_database_private_dns_zone_id

azure_security_group_default_uri = module.cdp_azure_prereqs.azure_security_group_default_uri
azure_security_group_knox_uri = module.cdp_azure_prereqs.azure_security_group_knox_uri
Expand Down
56 changes: 33 additions & 23 deletions modules/terraform-cdp-deploy/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,12 @@ module "cdp_on_aws" {
report_deployment_logs = var.report_deployment_logs
endpoint_access_scheme = local.endpoint_access_scheme

environment_async_creation = var.environment_async_creation
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_polling_timeout = var.datalake_polling_timeout
environment_async_creation = var.environment_async_creation
environment_call_failure_threshold = var.environment_call_failure_threshold
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_call_failure_threshold = var.datalake_call_failure_threshold
datalake_polling_timeout = var.datalake_polling_timeout

region = var.region
vpc_id = var.aws_vpc_id
Expand Down Expand Up @@ -112,10 +114,12 @@ module "cdp_on_azure" {
report_deployment_logs = var.report_deployment_logs
endpoint_access_scheme = local.endpoint_access_scheme

environment_async_creation = var.environment_async_creation
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_polling_timeout = var.datalake_polling_timeout
environment_async_creation = var.environment_async_creation
environment_call_failure_threshold = var.environment_call_failure_threshold
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_call_failure_threshold = var.datalake_call_failure_threshold
datalake_polling_timeout = var.datalake_polling_timeout

azure_accept_image_terms = var.azure_accept_image_terms
use_single_resource_group = var.use_single_resource_group
Expand All @@ -124,13 +128,13 @@ module "cdp_on_azure" {
subscription_id = var.azure_subscription_id
tenant_id = var.azure_tenant_id

region = var.region
resource_group_name = var.azure_resource_group_name
vnet_name = var.azure_vnet_name
cdp_subnet_names = var.azure_cdp_subnet_names
cdp_gateway_subnet_names = var.azure_cdp_gateway_subnet_names
cdp_flexible_server_delegated_subnet_names = var.azure_cdp_flexible_server_delegated_subnet_names
public_key_text = var.public_key_text
region = var.region
resource_group_name = var.azure_resource_group_name
vnet_name = var.azure_vnet_name
cdp_subnet_names = var.azure_cdp_subnet_names
cdp_gateway_subnet_names = var.azure_cdp_gateway_subnet_names
environment_flexible_server_delegated_subnet_names = var.azure_environment_flexible_server_delegated_subnet_names
public_key_text = var.public_key_text

data_storage_location = var.data_storage_location
log_storage_location = var.log_storage_location
Expand All @@ -152,20 +156,23 @@ module "cdp_on_azure" {
freeipa_recipes = var.freeipa_recipes

enable_outbound_load_balancer = var.enable_outbound_load_balancer
load_balancer_sku = var.azure_load_balancer_sku

encryption_key_resource_group_name = var.encryption_key_resource_group_name
encryption_key_url = var.encryption_key_url
encryption_at_host = var.encryption_at_host
encryption_user_managed_identity = var.encryption_user_managed_identity

azure_aks_private_dns_zone_id = var.azure_aks_private_dns_zone_id
azure_database_private_dns_zone_id = var.azure_database_private_dns_zone_id
create_private_endpoints = var.azure_create_private_endpoints

proxy_config_name = var.proxy_config_name

datalake_image = var.datalake_image
datalake_java_version = var.datalake_java_version
datalake_recipes = var.datalake_recipes
datalake_image = var.datalake_image
datalake_java_version = var.datalake_java_version
datalake_recipes = var.datalake_recipes
datalake_flexible_server_delegated_subnet_name = var.azure_datalake_flexible_server_delegated_subnet_name
}

# ------- Call sub-module for GCP Deployment -------
Expand Down Expand Up @@ -198,11 +205,14 @@ module "cdp_on_gcp" {
workload_analytics = var.workload_analytics
report_deployment_logs = var.report_deployment_logs
endpoint_access_scheme = local.endpoint_access_scheme

environment_async_creation = var.environment_async_creation
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_polling_timeout = var.datalake_polling_timeout
availability_zones = var.gcp_availability_zones

environment_async_creation = var.environment_async_creation
environment_call_failure_threshold = var.environment_call_failure_threshold
environment_polling_timeout = var.environment_polling_timeout
datalake_async_creation = var.datalake_async_creation
datalake_call_failure_threshold = var.datalake_call_failure_threshold
datalake_polling_timeout = var.datalake_polling_timeout

use_public_ips = local.use_public_ips

Expand Down
10 changes: 6 additions & 4 deletions modules/terraform-cdp-deploy/modules/aws/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,9 @@ resource "cdp_environments_aws_environment" "cdp_env" {
encryption_key_arn = var.encryption_key_arn

polling_options = {
async = var.environment_async_creation
polling_timeout = var.environment_polling_timeout
async = var.environment_async_creation
call_failure_threshold = var.environment_call_failure_threshold
polling_timeout = var.environment_polling_timeout
}

tags = var.tags
Expand Down Expand Up @@ -144,8 +145,9 @@ resource "cdp_datalake_aws_datalake" "cdp_datalake" {
recipes = var.datalake_recipes

polling_options = {
async = var.datalake_async_creation
polling_timeout = var.datalake_polling_timeout
async = var.datalake_async_creation
call_failure_threshold = var.datalake_call_failure_threshold
polling_timeout = var.datalake_polling_timeout
}

tags = var.tags
Expand Down
2 changes: 1 addition & 1 deletion modules/terraform-cdp-deploy/modules/aws/provider.tf
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ terraform {
required_providers {
cdp = {
source = "cloudera/cdp"
version = "0.5.8"
version = "0.6.1"
}
}

Expand Down
Loading
Loading