diff --git a/CHANGELOG.md b/CHANGELOG.md index 60e36b6..098953a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,29 +8,45 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.0.2] and [1.3.2] - 2020-11-30 + +### Added + +- Support custom domain names (issue #29) +- Support changing the base number and format specifier used when generating instance names (issue #24) +- Telemetry Streaming extension installed by default (issue #22) + +### Changed + +- Fixed bug installing RPM extensions on BIG-IP v15.1.1 and BIG-IP v15.1.2 (issue #18) +- Fixed bug when declaring complex 'allow-service' requirements (issue #25) +- Bumped Cloud Libraries, AS3, DO, and CFE extensions to latest (issue #22) + +### Removed + ## [2.0.1] and [1.3.1] - 2020-11-18 -## Added +### Added -## Changed +### Changed - Added Terraform 0.12/0.13 notice to main README -## Removed +### Removed ## [2.0.0] and [1.3.0] - 2020-11-18 > First of the parallel Terraform 0.13 and Terraform 0.12 specific releases. -## Added +### Added -## Changed +### Changed - Enforcing Terraform 0.12.x or 0.13.x for 1.x and 2.x releases, respectively - Bumped Google provider to 3.48.0 - Bumped Google IAM module to 6.4.0 -## Removed +### Removed ## [1.2.2] - 2020-11-18 @@ -122,6 +138,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Removed +[2.0.2]: https://github.com/memes/f5-google-terraform-modules/compare/v2.0.1...v2.0.2 +[1.3.2]: https://github.com/memes/f5-google-terraform-modules/compare/v1.3.1...v1.3.2 [2.0.1]: https://github.com/memes/f5-google-terraform-modules/compare/v2.0.0...v2.0.1 [1.3.1]: https://github.com/memes/f5-google-terraform-modules/compare/v1.3.0...v1.3.1 [2.0.0]: https://github.com/memes/f5-google-terraform-modules/compare/v1.2.2...v2.0.0 diff --git a/examples/cfe-2nic-fqdn/main.tf b/examples/cfe-2nic-fqdn/main.tf index 30e4261..6f4417a 100644 --- a/examples/cfe-2nic-fqdn/main.tf +++ b/examples/cfe-2nic-fqdn/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -89,11 +89,8 @@ module "cfe_bucket" { } module "cfe" { - /* TODO: m.emes@f5.com - update with new module version source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" - */ - source = "../../modules/cfe/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/cfe-2nic-hex-offset-fqdn/main.tf b/examples/cfe-2nic-hex-offset-fqdn/main.tf index 4476f81..8ef731e 100644 --- a/examples/cfe-2nic-hex-offset-fqdn/main.tf +++ b/examples/cfe-2nic-hex-offset-fqdn/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -89,11 +89,8 @@ module "cfe_bucket" { } module "cfe" { - /* TODO: m.emes@f5.com - update with new module version source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" - */ - source = "../../modules/cfe/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/cfe-2nic-multi-az/main.tf b/examples/cfe-2nic-multi-az/main.tf index 54416cd..6b68418 100644 --- a/examples/cfe-2nic-multi-az/main.tf +++ b/examples/cfe-2nic-multi-az/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -89,11 +89,8 @@ module "cfe_bucket" { } module "cfe" { - /* TODO: m.emes@f5.com - update with new module version source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" - */ - source = "../../modules/cfe/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = var.zones diff --git a/examples/cfe-2nic/main.tf b/examples/cfe-2nic/main.tf index 5755b09..0559527 100644 --- a/examples/cfe-2nic/main.tf +++ b/examples/cfe-2nic/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -85,11 +85,8 @@ module "cfe_bucket" { } module "cfe" { - /* TODO: m.emes@f5.com - update with new module version source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" - */ - source = "../../modules/cfe/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/cfe-3nic-fqdn-multi-az/main.tf b/examples/cfe-3nic-fqdn-multi-az/main.tf index a3d3079..5e55d98 100644 --- a/examples/cfe-3nic-fqdn-multi-az/main.tf +++ b/examples/cfe-3nic-fqdn-multi-az/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.internal_network @@ -99,11 +99,8 @@ module "cfe_bucket" { } module "cfe" { - /* TODO: m.emes@f5.com - update with new module version source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" - */ - source = "../../modules/cfe/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = var.zones diff --git a/examples/cfe-3nic/main.tf b/examples/cfe-3nic/main.tf index 7c89794..f4129a9 100644 --- a/examples/cfe-3nic/main.tf +++ b/examples/cfe-3nic/main.tf @@ -12,7 +12,7 @@ terraform { # Create a custom CFE role for BIG-IP service account module "cfe_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "project" target_id = var.project_id members = [format("serviceAccount:%s", var.service_account)] @@ -21,7 +21,7 @@ module "cfe_role" { # Create a firewall rule to allow BIG-IP ConfigSync and failover module "cfe_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.internal_network @@ -96,7 +96,7 @@ module "cfe_bucket" { module "cfe" { source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/ha-2nic-1-based-fqdn/main.tf b/examples/ha-2nic-1-based-fqdn/main.tf index 72a57e4..ba637a7 100644 --- a/examples/ha-2nic-1-based-fqdn/main.tf +++ b/examples/ha-2nic-1-based-fqdn/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -44,11 +44,8 @@ resource "google_compute_address" "mgt" { } module "ha" { - /* TODO: m.emes@f5.com source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" - */ - source = "../../modules/ha/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/ha-2nic-fqdn/main.tf b/examples/ha-2nic-fqdn/main.tf index 910c418..a574562 100644 --- a/examples/ha-2nic-fqdn/main.tf +++ b/examples/ha-2nic-fqdn/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -44,11 +44,8 @@ resource "google_compute_address" "mgt" { } module "ha" { - /* TODO: m.emes@f5.com source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" - */ - source = "../../modules/ha/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/ha-2nic-multi-az/main.tf b/examples/ha-2nic-multi-az/main.tf index ee1b6da..de4d016 100644 --- a/examples/ha-2nic-multi-az/main.tf +++ b/examples/ha-2nic-multi-az/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -44,11 +44,8 @@ resource "google_compute_address" "mgt" { } module "ha" { - /* TODO: m.emes@f5.com source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" - */ - source = "../../modules/ha/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = var.zones diff --git a/examples/ha-2nic/main.tf b/examples/ha-2nic/main.tf index 43eb14d..acbedc3 100644 --- a/examples/ha-2nic/main.tf +++ b/examples/ha-2nic/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -40,11 +40,8 @@ resource "google_compute_address" "mgt" { } module "ha" { - /* TODO: m.emes@f5.com source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" - */ - source = "../../modules/ha/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/ha-3nic-fqdn-multi-az/main.tf b/examples/ha-3nic-fqdn-multi-az/main.tf index a71b6fb..06112bd 100644 --- a/examples/ha-3nic-fqdn-multi-az/main.tf +++ b/examples/ha-3nic-fqdn-multi-az/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.external_network @@ -44,11 +44,8 @@ resource "google_compute_address" "mgt" { } module "ha" { - /* TODO: m.emes@f5.com source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" - */ - source = "../../modules/ha/" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = var.zones diff --git a/examples/ha-3nic/main.tf b/examples/ha-3nic/main.tf index 7c85418..110d521 100644 --- a/examples/ha-3nic/main.tf +++ b/examples/ha-3nic/main.tf @@ -12,7 +12,7 @@ terraform { # Create a firewall rule to allow BIG-IP ConfigSync module "ha_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id bigip_service_account = var.service_account dataplane_network = var.internal_network @@ -51,7 +51,7 @@ resource "google_compute_address" "int" { module "ha" { source = "memes/f5-bigip/google//modules/ha" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id num_instances = var.num_instances zones = [var.zone] diff --git a/examples/standalone-1nic-fqdn-multi-az/main.tf b/examples/standalone-1nic-fqdn-multi-az/main.tf index 0138bb1..271afc2 100644 --- a/examples/standalone-1nic-fqdn-multi-az/main.tf +++ b/examples/standalone-1nic-fqdn-multi-az/main.tf @@ -7,11 +7,8 @@ terraform { } module "instance" { - /* TODO m.emes@f5.com source = "memes/f5-bigip/google" - version = "2.0.1" - */ - source = "../../" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/examples/standalone-1nic-metadata-admin-password/main.tf b/examples/standalone-1nic-metadata-admin-password/main.tf index 3c3691f..9929b0a 100644 --- a/examples/standalone-1nic-metadata-admin-password/main.tf +++ b/examples/standalone-1nic-metadata-admin-password/main.tf @@ -7,11 +7,8 @@ terraform { } module "instance" { - /* TODO m.emes@f5.com source = "memes/f5-bigip/google" - version = "2.0.1" - */ - source = "../../" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/examples/standalone-1nic/main.tf b/examples/standalone-1nic/main.tf index 08e52a1..c6f3be5 100644 --- a/examples/standalone-1nic/main.tf +++ b/examples/standalone-1nic/main.tf @@ -7,11 +7,8 @@ terraform { } module "instance" { - /* TODO m.emes@f5.com source = "memes/f5-bigip/google" - version = "2.0.1" - */ - source = "../../" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/examples/standalone-2nic/main.tf b/examples/standalone-2nic/main.tf index 61d7d36..6e12485 100644 --- a/examples/standalone-2nic/main.tf +++ b/examples/standalone-2nic/main.tf @@ -10,11 +10,8 @@ terraform { } module "instance" { - /* TODO m.emes@f5.com source = "memes/f5-bigip/google" - version = "2.0.1" - */ - source = "../../" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/examples/standalone-3nic-fqdn-1-based/main.tf b/examples/standalone-3nic-fqdn-1-based/main.tf index 3b5e67a..9ba0402 100644 --- a/examples/standalone-3nic-fqdn-1-based/main.tf +++ b/examples/standalone-3nic-fqdn-1-based/main.tf @@ -10,11 +10,8 @@ terraform { } module "instance" { - /* TODO m.emes@f5.com - source = "memes/f5-bigip/google" - version = "2.0.1" - */ - source = "../../" + source = "memes/f5-bigip/google" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/examples/standalone-3nic/main.tf b/examples/standalone-3nic/main.tf index 57b35d7..8fa81f7 100644 --- a/examples/standalone-3nic/main.tf +++ b/examples/standalone-3nic/main.tf @@ -11,7 +11,7 @@ terraform { module "instance" { source = "memes/f5-bigip/google" - version = "2.0.1" + version = "2.0.2" project_id = var.project_id zones = [var.zone] service_account = var.service_account diff --git a/modules/cfe-role/README.md b/modules/cfe-role/README.md index d18f89d..e6bb802 100644 --- a/modules/cfe-role/README.md +++ b/modules/cfe-role/README.md @@ -21,10 +21,10 @@ as an *Organization role* if preferred, for reuse across projects. ```hcl module "cfe_role" { - source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" - target_id = "my-project-id" - members = ["serviceAccount:bigip@my-project-id.iam.gserviceaccount.com"] + source = "memes/f5-bigip/google//modules/cfe-role" + version = "2.0.2" + target_id = "my-project-id" + members = ["serviceAccount:bigip@my-project-id.iam.gserviceaccount.com"] } ``` @@ -35,7 +35,7 @@ module "cfe_role" { ```hcl module "cfe_org_role" { source = "memes/f5-bigip/google//modules/cfe-role" - version = "2.0.1" + version = "2.0.2" target_type = "org" target_id = "my-org-id" } diff --git a/modules/cfe/README.md b/modules/cfe/README.md index b40a223..ac1e84c 100644 --- a/modules/cfe/README.md +++ b/modules/cfe/README.md @@ -28,7 +28,7 @@ resources that have the label `f5_cloud_failover_label` populated with value ```hcl module "cfe" { source = "memes/f5-bigip/google//modules/cfe" - version = "2.0.1" + version = "2.0.2" project_id = "my-project-id" num_instances = 2 zones = ["us-central1-a", "us-central1-b"] diff --git a/modules/configsync-fw/README.md b/modules/configsync-fw/README.md index e1715d7..ef1afc1 100644 --- a/modules/configsync-fw/README.md +++ b/modules/configsync-fw/README.md @@ -29,7 +29,7 @@ defined. ```hcl module "configsync_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = "my-project-id" bigip_service_account = "bigip@my-project-id.iam.gserviceaccount.com" dataplane_network = "https://www.googleapis.com/compute/v1/projects/my-project-id/global/networks/external" @@ -40,6 +40,7 @@ module "configsync_fw" { ### Create the ConfigSync firewall for 3-NIC BIG-IPs, specify firewall names + This example is suitable for an HA or CFE deployment of BIG-IPs with 3+ NICs defined, using the `internal` network for ConfigSync traffic on data-plane. @@ -47,7 +48,7 @@ defined, using the `internal` network for ConfigSync traffic on data-plane. ```hcl module "configsync_fw" { source = "memes/f5-bigip/google//modules/configsync-fw" - version = "2.0.1" + version = "2.0.2" project_id = "my-project-id" bigip_service_account = "bigip@my-project-id.iam.gserviceaccount.com" dataplane_network = "https://www.googleapis.com/compute/v1/projects/my-project-id/global/networks/internal" @@ -58,7 +59,7 @@ module "configsync_fw" { ``` - + ## Requirements @@ -81,7 +82,7 @@ module "configsync_fw" { | bigip\_service\_account | The service account that will be used for the BIG-IP VMs; the firewall rules will
be constructed to use this for source and target filtering. | `string` | n/a | yes | | dataplane\_firewall\_name | The name to use for data-plane network firewall rule. Default is
'allow-bigip-configsync-data-plane'. | `string` | `"allow-bigip-configsync-data-plane"` | no | | dataplane\_network | The fully-qualified self-link of the subnet that will be used for data-plane
ConfigSync traffic. | `string` | n/a | yes | -| management\_firewall\_name | The name to use for Manangement (control-plane) network firewall rule. Default is
'allow-bigip-configsync-mgt'. | `string` | `"allow-bigip-configsync-mgt"` | no | +| management\_firewall\_name | The name to use for Management (control-plane) network firewall rule. Default is
'allow-bigip-configsync-mgt'. | `string` | `"allow-bigip-configsync-mgt"` | no | | management\_network | The fully-qualified self-link of the subnet that will be used for Management
(control-plane) ConfigSync traffic. | `string` | n/a | yes | | project\_id | The GCP project identifier where the cluster will be created. | `string` | n/a | yes | diff --git a/modules/configsync-fw/variables.tf b/modules/configsync-fw/variables.tf index 765599f..0d53ae0 100644 --- a/modules/configsync-fw/variables.tf +++ b/modules/configsync-fw/variables.tf @@ -25,7 +25,7 @@ variable "management_firewall_name" { error_message = "The management_firewall_name variable must be valid RFC1035." } description = <