From bc275af350fa2921c7d4b7bb4579d70c8e04d2ba Mon Sep 17 00:00:00 2001 From: norshtein Date: Fri, 30 Nov 2018 17:00:18 +0800 Subject: [PATCH 1/2] Support config load balancer domain name --- artifacts/load_balancer.go | 1 + .../terraform/templates/load_balancer.go | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/artifacts/load_balancer.go b/artifacts/load_balancer.go index 342d7d6..d60744a 100644 --- a/artifacts/load_balancer.go +++ b/artifacts/load_balancer.go @@ -4,6 +4,7 @@ package artifacts type LoadBalancer struct { Name string `yaml:"name"` SKU string `yaml:"sku"` + DomainName string `yaml:"domain_name,omitempty"` BackendAddressPools []LoadBalancerBackendAddressPool `yaml:"backend_address_pools"` HealthProbes []LoadBalancerHealthProbe `yaml:"health_probes"` Rules []LoadBalancerRule `yaml:"rules"` diff --git a/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go b/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go index 323791f..38965c1 100644 --- a/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go +++ b/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go @@ -12,6 +12,9 @@ resource "azurerm_public_ip" "{{.lbName}}_public_ip" { resource_group_name = "${azurerm_resource_group.kunlun_resource_group.name}" public_ip_address_allocation = "static" sku = "${var.{{.lbName}}_al_sku}" + {{if .haveDomainName -}} + domain_name_label = "{{var.{{.lbName}}_al_domain_name_label}}" + {{- end}} } resource "azurerm_lb" "{{.lbName}}" { @@ -26,10 +29,16 @@ resource "azurerm_lb" "{{.lbName}}" { } variable "{{.lbName}}_al_sku" {} +{{if .haveDomainName -}} +variable "{{.lbName}}_al_domain_name_label" {} +{{- end}} `) var loadBalancerTFVars = []byte(` {{.lbName}}_al_sku = "{{.al_sku}}" +{{if .haveDomainName -}} +{{.lbName}}_al_domain_name_label = "{{.al_domain_name_label}}" +{{- end}} `) var loadBalancerBackendAddressPoolTF = []byte(` @@ -170,14 +179,17 @@ func NewLoadBalancerInput(lb artifacts.LoadBalancer) (string, error) { func getLoadBalancerTFParams(lb artifacts.LoadBalancer) map[string]interface{} { return map[string]interface{}{ - "lbName": lb.Name, + "lbName": lb.Name, + "haveDomainName": lb.DomainName != "", } } func getLoadBalancerTFVarsParams(lb artifacts.LoadBalancer) map[string]interface{} { return map[string]interface{}{ - "lbName": lb.Name, - "al_sku": lb.SKU, + "lbName": lb.Name, + "al_sku": lb.SKU, + "haveDomainName": lb.DomainName != "", + "al_domain_name_label": lb.DomainName, } } From c880e5721e35f4320a20ab86d685f8bb86f1f1df Mon Sep 17 00:00:00 2001 From: norshtein Date: Fri, 30 Nov 2018 09:27:43 +0000 Subject: [PATCH 2/2] Fix typo --- .../tfhandler/terraform/templates/load_balancer.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go b/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go index 38965c1..d76df53 100644 --- a/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go +++ b/producers/infra-producer/tfhandler/terraform/templates/load_balancer.go @@ -13,7 +13,7 @@ resource "azurerm_public_ip" "{{.lbName}}_public_ip" { public_ip_address_allocation = "static" sku = "${var.{{.lbName}}_al_sku}" {{if .haveDomainName -}} - domain_name_label = "{{var.{{.lbName}}_al_domain_name_label}}" + domain_name_label = "${var.{{.lbName}}_al_domain_name_label}" {{- end}} }