diff --git a/LICENSE b/LICENSE index 4aa67ca..6abbe69 100644 --- a/LICENSE +++ b/LICENSE @@ -1,14 +1,20 @@ -# Snowplow Community License Agreement +# Snowplow Limited Use License Agreement -_Version 1.0, January 2023_ +_Version 1.0, January 2024_ -This Snowplow Community License Agreement, Version 1.0 (the “Agreement”) sets forth the terms on which Snowplow Analytics, Ltd. (“Snowplow”) makes available certain software made available by Snowplow under this Agreement (the “Software”). BY INSTALLING, DOWNLOADING, ACCESSING, OR USING ANY OF THE SOFTWARE, YOU AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO SUCH TERMS AND CONDITIONS, YOU MUST NOT USE THE SOFTWARE. IF YOU ARE RECEIVING THE SOFTWARE ON BEHALF OF A LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU HAVE THE ACTUAL AUTHORITY TO AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT ON BEHALF OF SUCH ENTITY. “Licensee” means you, an individual, or the entity on whose behalf you are receiving the Software. +This Snowplow Limited Use License Agreement, Version 1.0 (the “Agreement”) sets forth the terms on which Snowplow Analytics, Ltd. (“Snowplow”) makes available certain software (the “Software”). BY INSTALLING, DOWNLOADING, ACCESSING, OR USING ANY OF THE SOFTWARE, YOU AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO SUCH TERMS AND CONDITIONS, YOU MUST NOT USE THE SOFTWARE. IF YOU ARE RECEIVING THE SOFTWARE ON BEHALF OF A LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU HAVE THE ACTUAL AUTHORITY TO AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT ON BEHALF OF SUCH ENTITY. “Licensee” means you, an individual, or the entity on whose behalf you are receiving the Software. ## LICENSE GRANT AND CONDITIONS -**1.1 License.** Subject to the terms and conditions of this Agreement, Snowplow hereby grants to Licensee a non-exclusive, royalty-free, worldwide, non-transferable, non-sublicenseable license during the term of this Agreement to: (a) use the Software; (b) prepare modifications and derivative works of the Software; and (c) reproduce copies of the Software (the “License”). No right to distribute or make available the Software is granted under this License. Licensee is not granted the right to, and Licensee shall not, exercise the License for an Excluded Purpose. For purposes of this Agreement, “Excluded Purpose” means making available any on-premises or distributed software product, software-as-a-service, platform-as-a-service, infrastructure-as-a-service, or other similar online service, that competes with any products or services that Snowplow or any of its affiliates provides using the Software. +**1.1 License.** Subject to the terms and conditions of this Agreement, Snowplow hereby grants to Licensee a non-exclusive, royalty-free, worldwide, non-transferable, non-sublicensable license during the term of this Agreement to: (a) use the Software; (b) prepare modifications and derivative works of the Software; and (c) reproduce copies of the Software (the “License”). No right to distribute or make available the Software is granted under this License. Licensee is not granted the right to, and Licensee shall not, exercise the License for any Excluded Purpose. -**1.2 Conditions.** In consideration of the License, Licensee’s distribution of the Software is subject to the following conditions: +**1.2** For purposes of this Agreement, an “Excluded Purpose” is any use that is either a Competing Use or a Highly-Available Production Use, or both of them. + +* **1.2.1** A “Competing Use” is making available any on-premises or distributed software product, or any software-as-a-service, platform-as-a-service, infrastructure-as-a-service, or other similar online service, that competes with any products or services that Snowplow or any of its affiliates provides using the Software. + +* **1.2.2** Highly-Available Production Use is any highly-available use, including without limitation any use where multiple instances of any Software component run concurrently to avoid a single point of failure, in a production environment, where production means use on live data. + +**1.3 Conditions.** In consideration of the License, Licensee’s use of the Software is subject to the following conditions: * **a.** Licensee must cause any Software modified by Licensee to carry prominent notices stating that Licensee modified the Software. @@ -16,15 +22,15 @@ This Snowplow Community License Agreement, Version 1.0 (the “Agreement”) set ``` This software is made available by Snowplow Analytics, Ltd., - under the terms of the Snowplow Community License Agreement, Version 1.0 - located at https://docs.snowplow.io/community-license-1.0 - BY INSTALLING, DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY OF THE SOFTWARE, - YOU AGREE TO THE TERMS OF SUCH LICENSE AGREEMENT. + under the terms of the Snowplow Limited Use License Agreement, Version 1.0 + located at https://docs.snowplow.io/limited-use-license-1.0 + BY INSTALLING, DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY PORTION + OF THE SOFTWARE, YOU AGREE TO THE TERMS OF SUCH LICENSE AGREEMENT. ``` -**1.3 Licensee Modifications.** Licensee may add its own copyright notices to modifications made by Licensee. +**1.4 Licensee Modifications.** Licensee may add its own copyright notices to modifications made by Licensee. -**1.4 No Sublicensing.** The License does not include the right to sublicense the Software, however, each recipient to which Licensee provides the Software may exercise the Licenses so long as such recipient agrees to the terms and conditions of this Agreement. +**1.5 No Sublicensing.** The License does not include the right to sublicense the Software, however, each recipient to which Licensee provides the Software may exercise the Licenses so long as such recipient agrees to the terms and conditions of this Agreement. ## TERM AND TERMINATION @@ -40,7 +46,7 @@ SNOWPLOW HEREBY DISCLAIMS ANY AND ALL WARRANTIES AND CONDITIONS, EXPRESS, IMPLIE ## LIMITATION OF LIABILITY -SNOWPLOW WILL NOT BE LIABLE FOR ANY DAMAGES OF ANY KIND, INCLUDING BUT NOT LIMITED TO, LOST PROFITS OR ANY CONSEQUENTIAL, SPECIAL, INCIDENTAL, INDIRECT, OR DIRECT DAMAGES, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, ARISING OUT OF THIS AGREEMENT. THE FOREGOING SHALL APPLY TO THE EXTENT PERMITTED BY APPLICABLE LAW. +SNOWPLOW WILL NOT BE LIABLE FOR ANY DAMAGES OF ANY KIND, INCLUDING BUT NOT LIMITED TO LOST PROFITS OR ANY CONSEQUENTIAL, SPECIAL, INCIDENTAL, INDIRECT, OR DIRECT DAMAGES, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, ARISING OUT OF THIS AGREEMENT. THE FOREGOING SHALL APPLY TO THE EXTENT PERMITTED BY APPLICABLE LAW. ## GENERAL @@ -48,4 +54,4 @@ SNOWPLOW WILL NOT BE LIABLE FOR ANY DAMAGES OF ANY KIND, INCLUDING BUT NOT LIMIT **6.2. Assignment.** Licensee is not authorized to assign its rights under this Agreement to any third party. Snowplow may freely assign its rights under this Agreement to any third party. -**6.3. Other.** This Agreement is the entire agreement between the parties regarding the subject matter hereof. No amendment or modification of this Agreement will be valid or binding upon the parties unless made in writing and signed by the duly authorized representatives of both parties. In the event that any provision, including without limitation any condition, of this Agreement is held to be unenforceable, this Agreement and all licenses and rights granted hereunder will immediately terminate. Waiver by Snowplow of a breach of any provision of this Agreement or the failure by Snowplow to exercise any right hereunder will not be construed as a waiver of any subsequent breach of that right or as a waiver of any other right. \ No newline at end of file +**6.3. Other.** This Agreement is the entire agreement between the parties regarding the subject matter hereof. No amendment or modification of this Agreement will be valid or binding upon the parties unless made in writing and signed by the duly authorized representatives of both parties. In the event that any provision, including without limitation any condition, of this Agreement is held to be unenforceable, this Agreement and all licenses and rights granted hereunder will immediately terminate. Waiver by Snowplow of a breach of any provision of this Agreement or the failure by Snowplow to exercise any right hereunder will not be construed as a waiver of any subsequent breach of that right or as a waiver of any other right. diff --git a/README.md b/README.md index 1266c2d..2686e36 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![License][license-image]][license] [![Discourse posts][discourse-image]][discourse] -Examples of how to automate creating a [Snowplow Open Source pipeline](https://github.com/snowplow/snowplow). +Examples of how to automate creating a [Snowplow Community pipeline](https://github.com/snowplow/snowplow). These examples cover deploying an Iglu Server, for hosting your schemas, and a Snowplow pipeline. @@ -53,32 +53,33 @@ terraform-docs -c .terraform-docs.yml terraform/gcp/pipeline/secure Copyright (c) 2022-present Snowplow Analytics Ltd. All rights reserved. -Licensed under the [Snowplow Community License](https://docs.snowplow.io/community-license-1.0). _(If you are uncertain how it applies to your use case, check our answers to [frequently asked questions](https://docs.snowplow.io/docs/contributing/community-license-faq/).)_ +Licensed under the [Snowplow Limited Use License Agreement][license]. _(If you are uncertain how it applies to your use case, check our answers to [frequently asked questions][license-faq].)_ [install-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/techdocs.png [deploy-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/setup.png [faq-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/roadmap.png -[installguide]: https://docs.snowplow.io/docs/open-source-quick-start/ -[faq]: https://docs.snowplow.io/docs/open-source-quick-start/quick-start-faqs/ +[installguide]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-quick-start/ +[faq]: https://docs.snowplow.io/docs/getting-started-on-community-edition/faq/ -[deploypgsum-aws]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=postgres&cloud=aws -[deploysfsum-aws]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=snowflake&cloud=aws -[deployrssum-aws]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=redshift&cloud=aws -[deploydbsum-aws]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=databricks&cloud=aws -[deploypgsum-gcp]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=postgres&cloud=gcp -[deploybqsum-gcp]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=bigquery&cloud=gcp -[deploysfsum-azure]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=snowflake&cloud=azure -[deploydbsum-azure]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=databricks&cloud=azure -[deploysasum-azure]: https://docs.snowplow.io/docs/getting-started-on-snowplow-open-source/what-is-deployed/?warehouse=synapse&cloud=azure +[deploypgsum-aws]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=postgres&cloud=aws +[deploysfsum-aws]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=snowflake&cloud=aws +[deployrssum-aws]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=redshift&cloud=aws +[deploydbsum-aws]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=databricks&cloud=aws +[deploypgsum-gcp]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=postgres&cloud=gcp +[deploybqsum-gcp]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=bigquery&cloud=gcp +[deploysfsum-azure]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=snowflake&cloud=azure +[deploydbsum-azure]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=databricks&cloud=azure +[deploysasum-azure]: https://docs.snowplow.io/docs/getting-started-on-community-edition/what-is-deployed/?warehouse=synapse&cloud=azure -[license]: https://docs.snowplow.io/docs/contributing/community-license-faq/ -[license-image]: https://img.shields.io/badge/license-Snowplow--Community-blue.svg?style=flat +[license]: https://docs.snowplow.io/limited-use-license-1.0/ +[license-image]: https://img.shields.io/badge/license-Snowplow--Limited--Use-blue.svg?style=flat +[license-faq]: https://docs.snowplow.io/docs/contributing/limited-use-license-faq/ [discourse-image]: https://img.shields.io/discourse/posts?server=https%3A%2F%2Fdiscourse.snowplow.io%2F [discourse]: http://discourse.snowplow.io/ [release]: https://github.com/snowplow/snowplow/releases -[release-badge]: https://img.shields.io/badge/Snowplow-23.10%20%28Patch.1%29-6638b8 +[release-badge]: https://img.shields.io/badge/Snowplow-24.02-6638b8 [tf-docs]: https://github.com/terraform-docs/terraform-docs diff --git a/terraform/aws/iglu_server/default/README.md b/terraform/aws/iglu_server/default/README.md index bc1c144..e87a797 100644 --- a/terraform/aws/iglu_server/default/README.md +++ b/terraform/aws/iglu_server/default/README.md @@ -18,7 +18,7 @@ |------|--------|---------| | [iglu\_lb](#module\_iglu\_lb) | snowplow-devops/alb/aws | 0.2.0 | | [iglu\_rds](#module\_iglu\_rds) | snowplow-devops/rds/aws | 0.4.0 | -| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ec2/aws | 0.4.4 | +| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ec2/aws | 0.5.0 | ## Resources @@ -39,6 +39,7 @@ | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [ssh\_public\_key](#input\_ssh\_public\_key) | The SSH public key to use for the deployment | `string` | n/a | yes | | [vpc\_id](#input\_vpc\_id) | The VPC to deploy the components within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [cloudwatch\_logs\_enabled](#input\_cloudwatch\_logs\_enabled) | Whether application logs should be reported to CloudWatch | `bool` | `true` | no | | [cloudwatch\_logs\_retention\_days](#input\_cloudwatch\_logs\_retention\_days) | The length of time in days to retain logs for | `number` | `7` | no | | [iam\_permissions\_boundary](#input\_iam\_permissions\_boundary) | The permissions boundary ARN to set on IAM roles created | `string` | `""` | no | diff --git a/terraform/aws/iglu_server/default/main.tf b/terraform/aws/iglu_server/default/main.tf index 2e1c3e3..e1da115 100644 --- a/terraform/aws/iglu_server/default/main.tf +++ b/terraform/aws/iglu_server/default/main.tf @@ -36,7 +36,9 @@ module "iglu_lb" { module "iglu_server" { source = "snowplow-devops/iglu-server-ec2/aws" - version = "0.4.4" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-iglu-server" vpc_id = var.vpc_id diff --git a/terraform/aws/iglu_server/default/terraform.tfvars b/terraform/aws/iglu_server/default/terraform.tfvars index 1ced542..36dc856 100644 --- a/terraform/aws/iglu_server/default/terraform.tfvars +++ b/terraform/aws/iglu_server/default/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/aws/iglu_server/default/variables.tf b/terraform/aws/iglu_server/default/variables.tf index 81db3d5..7c1fd81 100644 --- a/terraform/aws/iglu_server/default/variables.tf +++ b/terraform/aws/iglu_server/default/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/aws/iglu_server/secure/README.md b/terraform/aws/iglu_server/secure/README.md index 10cf2e0..c8bef9a 100644 --- a/terraform/aws/iglu_server/secure/README.md +++ b/terraform/aws/iglu_server/secure/README.md @@ -18,7 +18,7 @@ |------|--------|---------| | [iglu\_lb](#module\_iglu\_lb) | snowplow-devops/alb/aws | 0.2.0 | | [iglu\_rds](#module\_iglu\_rds) | snowplow-devops/rds/aws | 0.4.0 | -| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ec2/aws | 0.4.4 | +| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ec2/aws | 0.5.0 | ## Resources @@ -40,6 +40,7 @@ | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [ssh\_public\_key](#input\_ssh\_public\_key) | The SSH public key to use for the deployment | `string` | n/a | yes | | [vpc\_id](#input\_vpc\_id) | The VPC to deploy the components within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [cloudwatch\_logs\_enabled](#input\_cloudwatch\_logs\_enabled) | Whether application logs should be reported to CloudWatch | `bool` | `true` | no | | [cloudwatch\_logs\_retention\_days](#input\_cloudwatch\_logs\_retention\_days) | The length of time in days to retain logs for | `number` | `7` | no | | [iam\_permissions\_boundary](#input\_iam\_permissions\_boundary) | The permissions boundary ARN to set on IAM roles created | `string` | `""` | no | diff --git a/terraform/aws/iglu_server/secure/main.tf b/terraform/aws/iglu_server/secure/main.tf index fa2637f..1d8e0eb 100644 --- a/terraform/aws/iglu_server/secure/main.tf +++ b/terraform/aws/iglu_server/secure/main.tf @@ -36,7 +36,9 @@ module "iglu_lb" { module "iglu_server" { source = "snowplow-devops/iglu-server-ec2/aws" - version = "0.4.4" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-iglu-server" vpc_id = var.vpc_id diff --git a/terraform/aws/iglu_server/secure/terraform.tfvars b/terraform/aws/iglu_server/secure/terraform.tfvars index 79cb932..b0273e2 100644 --- a/terraform/aws/iglu_server/secure/terraform.tfvars +++ b/terraform/aws/iglu_server/secure/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/aws/iglu_server/secure/variables.tf b/terraform/aws/iglu_server/secure/variables.tf index a1c619d..fa39b76 100644 --- a/terraform/aws/iglu_server/secure/variables.tf +++ b/terraform/aws/iglu_server/secure/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/aws/pipeline/default/README.md b/terraform/aws/pipeline/default/README.md index 1504696..694f17e 100644 --- a/terraform/aws/pipeline/default/README.md +++ b/terraform/aws/pipeline/default/README.md @@ -18,24 +18,24 @@ |------|--------|---------| | [bad\_1\_stream](#module\_bad\_1\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | | [bad\_2\_stream](#module\_bad\_2\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [collector\_kinesis](#module\_collector\_kinesis) | snowplow-devops/collector-kinesis-ec2/aws | 0.8.1 | +| [collector\_kinesis](#module\_collector\_kinesis) | snowplow-devops/collector-kinesis-ec2/aws | 0.9.0 | | [collector\_lb](#module\_collector\_lb) | snowplow-devops/alb/aws | 0.2.0 | -| [db\_loader](#module\_db\_loader) | snowplow-devops/databricks-loader-ec2/aws | 0.1.3 | -| [db\_transformer\_wrp](#module\_db\_transformer\_wrp) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | -| [enrich\_kinesis](#module\_enrich\_kinesis) | snowplow-devops/enrich-kinesis-ec2/aws | 0.5.3 | +| [db\_loader](#module\_db\_loader) | snowplow-devops/databricks-loader-ec2/aws | 0.2.0 | +| [db\_transformer\_wrp](#module\_db\_transformer\_wrp) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | +| [enrich\_kinesis](#module\_enrich\_kinesis) | snowplow-devops/enrich-kinesis-ec2/aws | 0.6.0 | | [enriched\_stream](#module\_enriched\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.4.3 | -| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.4.3 | +| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.5.0 | +| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.5.0 | | [postgres\_loader\_rds](#module\_postgres\_loader\_rds) | snowplow-devops/rds/aws | 0.4.0 | | [raw\_stream](#module\_raw\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [rs\_loader](#module\_rs\_loader) | snowplow-devops/redshift-loader-ec2/aws | 0.1.4 | -| [rs\_transformer\_stsv](#module\_rs\_transformer\_stsv) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | -| [s3\_loader\_bad](#module\_s3\_loader\_bad) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | -| [s3\_loader\_enriched](#module\_s3\_loader\_enriched) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | -| [s3\_loader\_raw](#module\_s3\_loader\_raw) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | +| [rs\_loader](#module\_rs\_loader) | snowplow-devops/redshift-loader-ec2/aws | 0.2.0 | +| [rs\_transformer\_stsv](#module\_rs\_transformer\_stsv) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | +| [s3\_loader\_bad](#module\_s3\_loader\_bad) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | +| [s3\_loader\_enriched](#module\_s3\_loader\_enriched) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | +| [s3\_loader\_raw](#module\_s3\_loader\_raw) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | | [s3\_pipeline\_bucket](#module\_s3\_pipeline\_bucket) | snowplow-devops/s3-bucket/aws | 0.2.0 | -| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-ec2/aws | 0.2.4 | -| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | +| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-ec2/aws | 0.3.0 | +| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | ## Resources @@ -59,6 +59,7 @@ | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [ssh\_public\_key](#input\_ssh\_public\_key) | The SSH public key to use for the deployment | `string` | n/a | yes | | [vpc\_id](#input\_vpc\_id) | The VPC to deploy the components within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [cloudwatch\_logs\_enabled](#input\_cloudwatch\_logs\_enabled) | Whether application logs should be reported to CloudWatch | `bool` | `true` | no | | [cloudwatch\_logs\_retention\_days](#input\_cloudwatch\_logs\_retention\_days) | The length of time in days to retain logs for | `number` | `7` | no | | [databricks\_auth\_token](#input\_databricks\_auth\_token) | Databricks deltalake auth token | `string` | `""` | no | diff --git a/terraform/aws/pipeline/default/main.tf b/terraform/aws/pipeline/default/main.tf index 8ed4472..02348fc 100644 --- a/terraform/aws/pipeline/default/main.tf +++ b/terraform/aws/pipeline/default/main.tf @@ -86,7 +86,9 @@ module "collector_lb" { module "collector_kinesis" { source = "snowplow-devops/collector-kinesis-ec2/aws" - version = "0.8.1" + version = "0.9.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-collector-server" vpc_id = var.vpc_id @@ -114,7 +116,9 @@ module "collector_kinesis" { # 3. Deploy Enrichment module "enrich_kinesis" { source = "snowplow-devops/enrich-kinesis-ec2/aws" - version = "0.5.3" + version = "0.6.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-enrich-server" vpc_id = var.vpc_id diff --git a/terraform/aws/pipeline/default/target_amazon_s3.tf b/terraform/aws/pipeline/default/target_amazon_s3.tf index e413730..e6dae32 100644 --- a/terraform/aws/pipeline/default/target_amazon_s3.tf +++ b/terraform/aws/pipeline/default/target_amazon_s3.tf @@ -1,6 +1,8 @@ module "s3_loader_raw" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_raw_enabled ? 1 : 0 @@ -30,7 +32,9 @@ module "s3_loader_raw" { module "s3_loader_bad" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_bad_enabled ? 1 : 0 @@ -63,7 +67,9 @@ module "s3_loader_bad" { module "s3_loader_enriched" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_enriched_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/default/target_databricks.tf b/terraform/aws/pipeline/default/target_databricks.tf index 7264e68..a92b8c8 100644 --- a/terraform/aws/pipeline/default/target_databricks.tf +++ b/terraform/aws/pipeline/default/target_databricks.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "db_message_queue" { module "db_transformer_wrp" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.databricks_enabled ? 1 : 0 @@ -46,7 +48,9 @@ module "db_transformer_wrp" { module "db_loader" { source = "snowplow-devops/databricks-loader-ec2/aws" - version = "0.1.3" + version = "0.2.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.databricks_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/default/target_postgres.tf b/terraform/aws/pipeline/default/target_postgres.tf index c8d62cb..8f57f3c 100644 --- a/terraform/aws/pipeline/default/target_postgres.tf +++ b/terraform/aws/pipeline/default/target_postgres.tf @@ -19,7 +19,9 @@ module "postgres_loader_rds" { module "postgres_loader_enriched" { source = "snowplow-devops/postgres-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 @@ -59,7 +61,9 @@ module "postgres_loader_enriched" { module "postgres_loader_bad" { source = "snowplow-devops/postgres-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/default/target_redshift.tf b/terraform/aws/pipeline/default/target_redshift.tf index 53d9790..f9944bc 100644 --- a/terraform/aws/pipeline/default/target_redshift.tf +++ b/terraform/aws/pipeline/default/target_redshift.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "rs_message_queue" { module "rs_transformer_stsv" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.redshift_enabled ? 1 : 0 @@ -46,7 +48,9 @@ module "rs_transformer_stsv" { module "rs_loader" { source = "snowplow-devops/redshift-loader-ec2/aws" - version = "0.1.4" + version = "0.2.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.redshift_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/default/target_snowflake.tf b/terraform/aws/pipeline/default/target_snowflake.tf index 2340294..e7acce4 100644 --- a/terraform/aws/pipeline/default/target_snowflake.tf +++ b/terraform/aws/pipeline/default/target_snowflake.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "sf_message_queue" { module "sf_transformer_wrj" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 @@ -46,7 +48,9 @@ module "sf_transformer_wrj" { module "sf_loader" { source = "snowplow-devops/snowflake-loader-ec2/aws" - version = "0.2.4" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/default/terraform.tfvars b/terraform/aws/pipeline/default/terraform.tfvars index 2fc22e4..1c48703 100644 --- a/terraform/aws/pipeline/default/terraform.tfvars +++ b/terraform/aws/pipeline/default/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/aws/pipeline/default/variables.tf b/terraform/aws/pipeline/default/variables.tf index 22b8402..397caab 100644 --- a/terraform/aws/pipeline/default/variables.tf +++ b/terraform/aws/pipeline/default/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/aws/pipeline/secure/README.md b/terraform/aws/pipeline/secure/README.md index 9bf954b..5773ec3 100644 --- a/terraform/aws/pipeline/secure/README.md +++ b/terraform/aws/pipeline/secure/README.md @@ -18,24 +18,24 @@ |------|--------|---------| | [bad\_1\_stream](#module\_bad\_1\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | | [bad\_2\_stream](#module\_bad\_2\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [collector\_kinesis](#module\_collector\_kinesis) | snowplow-devops/collector-kinesis-ec2/aws | 0.8.1 | +| [collector\_kinesis](#module\_collector\_kinesis) | snowplow-devops/collector-kinesis-ec2/aws | 0.9.0 | | [collector\_lb](#module\_collector\_lb) | snowplow-devops/alb/aws | 0.2.0 | -| [db\_loader](#module\_db\_loader) | snowplow-devops/databricks-loader-ec2/aws | 0.1.3 | -| [db\_transformer\_wrp](#module\_db\_transformer\_wrp) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | -| [enrich\_kinesis](#module\_enrich\_kinesis) | snowplow-devops/enrich-kinesis-ec2/aws | 0.5.3 | +| [db\_loader](#module\_db\_loader) | snowplow-devops/databricks-loader-ec2/aws | 0.2.0 | +| [db\_transformer\_wrp](#module\_db\_transformer\_wrp) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | +| [enrich\_kinesis](#module\_enrich\_kinesis) | snowplow-devops/enrich-kinesis-ec2/aws | 0.6.0 | | [enriched\_stream](#module\_enriched\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.4.3 | -| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.4.3 | +| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.5.0 | +| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-kinesis-ec2/aws | 0.5.0 | | [postgres\_loader\_rds](#module\_postgres\_loader\_rds) | snowplow-devops/rds/aws | 0.4.0 | | [raw\_stream](#module\_raw\_stream) | snowplow-devops/kinesis-stream/aws | 0.3.0 | -| [rs\_loader](#module\_rs\_loader) | snowplow-devops/redshift-loader-ec2/aws | 0.1.4 | -| [rs\_transformer\_stsv](#module\_rs\_transformer\_stsv) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | -| [s3\_loader\_bad](#module\_s3\_loader\_bad) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | -| [s3\_loader\_enriched](#module\_s3\_loader\_enriched) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | -| [s3\_loader\_raw](#module\_s3\_loader\_raw) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.4.3 | +| [rs\_loader](#module\_rs\_loader) | snowplow-devops/redshift-loader-ec2/aws | 0.2.0 | +| [rs\_transformer\_stsv](#module\_rs\_transformer\_stsv) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | +| [s3\_loader\_bad](#module\_s3\_loader\_bad) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | +| [s3\_loader\_enriched](#module\_s3\_loader\_enriched) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | +| [s3\_loader\_raw](#module\_s3\_loader\_raw) | snowplow-devops/s3-loader-kinesis-ec2/aws | 0.5.0 | | [s3\_pipeline\_bucket](#module\_s3\_pipeline\_bucket) | snowplow-devops/s3-bucket/aws | 0.2.0 | -| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-ec2/aws | 0.2.4 | -| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-kinesis-ec2/aws | 0.3.9 | +| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-ec2/aws | 0.3.0 | +| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-kinesis-ec2/aws | 0.4.0 | ## Resources @@ -60,6 +60,7 @@ | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [ssh\_public\_key](#input\_ssh\_public\_key) | The SSH public key to use for the deployment | `string` | n/a | yes | | [vpc\_id](#input\_vpc\_id) | The VPC to deploy the components within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [cloudwatch\_logs\_enabled](#input\_cloudwatch\_logs\_enabled) | Whether application logs should be reported to CloudWatch | `bool` | `true` | no | | [cloudwatch\_logs\_retention\_days](#input\_cloudwatch\_logs\_retention\_days) | The length of time in days to retain logs for | `number` | `7` | no | | [databricks\_auth\_token](#input\_databricks\_auth\_token) | Databricks deltalake auth token | `string` | `""` | no | diff --git a/terraform/aws/pipeline/secure/main.tf b/terraform/aws/pipeline/secure/main.tf index 9e3683d..f361e14 100644 --- a/terraform/aws/pipeline/secure/main.tf +++ b/terraform/aws/pipeline/secure/main.tf @@ -86,7 +86,9 @@ module "collector_lb" { module "collector_kinesis" { source = "snowplow-devops/collector-kinesis-ec2/aws" - version = "0.8.1" + version = "0.9.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-collector-server" vpc_id = var.vpc_id @@ -116,7 +118,9 @@ module "collector_kinesis" { # 3. Deploy Enrichment module "enrich_kinesis" { source = "snowplow-devops/enrich-kinesis-ec2/aws" - version = "0.5.3" + version = "0.6.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-enrich-server" vpc_id = var.vpc_id diff --git a/terraform/aws/pipeline/secure/target_amazon_s3.tf b/terraform/aws/pipeline/secure/target_amazon_s3.tf index fc49e34..89254e4 100644 --- a/terraform/aws/pipeline/secure/target_amazon_s3.tf +++ b/terraform/aws/pipeline/secure/target_amazon_s3.tf @@ -1,6 +1,8 @@ module "s3_loader_raw" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_raw_enabled ? 1 : 0 @@ -32,7 +34,9 @@ module "s3_loader_raw" { module "s3_loader_bad" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_bad_enabled ? 1 : 0 @@ -67,7 +71,9 @@ module "s3_loader_bad" { module "s3_loader_enriched" { source = "snowplow-devops/s3-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.s3_enriched_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/secure/target_databricks.tf b/terraform/aws/pipeline/secure/target_databricks.tf index d5ce29d..33304c6 100644 --- a/terraform/aws/pipeline/secure/target_databricks.tf +++ b/terraform/aws/pipeline/secure/target_databricks.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "db_message_queue" { module "db_transformer_wrp" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.databricks_enabled ? 1 : 0 @@ -48,7 +50,9 @@ module "db_transformer_wrp" { module "db_loader" { source = "snowplow-devops/databricks-loader-ec2/aws" - version = "0.1.3" + version = "0.2.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.databricks_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/secure/target_postgres.tf b/terraform/aws/pipeline/secure/target_postgres.tf index 722db8d..2c18e62 100644 --- a/terraform/aws/pipeline/secure/target_postgres.tf +++ b/terraform/aws/pipeline/secure/target_postgres.tf @@ -19,7 +19,9 @@ module "postgres_loader_rds" { module "postgres_loader_enriched" { source = "snowplow-devops/postgres-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 @@ -61,7 +63,9 @@ module "postgres_loader_enriched" { module "postgres_loader_bad" { source = "snowplow-devops/postgres-loader-kinesis-ec2/aws" - version = "0.4.3" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/secure/target_redshift.tf b/terraform/aws/pipeline/secure/target_redshift.tf index 2b7ecb5..a4e8244 100644 --- a/terraform/aws/pipeline/secure/target_redshift.tf +++ b/terraform/aws/pipeline/secure/target_redshift.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "rs_message_queue" { module "rs_transformer_stsv" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.redshift_enabled ? 1 : 0 @@ -48,7 +50,9 @@ module "rs_transformer_stsv" { module "rs_loader" { source = "snowplow-devops/redshift-loader-ec2/aws" - version = "0.1.4" + version = "0.2.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.redshift_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/secure/target_snowflake.tf b/terraform/aws/pipeline/secure/target_snowflake.tf index 30c4d41..b7aa2fa 100644 --- a/terraform/aws/pipeline/secure/target_snowflake.tf +++ b/terraform/aws/pipeline/secure/target_snowflake.tf @@ -9,7 +9,9 @@ resource "aws_sqs_queue" "sf_message_queue" { module "sf_transformer_wrj" { source = "snowplow-devops/transformer-kinesis-ec2/aws" - version = "0.3.9" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 @@ -48,7 +50,9 @@ module "sf_transformer_wrj" { module "sf_loader" { source = "snowplow-devops/snowflake-loader-ec2/aws" - version = "0.2.4" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 diff --git a/terraform/aws/pipeline/secure/terraform.tfvars b/terraform/aws/pipeline/secure/terraform.tfvars index 88f1278..96e1a31 100644 --- a/terraform/aws/pipeline/secure/terraform.tfvars +++ b/terraform/aws/pipeline/secure/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/aws/pipeline/secure/variables.tf b/terraform/aws/pipeline/secure/variables.tf index 5d992ea..9387b97 100644 --- a/terraform/aws/pipeline/secure/variables.tf +++ b/terraform/aws/pipeline/secure/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/azure/iglu_server/README.md b/terraform/azure/iglu_server/README.md index a6fc7ef..1959c13 100644 --- a/terraform/azure/iglu_server/README.md +++ b/terraform/azure/iglu_server/README.md @@ -15,7 +15,7 @@ No providers. |------|--------|---------| | [iglu\_db](#module\_iglu\_db) | snowplow-devops/postgresql-server/azurerm | 0.1.1 | | [iglu\_lb](#module\_iglu\_lb) | snowplow-devops/lb/azurerm | 0.2.0 | -| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-vmss/azurerm | 0.1.1 | +| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-vmss/azurerm | 0.2.0 | ## Resources @@ -35,6 +35,7 @@ No resources. | [ssh\_public\_key](#input\_ssh\_public\_key) | The SSH public key to use for the deployment | `string` | n/a | yes | | [subnet\_id\_lb](#input\_subnet\_id\_lb) | The ID of the subnet to deploy the load balancer into (e.g. iglu-agw1) | `string` | n/a | yes | | [subnet\_id\_servers](#input\_subnet\_id\_servers) | The ID of the subnet to deploy the servers into (e.g. iglu1) | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [iglu\_db\_ip\_allowlist](#input\_iglu\_db\_ip\_allowlist) | An optional list of CIDR ranges to allow traffic from | `list(any)` | `[]` | no | | [ssl\_information](#input\_ssl\_information) | SSL certificate information to optionally bind to the load balancer |
object({
enabled = bool
data = string
password = string
})
|
{
"data": "",
"enabled": false,
"password": ""
}
| no | | [tags](#input\_tags) | The tags to append to the resources in this module | `map(string)` | `{}` | no | diff --git a/terraform/azure/iglu_server/main.tf b/terraform/azure/iglu_server/main.tf index e15f802..2c7cfc8 100644 --- a/terraform/azure/iglu_server/main.tf +++ b/terraform/azure/iglu_server/main.tf @@ -35,7 +35,9 @@ module "iglu_lb" { module "iglu_server" { source = "snowplow-devops/iglu-server-vmss/azurerm" - version = "0.1.1" + version = "0.2.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-iglu-server" resource_group_name = var.resource_group_name diff --git a/terraform/azure/iglu_server/terraform.tfvars b/terraform/azure/iglu_server/terraform.tfvars index aa2708e..c3cbb1f 100644 --- a/terraform/azure/iglu_server/terraform.tfvars +++ b/terraform/azure/iglu_server/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "snowplow" diff --git a/terraform/azure/iglu_server/variables.tf b/terraform/azure/iglu_server/variables.tf index db93ff8..7459a6b 100644 --- a/terraform/azure/iglu_server/variables.tf +++ b/terraform/azure/iglu_server/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/azure/pipeline/README.md b/terraform/azure/pipeline/README.md index d3e347b..63199d5 100644 --- a/terraform/azure/pipeline/README.md +++ b/terraform/azure/pipeline/README.md @@ -14,18 +14,18 @@ No providers. | Name | Source | Version | |------|--------|---------| | [bad\_1\_eh\_topic](#module\_bad\_1\_eh\_topic) | snowplow-devops/event-hub/azurerm | 0.1.1 | -| [collector\_eh](#module\_collector\_eh) | snowplow-devops/collector-event-hub-vmss/azurerm | 0.2.1 | +| [collector\_eh](#module\_collector\_eh) | snowplow-devops/collector-event-hub-vmss/azurerm | 0.3.0 | | [collector\_lb](#module\_collector\_lb) | snowplow-devops/lb/azurerm | 0.2.0 | | [eh\_namespace](#module\_eh\_namespace) | snowplow-devops/event-hub-namespace/azurerm | 0.1.1 | -| [enrich\_eh](#module\_enrich\_eh) | snowplow-devops/enrich-event-hub-vmss/azurerm | 0.2.1 | +| [enrich\_eh](#module\_enrich\_eh) | snowplow-devops/enrich-event-hub-vmss/azurerm | 0.3.0 | | [enriched\_eh\_topic](#module\_enriched\_eh\_topic) | snowplow-devops/event-hub/azurerm | 0.1.1 | -| [lake\_loader](#module\_lake\_loader) | snowplow-devops/lake-loader-vmss/azurerm | 0.2.1 | +| [lake\_loader](#module\_lake\_loader) | snowplow-devops/lake-loader-vmss/azurerm | 0.3.0 | | [lake\_storage\_container](#module\_lake\_storage\_container) | snowplow-devops/storage-container/azurerm | 0.1.1 | | [raw\_eh\_topic](#module\_raw\_eh\_topic) | snowplow-devops/event-hub/azurerm | 0.1.1 | -| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-vmss/azurerm | 0.2.1 | +| [sf\_loader](#module\_sf\_loader) | snowplow-devops/snowflake-loader-vmss/azurerm | 0.3.0 | | [sf\_message\_queue\_eh\_topic](#module\_sf\_message\_queue\_eh\_topic) | snowplow-devops/event-hub/azurerm | 0.1.1 | | [sf\_transformer\_storage\_container](#module\_sf\_transformer\_storage\_container) | snowplow-devops/storage-container/azurerm | 0.1.1 | -| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-event-hub-vmss/azurerm | 0.2.1 | +| [sf\_transformer\_wrj](#module\_sf\_transformer\_wrj) | snowplow-devops/transformer-event-hub-vmss/azurerm | 0.3.0 | | [storage\_account](#module\_storage\_account) | snowplow-devops/storage-account/azurerm | 0.1.2 | ## Resources @@ -45,6 +45,7 @@ No resources. | [storage\_account\_name](#input\_storage\_account\_name) | The name of the Storage Account the data will be loaded into | `string` | n/a | yes | | [subnet\_id\_lb](#input\_subnet\_id\_lb) | The ID of the subnet to deploy the load balancer into (e.g. collector-agw1) | `string` | n/a | yes | | [subnet\_id\_servers](#input\_subnet\_id\_servers) | The ID of the subnet to deploy the servers into (e.g. pipeline1) | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [confluent\_cloud\_api\_key](#input\_confluent\_cloud\_api\_key) | Confluent Cloud API Key | `string` | `""` | no | | [confluent\_cloud\_api\_secret](#input\_confluent\_cloud\_api\_secret) | Confluent Cloud API Secret | `string` | `""` | no | | [confluent\_cloud\_bad\_1\_topic\_name](#input\_confluent\_cloud\_bad\_1\_topic\_name) | Confluent Cloud 'bad-1' topic name | `string` | `"bad-1"` | no | diff --git a/terraform/azure/pipeline/main.tf b/terraform/azure/pipeline/main.tf index f742c5c..9bd65e1 100644 --- a/terraform/azure/pipeline/main.tf +++ b/terraform/azure/pipeline/main.tf @@ -111,7 +111,9 @@ module "collector_lb" { module "collector_eh" { source = "snowplow-devops/collector-event-hub-vmss/azurerm" - version = "0.2.1" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-collector" resource_group_name = var.resource_group_name @@ -124,11 +126,13 @@ module "collector_eh" { ssh_public_key = var.ssh_public_key ssh_ip_allowlist = var.ssh_ip_allowlist - good_topic_name = local.raw_topic_name - bad_topic_name = local.bad_1_topic_name - kafka_brokers = local.kafka_brokers - kafka_username = local.kafka_username - kafka_password = local.use_azure_event_hubs ? join("", module.eh_namespace.*.read_write_primary_connection_string) : var.confluent_cloud_api_secret + good_topic_name = local.raw_topic_name + good_topic_kafka_username = local.kafka_username + good_topic_kafka_password = local.use_azure_event_hubs ? join("", module.raw_eh_topic.*.read_write_primary_connection_string) : var.confluent_cloud_api_secret + bad_topic_name = local.bad_1_topic_name + bad_topic_kafka_username = local.kafka_username + bad_topic_kafka_password = local.use_azure_event_hubs ? join("", module.bad_1_eh_topic.*.read_write_primary_connection_string) : var.confluent_cloud_api_secret + kafka_brokers = local.kafka_brokers kafka_source = var.stream_type @@ -141,7 +145,9 @@ module "collector_eh" { # 4. Deploy Enrich stack module "enrich_eh" { source = "snowplow-devops/enrich-event-hub-vmss/azurerm" - version = "0.2.1" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-enrich" resource_group_name = var.resource_group_name diff --git a/terraform/azure/pipeline/target_lake_loader.tf b/terraform/azure/pipeline/target_lake_loader.tf index d29cb49..81e1207 100644 --- a/terraform/azure/pipeline/target_lake_loader.tf +++ b/terraform/azure/pipeline/target_lake_loader.tf @@ -10,7 +10,9 @@ module "lake_storage_container" { module "lake_loader" { source = "snowplow-devops/lake-loader-vmss/azurerm" - version = "0.2.1" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.lake_enabled ? 1 : 0 diff --git a/terraform/azure/pipeline/target_snowflake.tf b/terraform/azure/pipeline/target_snowflake.tf index b268965..cfd802a 100644 --- a/terraform/azure/pipeline/target_snowflake.tf +++ b/terraform/azure/pipeline/target_snowflake.tf @@ -25,7 +25,9 @@ module "sf_transformer_storage_container" { module "sf_transformer_wrj" { source = "snowplow-devops/transformer-event-hub-vmss/azurerm" - version = "0.2.1" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 @@ -65,7 +67,9 @@ module "sf_transformer_wrj" { module "sf_loader" { source = "snowplow-devops/snowflake-loader-vmss/azurerm" - version = "0.2.1" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.snowflake_enabled ? 1 : 0 diff --git a/terraform/azure/pipeline/terraform.tfvars b/terraform/azure/pipeline/terraform.tfvars index d5ebcd6..2bfd17d 100644 --- a/terraform/azure/pipeline/terraform.tfvars +++ b/terraform/azure/pipeline/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "snowplow" diff --git a/terraform/azure/pipeline/variables.tf b/terraform/azure/pipeline/variables.tf index d6f858c..a984885 100644 --- a/terraform/azure/pipeline/variables.tf +++ b/terraform/azure/pipeline/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/gcp/iglu_server/default/README.md b/terraform/gcp/iglu_server/default/README.md index b21f7de..ff6631f 100644 --- a/terraform/gcp/iglu_server/default/README.md +++ b/terraform/gcp/iglu_server/default/README.md @@ -16,7 +16,7 @@ No providers. |------|--------|---------| | [iglu\_db](#module\_iglu\_db) | snowplow-devops/cloud-sql/google | 0.3.0 | | [iglu\_lb](#module\_iglu\_lb) | snowplow-devops/lb/google | 0.3.0 | -| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ce/google | 0.4.0 | +| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ce/google | 0.5.0 | ## Resources @@ -36,6 +36,7 @@ No resources. | [region](#input\_region) | The name of the region to deploy within | `string` | n/a | yes | | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [subnetwork](#input\_subnetwork) | The name of the sub-network to deploy within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [labels](#input\_labels) | The labels to append to the resources in this module | `map(string)` | `{}` | no | | [ssh\_key\_pairs](#input\_ssh\_key\_pairs) | The list of SSH key-pairs to add to the servers |
list(object({
user_name = string
public_key = string
}))
| `[]` | no | | [ssl\_information](#input\_ssl\_information) | The ID of an Google Managed certificate to bind to the load balancer |
object({
enabled = bool
certificate_id = string
})
|
{
"certificate_id": "",
"enabled": false
}
| no | diff --git a/terraform/gcp/iglu_server/default/main.tf b/terraform/gcp/iglu_server/default/main.tf index f50d9a6..4811f48 100644 --- a/terraform/gcp/iglu_server/default/main.tf +++ b/terraform/gcp/iglu_server/default/main.tf @@ -19,7 +19,9 @@ module "iglu_db" { module "iglu_server" { source = "snowplow-devops/iglu-server-ce/google" - version = "0.4.0" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-iglu-server" diff --git a/terraform/gcp/iglu_server/default/terraform.tfvars b/terraform/gcp/iglu_server/default/terraform.tfvars index 69ec6f3..88a3b72 100644 --- a/terraform/gcp/iglu_server/default/terraform.tfvars +++ b/terraform/gcp/iglu_server/default/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/gcp/iglu_server/default/variables.tf b/terraform/gcp/iglu_server/default/variables.tf index a1e3404..be76165 100644 --- a/terraform/gcp/iglu_server/default/variables.tf +++ b/terraform/gcp/iglu_server/default/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/gcp/iglu_server/secure/README.md b/terraform/gcp/iglu_server/secure/README.md index b21f7de..ff6631f 100644 --- a/terraform/gcp/iglu_server/secure/README.md +++ b/terraform/gcp/iglu_server/secure/README.md @@ -16,7 +16,7 @@ No providers. |------|--------|---------| | [iglu\_db](#module\_iglu\_db) | snowplow-devops/cloud-sql/google | 0.3.0 | | [iglu\_lb](#module\_iglu\_lb) | snowplow-devops/lb/google | 0.3.0 | -| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ce/google | 0.4.0 | +| [iglu\_server](#module\_iglu\_server) | snowplow-devops/iglu-server-ce/google | 0.5.0 | ## Resources @@ -36,6 +36,7 @@ No resources. | [region](#input\_region) | The name of the region to deploy within | `string` | n/a | yes | | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [subnetwork](#input\_subnetwork) | The name of the sub-network to deploy within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [labels](#input\_labels) | The labels to append to the resources in this module | `map(string)` | `{}` | no | | [ssh\_key\_pairs](#input\_ssh\_key\_pairs) | The list of SSH key-pairs to add to the servers |
list(object({
user_name = string
public_key = string
}))
| `[]` | no | | [ssl\_information](#input\_ssl\_information) | The ID of an Google Managed certificate to bind to the load balancer |
object({
enabled = bool
certificate_id = string
})
|
{
"certificate_id": "",
"enabled": false
}
| no | diff --git a/terraform/gcp/iglu_server/secure/main.tf b/terraform/gcp/iglu_server/secure/main.tf index 3255a14..c9bedb7 100644 --- a/terraform/gcp/iglu_server/secure/main.tf +++ b/terraform/gcp/iglu_server/secure/main.tf @@ -19,7 +19,9 @@ module "iglu_db" { module "iglu_server" { source = "snowplow-devops/iglu-server-ce/google" - version = "0.4.0" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-iglu-server" diff --git a/terraform/gcp/iglu_server/secure/terraform.tfvars b/terraform/gcp/iglu_server/secure/terraform.tfvars index 04f31d6..1d489ff 100644 --- a/terraform/gcp/iglu_server/secure/terraform.tfvars +++ b/terraform/gcp/iglu_server/secure/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/gcp/iglu_server/secure/variables.tf b/terraform/gcp/iglu_server/secure/variables.tf index a1e3404..be76165 100644 --- a/terraform/gcp/iglu_server/secure/variables.tf +++ b/terraform/gcp/iglu_server/secure/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/gcp/pipeline/default/README.md b/terraform/gcp/pipeline/default/README.md index 6e858c1..5e792da 100644 --- a/terraform/gcp/pipeline/default/README.md +++ b/terraform/gcp/pipeline/default/README.md @@ -17,15 +17,15 @@ | Name | Source | Version | |------|--------|---------| | [bad\_1\_topic](#module\_bad\_1\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | -| [bigquery\_loader](#module\_bigquery\_loader) | snowplow-devops/bigquery-loader-pubsub-ce/google | 0.2.0 | +| [bigquery\_loader](#module\_bigquery\_loader) | snowplow-devops/bigquery-loader-pubsub-ce/google | 0.3.0 | | [bq\_bad\_rows\_topic](#module\_bq\_bad\_rows\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | | [collector\_lb](#module\_collector\_lb) | snowplow-devops/lb/google | 0.3.0 | -| [collector\_pubsub](#module\_collector\_pubsub) | snowplow-devops/collector-pubsub-ce/google | 0.4.0 | -| [enrich\_pubsub](#module\_enrich\_pubsub) | snowplow-devops/enrich-pubsub-ce/google | 0.2.0 | +| [collector\_pubsub](#module\_collector\_pubsub) | snowplow-devops/collector-pubsub-ce/google | 0.5.0 | +| [enrich\_pubsub](#module\_enrich\_pubsub) | snowplow-devops/enrich-pubsub-ce/google | 0.3.0 | | [enriched\_topic](#module\_enriched\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | | [postgres\_db](#module\_postgres\_db) | snowplow-devops/cloud-sql/google | 0.3.0 | -| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.3.0 | -| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.3.0 | +| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.4.0 | +| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.4.0 | | [raw\_topic](#module\_raw\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | ## Resources @@ -50,6 +50,7 @@ | [region](#input\_region) | The name of the region to deploy within | `string` | n/a | yes | | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [subnetwork](#input\_subnetwork) | The name of the sub-network to deploy within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [bigquery\_db\_enabled](#input\_bigquery\_db\_enabled) | Whether to enable loading into a BigQuery Dataset | `bool` | `false` | no | | [bigquery\_loader\_dead\_letter\_bucket\_deploy](#input\_bigquery\_loader\_dead\_letter\_bucket\_deploy) | Whether this module should create a new bucket with the specified name - if the bucket already exists set this to false | `bool` | `true` | no | | [bigquery\_loader\_dead\_letter\_bucket\_name](#input\_bigquery\_loader\_dead\_letter\_bucket\_name) | The name of the GCS bucket to use for dead-letter output of loader | `string` | `""` | no | diff --git a/terraform/gcp/pipeline/default/main.tf b/terraform/gcp/pipeline/default/main.tf index 777c132..f98fdd5 100644 --- a/terraform/gcp/pipeline/default/main.tf +++ b/terraform/gcp/pipeline/default/main.tf @@ -46,7 +46,9 @@ module "enriched_topic" { # 2. Deploy Collector stack module "collector_pubsub" { source = "snowplow-devops/collector-pubsub-ce/google" - version = "0.4.0" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-collector" @@ -86,7 +88,9 @@ module "collector_lb" { # 3. Deploy Enrichment module "enrich_pubsub" { source = "snowplow-devops/enrich-pubsub-ce/google" - version = "0.2.0" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-enrich" diff --git a/terraform/gcp/pipeline/default/target_bigquery.tf b/terraform/gcp/pipeline/default/target_bigquery.tf index 3f2e6e2..742d18f 100644 --- a/terraform/gcp/pipeline/default/target_bigquery.tf +++ b/terraform/gcp/pipeline/default/target_bigquery.tf @@ -37,7 +37,9 @@ locals { module "bigquery_loader" { source = "snowplow-devops/bigquery-loader-pubsub-ce/google" - version = "0.2.0" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.bigquery_db_enabled ? 1 : 0 diff --git a/terraform/gcp/pipeline/default/target_postgres.tf b/terraform/gcp/pipeline/default/target_postgres.tf index 5df8a62..15e5093 100644 --- a/terraform/gcp/pipeline/default/target_postgres.tf +++ b/terraform/gcp/pipeline/default/target_postgres.tf @@ -20,7 +20,9 @@ module "postgres_db" { module "postgres_loader_enriched" { source = "snowplow-devops/postgres-loader-pubsub-ce/google" - version = "0.3.0" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 @@ -55,7 +57,9 @@ module "postgres_loader_enriched" { module "postgres_loader_bad" { source = "snowplow-devops/postgres-loader-pubsub-ce/google" - version = "0.3.0" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 diff --git a/terraform/gcp/pipeline/default/terraform.tfvars b/terraform/gcp/pipeline/default/terraform.tfvars index fe58814..cc38f66 100644 --- a/terraform/gcp/pipeline/default/terraform.tfvars +++ b/terraform/gcp/pipeline/default/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/gcp/pipeline/default/variables.tf b/terraform/gcp/pipeline/default/variables.tf index 269727a..498cf19 100644 --- a/terraform/gcp/pipeline/default/variables.tf +++ b/terraform/gcp/pipeline/default/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string diff --git a/terraform/gcp/pipeline/secure/README.md b/terraform/gcp/pipeline/secure/README.md index 6e858c1..5e792da 100644 --- a/terraform/gcp/pipeline/secure/README.md +++ b/terraform/gcp/pipeline/secure/README.md @@ -17,15 +17,15 @@ | Name | Source | Version | |------|--------|---------| | [bad\_1\_topic](#module\_bad\_1\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | -| [bigquery\_loader](#module\_bigquery\_loader) | snowplow-devops/bigquery-loader-pubsub-ce/google | 0.2.0 | +| [bigquery\_loader](#module\_bigquery\_loader) | snowplow-devops/bigquery-loader-pubsub-ce/google | 0.3.0 | | [bq\_bad\_rows\_topic](#module\_bq\_bad\_rows\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | | [collector\_lb](#module\_collector\_lb) | snowplow-devops/lb/google | 0.3.0 | -| [collector\_pubsub](#module\_collector\_pubsub) | snowplow-devops/collector-pubsub-ce/google | 0.4.0 | -| [enrich\_pubsub](#module\_enrich\_pubsub) | snowplow-devops/enrich-pubsub-ce/google | 0.2.0 | +| [collector\_pubsub](#module\_collector\_pubsub) | snowplow-devops/collector-pubsub-ce/google | 0.5.0 | +| [enrich\_pubsub](#module\_enrich\_pubsub) | snowplow-devops/enrich-pubsub-ce/google | 0.3.0 | | [enriched\_topic](#module\_enriched\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | | [postgres\_db](#module\_postgres\_db) | snowplow-devops/cloud-sql/google | 0.3.0 | -| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.3.0 | -| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.3.0 | +| [postgres\_loader\_bad](#module\_postgres\_loader\_bad) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.4.0 | +| [postgres\_loader\_enriched](#module\_postgres\_loader\_enriched) | snowplow-devops/postgres-loader-pubsub-ce/google | 0.4.0 | | [raw\_topic](#module\_raw\_topic) | snowplow-devops/pubsub-topic/google | 0.3.0 | ## Resources @@ -50,6 +50,7 @@ | [region](#input\_region) | The name of the region to deploy within | `string` | n/a | yes | | [ssh\_ip\_allowlist](#input\_ssh\_ip\_allowlist) | The list of CIDR ranges to allow SSH traffic from | `list(any)` | n/a | yes | | [subnetwork](#input\_subnetwork) | The name of the sub-network to deploy within | `string` | n/a | yes | +| [accept\_limited\_use\_license](#input\_accept\_limited\_use\_license) | Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/) | `bool` | `false` | no | | [bigquery\_db\_enabled](#input\_bigquery\_db\_enabled) | Whether to enable loading into a BigQuery Dataset | `bool` | `false` | no | | [bigquery\_loader\_dead\_letter\_bucket\_deploy](#input\_bigquery\_loader\_dead\_letter\_bucket\_deploy) | Whether this module should create a new bucket with the specified name - if the bucket already exists set this to false | `bool` | `true` | no | | [bigquery\_loader\_dead\_letter\_bucket\_name](#input\_bigquery\_loader\_dead\_letter\_bucket\_name) | The name of the GCS bucket to use for dead-letter output of loader | `string` | `""` | no | diff --git a/terraform/gcp/pipeline/secure/main.tf b/terraform/gcp/pipeline/secure/main.tf index 789a356..655db3c 100644 --- a/terraform/gcp/pipeline/secure/main.tf +++ b/terraform/gcp/pipeline/secure/main.tf @@ -46,7 +46,9 @@ module "enriched_topic" { # 2. Deploy Collector stack module "collector_pubsub" { source = "snowplow-devops/collector-pubsub-ce/google" - version = "0.4.0" + version = "0.5.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-collector" @@ -88,7 +90,9 @@ module "collector_lb" { # 3. Deploy Enrichment module "enrich_pubsub" { source = "snowplow-devops/enrich-pubsub-ce/google" - version = "0.2.0" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license name = "${var.prefix}-enrich" diff --git a/terraform/gcp/pipeline/secure/target_bigquery.tf b/terraform/gcp/pipeline/secure/target_bigquery.tf index dd930e9..dc768f4 100644 --- a/terraform/gcp/pipeline/secure/target_bigquery.tf +++ b/terraform/gcp/pipeline/secure/target_bigquery.tf @@ -37,7 +37,9 @@ locals { module "bigquery_loader" { source = "snowplow-devops/bigquery-loader-pubsub-ce/google" - version = "0.2.0" + version = "0.3.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.bigquery_db_enabled ? 1 : 0 diff --git a/terraform/gcp/pipeline/secure/target_postgres.tf b/terraform/gcp/pipeline/secure/target_postgres.tf index 052133f..b632ccd 100644 --- a/terraform/gcp/pipeline/secure/target_postgres.tf +++ b/terraform/gcp/pipeline/secure/target_postgres.tf @@ -20,7 +20,9 @@ module "postgres_db" { module "postgres_loader_enriched" { source = "snowplow-devops/postgres-loader-pubsub-ce/google" - version = "0.3.0" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 @@ -57,7 +59,9 @@ module "postgres_loader_enriched" { module "postgres_loader_bad" { source = "snowplow-devops/postgres-loader-pubsub-ce/google" - version = "0.3.0" + version = "0.4.0" + + accept_limited_use_license = var.accept_limited_use_license count = var.postgres_db_enabled ? 1 : 0 diff --git a/terraform/gcp/pipeline/secure/terraform.tfvars b/terraform/gcp/pipeline/secure/terraform.tfvars index 8267274..222038e 100644 --- a/terraform/gcp/pipeline/secure/terraform.tfvars +++ b/terraform/gcp/pipeline/secure/terraform.tfvars @@ -1,3 +1,6 @@ +# Please accept the terms of the Snowplow Limited Use License Agreement to proceed. (https://docs.snowplow.io/limited-use-license-1.0/) +accept_limited_use_license = false + # Will be prefixed to all resource names # Use this to easily identify the resources created and provide entropy for subsequent environments prefix = "sp" diff --git a/terraform/gcp/pipeline/secure/variables.tf b/terraform/gcp/pipeline/secure/variables.tf index 269727a..498cf19 100644 --- a/terraform/gcp/pipeline/secure/variables.tf +++ b/terraform/gcp/pipeline/secure/variables.tf @@ -1,3 +1,14 @@ +variable "accept_limited_use_license" { + description = "Acceptance of the SLULA terms (https://docs.snowplow.io/limited-use-license-1.0/)" + type = bool + default = false + + validation { + condition = var.accept_limited_use_license + error_message = "Please accept the terms of the Snowplow Limited Use License Agreement to proceed." + } +} + variable "prefix" { description = "Will be prefixed to all resource names. Use to easily identify the resources created" type = string