Skip to content

Commit aeed88a

Browse files
authored
fix: default value in readme snippet for 'type' of outputs_location_config, add flag to control upload (#234)
1. The incorrect `outputs_location_config.type` was set in the readme before, resulting in errors. Correcting it to `tecton_hosted_presigned`) 2. Adding a (default false, with 'true' set in the readme snippets for firs trun) `trigger_upload` flag to control whether TF uploads the outputs to the specified url. This is useful for cases where outputs have already been shared but customer needs to re-apply for future changes.
1 parent 0b420b1 commit aeed88a

File tree

16 files changed

+29
-14
lines changed

16 files changed

+29
-14
lines changed

modules/controlplane_rift/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,9 @@ module "tecton" {
3737
3838
# Get outputs destination URL from Tecton
3939
outputs_location_config = {
40-
type = "tecton_presigned_write_url"
40+
type = "tecton_hosted_presigned"
4141
tecton_presigned_write_url = ""
42+
trigger_upload = true
4243
}
4344
}
4445
@@ -74,7 +75,7 @@ This module provisions:
7475
| <a name="input_cross_account_external_id"></a> [cross\_account\_external\_id](#input\_cross\_account\_external\_id) | The external ID for cross-account access. Obtain this from your Tecton representative. | `string` | n/a | yes |
7576
| <a name="input_deployment_name"></a> [deployment\_name](#input\_deployment\_name) | The name of the Tecton deployment. Must be less than 22 characters due to AWS limitations. | `string` | n/a | yes |
7677
| <a name="input_kms_key_id"></a> [kms\_key\_id](#input\_kms\_key\_id) | (Optional) The customer-managed key (ID) for encrypting data at rest. | `string` | `null` | no |
77-
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
78+
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> trigger_upload = optional(bool, false)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
7879
| <a name="input_region"></a> [region](#input\_region) | The AWS region for the Tecton deployment. | `string` | n/a | yes |
7980
| <a name="input_tecton_control_plane_account_id"></a> [tecton\_control\_plane\_account\_id](#input\_tecton\_control\_plane\_account\_id) | The AWS account ID of the Tecton control plane. Obtain this from your Tecton representative. | `string` | n/a | yes |
8081
## Outputs

modules/controlplane_rift/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ variable "outputs_location_config" {
4040

4141
# For tecton_hosted_presigned
4242
tecton_presigned_write_url = optional(string)
43+
trigger_upload = optional(bool, false)
4344
})
4445

4546
default = {

modules/controlplane_rift_with_emr/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,9 @@ module "tecton" {
3838
3939
# Get outputs destination URL from Tecton
4040
outputs_location_config = {
41-
type = "tecton_presigned_write_url"
41+
type = "tecton_hosted_presigned"
4242
tecton_presigned_write_url = ""
43+
trigger_upload = true
4344
}
4445
4546
# To enable the EMR notebook cluster:
@@ -94,7 +95,7 @@ This module provisions:
9495
| <a name="input_notebook_glue_account_id"></a> [notebook\_glue\_account\_id](#input\_notebook\_glue\_account\_id) | (Optional) The AWS account ID for Glue Data Catalog access. Defaults to the main account\_id if not specified. | `string` | `null` | no |
9596
| <a name="input_notebook_has_glue"></a> [notebook\_has\_glue](#input\_notebook\_has\_glue) | (Optional) Whether the EMR notebook cluster should have Glue Data Catalog access. | `bool` | `true` | no |
9697
| <a name="input_notebook_instance_type"></a> [notebook\_instance\_type](#input\_notebook\_instance\_type) | (Optional) The EC2 instance type for the EMR notebook cluster. | `string` | `"m5.xlarge"` | no |
97-
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
98+
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> trigger_upload = optional(bool, false)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
9899
| <a name="input_region"></a> [region](#input\_region) | The AWS region for the Tecton deployment. | `string` | n/a | yes |
99100
| <a name="input_tecton_control_plane_account_id"></a> [tecton\_control\_plane\_account\_id](#input\_tecton\_control\_plane\_account\_id) | The AWS account ID of the Tecton control plane. Obtain this from your Tecton representative. | `string` | n/a | yes |
100101
## Outputs

modules/controlplane_rift_with_emr/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ variable "outputs_location_config" {
7979

8080
# For tecton_hosted_presigned
8181
tecton_presigned_write_url = optional(string)
82+
trigger_upload = optional(bool, false)
8283
})
8384

8485
default = {

modules/databricks/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,9 @@ module "tecton" {
4949
5050
# Get outputs destination URL from Tecton
5151
outputs_location_config = {
52-
type = "tecton_presigned_write_url"
52+
type = "tecton_hosted_presigned"
5353
tecton_presigned_write_url = ""
54+
trigger_upload = true
5455
}
5556
}
5657
@@ -88,7 +89,7 @@ This module provisions:
8889
| <a name="input_databricks_workspace_url"></a> [databricks\_workspace\_url](#input\_databricks\_workspace\_url) | The URL of your Databricks workspace (e.g., mycompany.cloud.databricks.com). | `string` | n/a | yes |
8990
| <a name="input_deployment_name"></a> [deployment\_name](#input\_deployment\_name) | The name for your Tecton deployment. Must be less than 22 characters due to AWS S3 bucket naming limitations. | `string` | n/a | yes |
9091
| <a name="input_kms_key_id"></a> [kms\_key\_id](#input\_kms\_key\_id) | (Optional) The customer-managed key for encrypting data at rest. | `string` | `null` | no |
91-
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
92+
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> trigger_upload = optional(bool, false)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
9293
| <a name="input_region"></a> [region](#input\_region) | The AWS region where Tecton and Databricks resources are deployed. | `string` | n/a | yes |
9394
| <a name="input_spark_instance_profile_name"></a> [spark\_instance\_profile\_name](#input\_spark\_instance\_profile\_name) | The name of the IAM instance profile used by Databricks clusters. | `string` | n/a | yes |
9495
| <a name="input_spark_role_name"></a> [spark\_role\_name](#input\_spark\_role\_name) | The name of the IAM role used by Databricks for Spark jobs. | `string` | n/a | yes |

modules/databricks/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ variable "outputs_location_config" {
5555

5656
# For tecton_hosted_presigned
5757
tecton_presigned_write_url = optional(string)
58+
trigger_upload = optional(bool, false)
5859
})
5960

6061
default = {

modules/dataplane_rift/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,9 @@ module "tecton" {
4444
4545
# Get outputs destination URL from Tecton
4646
outputs_location_config = {
47-
type = "tecton_presigned_write_url"
47+
type = "tecton_hosted_presigned"
4848
tecton_presigned_write_url = ""
49+
trigger_upload = true
4950
}
5051
5152
# Optional: For PrivateLink to Control Plane. Add _after_ deployment is complete and PrivateLink details are shared by Tecton
@@ -85,7 +86,7 @@ output "tecton" {
8586
| <a name="input_existing_vpc"></a> [existing\_vpc](#input\_existing\_vpc) | (Optional) Configuration for using an existing VPC. If provided, both vpc\_id and private\_subnet\_ids must be provided together. | <pre>object({<br/> vpc_id = string<br/> private_subnet_ids = list(string)<br/> })</pre> | `null` | no |
8687
| <a name="input_include_crossaccount_bucket_access"></a> [include\_crossaccount\_bucket\_access](#input\_include\_crossaccount\_bucket\_access) | Whether to grant direct cross-account bucket access | `bool` | `true` | no |
8788
| <a name="input_kms_key_id"></a> [kms\_key\_id](#input\_kms\_key\_id) | (Optional) The customer-managed key for encrypting data at rest. | `string` | `null` | no |
88-
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
89+
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> trigger_upload = optional(bool, false)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
8990
| <a name="input_region"></a> [region](#input\_region) | The AWS region for the Tecton deployment. | `string` | n/a | yes |
9091
| <a name="input_subnet_azs"></a> [subnet\_azs](#input\_subnet\_azs) | A list of Availability Zones for the subnets. | `list(string)` | n/a | yes |
9192
| <a name="input_tecton_control_plane_account_id"></a> [tecton\_control\_plane\_account\_id](#input\_tecton\_control\_plane\_account\_id) | The AWS account ID of the Tecton control plane. Obtain this from your Tecton representative. | `string` | n/a | yes |

modules/dataplane_rift/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@ variable "outputs_location_config" {
125125

126126
# For tecton_hosted_presigned
127127
tecton_presigned_write_url = optional(string)
128+
trigger_upload = optional(bool, false)
128129
})
129130

130131
default = {

modules/dataplane_rift_with_emr/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ module "tecton" {
4242
4343
# Get outputs destination URL from Tecton
4444
outputs_location_config = {
45-
type = "tecton_presigned_write_url"
45+
type = "tecton_hosted_presigned"
4646
tecton_presigned_write_url = ""
47+
trigger_upload = true
4748
}
4849
4950
# (OPTIONAL)
@@ -107,7 +108,7 @@ This module provisions:
107108
| <a name="input_notebook_glue_account_id"></a> [notebook\_glue\_account\_id](#input\_notebook\_glue\_account\_id) | (Optional) The AWS account ID for Glue Data Catalog access. Defaults to the main account\_id if not specified. | `string` | `null` | no |
108109
| <a name="input_notebook_has_glue"></a> [notebook\_has\_glue](#input\_notebook\_has\_glue) | (Optional) Whether the EMR notebook cluster should have Glue Data Catalog access. | `bool` | `true` | no |
109110
| <a name="input_notebook_instance_type"></a> [notebook\_instance\_type](#input\_notebook\_instance\_type) | (Optional) The EC2 instance type for the EMR notebook cluster. | `string` | `"m5.xlarge"` | no |
110-
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
111+
| <a name="input_outputs_location_config"></a> [outputs\_location\_config](#input\_outputs\_location\_config) | Configuration for where to store the outputs. Defaults to creating a dedicated bucket. | <pre>object({<br/> type = string # "new_bucket", "offline_store_bucket_path", or "tecton_hosted_presigned"<br/> <br/> # For offline_store_bucket_path (bucket name is automatically set to the deployment's offline store bucket)<br/> offline_store_bucket_name = optional(string)<br/> offline_store_bucket_path_prefix = optional(string, "internal/tecton-outputs/")<br/> <br/> # For tecton_hosted_presigned<br/> tecton_presigned_write_url = optional(string)<br/> trigger_upload = optional(bool, false)<br/> })</pre> | <pre>{<br/> "type": "tecton_hosted_presigned"<br/>}</pre> | no |
111112
| <a name="input_region"></a> [region](#input\_region) | The AWS region for the Tecton deployment. | `string` | n/a | yes |
112113
| <a name="input_subnet_azs"></a> [subnet\_azs](#input\_subnet\_azs) | A list of Availability Zones for the subnets. | `list(string)` | n/a | yes |
113114
| <a name="input_tecton_control_plane_account_id"></a> [tecton\_control\_plane\_account\_id](#input\_tecton\_control\_plane\_account\_id) | The AWS account ID of the Tecton control plane. Obtain this from your Tecton representative. | `string` | n/a | yes |

modules/dataplane_rift_with_emr/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ variable "outputs_location_config" {
164164

165165
# For tecton_hosted_presigned
166166
tecton_presigned_write_url = optional(string)
167+
trigger_upload = optional(bool, false)
167168
})
168169

169170
default = {

0 commit comments

Comments
 (0)