-
Notifications
You must be signed in to change notification settings - Fork 21
Closed
Description
Hi there,
Reporting an issue on behalf of another organization in which the modules are not being saved on the DB creation. Everything in the DB creation is correct except for the missing modules.
It looks like it is getting lost somewhere in the provider because the TF contains the modules it needs, but in the response back from the API modules is empty.
Terraform Version
Terraform version: 0.14.7
Terragrunt version: 0.23.40
Affected Resource(s)
Database Modules
Terraform Configuration Files
# example value passed in for enabled_module
// enabled_module = "RedisJSON"
resource "rediscloud_subscription" "subscription" {
name = var.name
// this is optional for marketplace accounts
payment_method_id = var.payment_method_id
memory_storage = var.memory_storage
persistent_storage_encryption = var.is_persistent_storage_encryption
cloud_provider {
provider = var.cloud_provider_type
// we need to update then when we have real accounts, or the data source will fail due to being a POC
// redis internal account is the default, of 1
// cloud_account_id = data.rediscloud_cloud_account.account != null ? data.rediscloud_cloud_account.account.id : 1
region {
region = var.deployment_region
networking_deployment_cidr = var.deployment_cidr
preferred_availability_zones = var.preferred_azs
// optional
multiple_availability_zones = var.is_multi_az
networking_vpc_id = var.networking_vpc_id
}
}
// allowlist can only be configured when using a non redis labs internal account (id != 1)
dynamic "allowlist" {
for_each = var.allowlist
content {
cidrs = allowlist.value.cidrs
security_group_ids = allowlist.value.security_group_ids
}
}
dynamic "database" {
for_each = var.databases
content {
name = database.value.name
memory_limit_in_gb = database.value.memory_limit_in_gb
// operations-per-second or number-of-shards
throughput_measurement_by = database.value.throughput_measurement_by
throughput_measurement_value = database.value.throughput_measurement_value
password = random_password.password.result
dynamic "alert" {
for_each = database.value.alerts != null ? database.value.alerts : []
content {
name = alert.value.name
value = alert.value.value
}
}
module {
name = database.value.enabled_module != null ? database.value.enabled_module : "None"
}
// optional
average_item_size_in_bytes = database.value.average_item_size_in_bytes
client_ssl_certificate = database.value.client_ssl_certificate
data_persistence = database.value.data_persistence
external_endpoint_for_oss_cluster_api = database.value.use_external_endpoint_for_oss_cluster_api
hashing_policy = database.value.hashing_policy
periodic_backup_path = database.value.periodic_backup_path
protocol = database.value.protocol
replication = database.value.replication
source_ips = database.value.source_ips
support_oss_cluster_api = database.value.support_oss_cluster_api
}
}
timeouts {
create = var.timeouts.create
update = var.timeouts.update
}
}
database {
name = "orbis-dev-redis"
memory_limit_in_gb = 1
throughput_measurement_by = "operations-per-second"
throughput_measurement_value = "5000"
password = "abcdefg1234567@!"
module {
name = "RedisJSON"
}
protocol = "redis"
replication = false
}
}
Expected Behavior
The DB should be created with the specs provided in the TF.
Actual Behavior
The modules array is empty in the response back from the Redis API /v1/subscriptions/
Steps to Reproduce
Please list the steps required to reproduce the issue, for example:
- Create subscription in GCP
- Run terraform above
- See results (no modules were added in the response back from the API or in the UI)
Metadata
Metadata
Assignees
Labels
No labels