From 724dfda09c86b83482faf04e5361bb2ed8f94b5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wiktor=20Niesiob=C4=99dzki?= Date: Thu, 21 Dec 2023 15:25:12 +0000 Subject: [PATCH] Provider doesn't set defaults on config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Can't provide just one size (like `web_server` or `triggerrer`) because of no defaults are taken: module.composer.google_composer_environment.env: Modifying... [id=***] ╷ │ Error: googleapi: Error 400: Found 6 problems: │ 1) You have to specify Scheduler CPUs not lower than 0.5. │ 2) You have to specify number of schedulers larger than 0. │ 3) You have to specify Web Server CPUs not lower than 0.5. │ 4) You have to specify Worker CPUs not lower than 0.5. │ 5) You have to specify minimum number of workers larger than 0. │ 6) Triggerer memory must be between 1.00GB and 6.50GB for given vCpu So provide the defaults as set workloads_config == null --- .../data-solutions/composer-2/variables.tf | 42 ++++++++----------- 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/blueprints/data-solutions/composer-2/variables.tf b/blueprints/data-solutions/composer-2/variables.tf index 5a8501277..312e91707 100644 --- a/blueprints/data-solutions/composer-2/variables.tf +++ b/blueprints/data-solutions/composer-2/variables.tf @@ -20,35 +20,29 @@ variable "composer_config" { environment_size = optional(string) software_config = optional(any) workloads_config = optional(object({ - scheduler = optional(object( - { - count = optional(number) - cpu = optional(number) - memory_gb = optional(number) - storage_gb = optional(number) - } - )) + scheduler = optional(object({ + count = optional(number, 1) + cpu = optional(number, 0.5) + memory_gb = optional(number, 2) + storage_gb = optional(number, 1) + }), {}) triggerer = optional(object({ count = number cpu = number memory_gb = number })) - web_server = optional(object( - { - cpu = optional(number) - memory_gb = optional(number) - storage_gb = optional(number) - } - )) - worker = optional(object( - { - cpu = optional(number) - memory_gb = optional(number) - min_count = optional(number) - max_count = optional(number) - storage_gb = optional(number) - } - )) + web_server = optional(object({ + cpu = optional(number, 0.5) + memory_gb = optional(number, 2) + storage_gb = optional(number, 1) + }), {}) + worker = optional(object({ + cpu = optional(number, 0.5) + memory_gb = optional(number, 2) + min_count = optional(number, 1) + max_count = optional(number, 3) + storage_gb = optional(number, 1) + }), {}) })) }) default = {