Skip to content

Commit 211b9ec

Browse files
authored
Merge pull request #9 from dnks0/feature/dbx-proxy
* fix docker setup for lower range ports * updated test setup * removed terraform warnings * added validation for dbx-proxy-image-version
2 parents 497142f + ba68fe1 commit 211b9ec

9 files changed

Lines changed: 20 additions & 12 deletions

File tree

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,5 @@ dist
3535
# terraform files
3636
**/.terraform/
3737
**/.terraform.lock.hcl
38-
**/terraform.tfstate
39-
**/terraform.tfstate.backup
38+
**/terraform*.tfstate
39+
**/terraform*.backup

terraform/aws/modules/proxy/ec2.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,6 @@ resource "aws_autoscaling_group" "this" {
142142

143143
instance_refresh {
144144
strategy = "Rolling"
145-
triggers = ["launch_template"]
146145

147146
preferences {
148147
# With desired=max=1, allowing downtime lets the ASG replace the single instance

terraform/aws/modules/proxy/local.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,4 @@ locals {
7373
],
7474
]
7575
}
76-
7776
}

terraform/aws/provider.tf

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,6 @@ terraform {
1414
}
1515
}
1616

17-
provider "random" {}
18-
19-
provider "cloudinit" {}
20-
2117
provider "aws" {
2218
# authentication configured via env!
2319
region = var.region

terraform/common/local.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ locals {
88
docker_compose_yaml = templatefile("${path.module}/templates/docker-compose.yaml.tpl", {
99
dbx_proxy_image_version = var.dbx_proxy_image_version
1010
dbx_proxy_health_port = var.dbx_proxy_health_port
11+
dbx_proxy_listener = var.dbx_proxy_listener
1112
})
1213
}

terraform/common/templates/docker-compose.yaml.tpl

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,15 @@ services:
66
- NET_BIND_SERVICE
77
environment:
88
- DBX_PROXY_HEALTH_PORT=${dbx_proxy_health_port}
9+
ports:
10+
- "${dbx_proxy_health_port}:${dbx_proxy_health_port}"
11+
%{ for listener in dbx_proxy_listener ~}
12+
- "${listener.port}:${listener.port}"
13+
%{ endfor ~}
914
volumes:
1015
- /dbx-proxy/conf:/dbx-proxy/conf:rw
1116
- dbx-proxy-run:/dbx-proxy/run
12-
network_mode: "host"
17+
1318
restart: unless-stopped
1419

1520
volumes:

terraform/common/variables.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
variable "dbx_proxy_image_version" {
22
description = "Docker image version for dbx-proxy."
33
type = string
4+
validation {
5+
condition = (
6+
var.dbx_proxy_image_version == "latest"
7+
|| can(regex("^[0-9]+\\.[0-9]+\\.[0-9]+$", var.dbx_proxy_image_version))
8+
|| can(regex("^[0-9a-f]{7,40}$", lower(var.dbx_proxy_image_version)))
9+
)
10+
error_message = "dbx_proxy_image_version must be a real image tag: semver (e.g., 0.1.1), (short)git hash, or \"latest\"."
11+
}
412
}
513

614
variable "dbx_proxy_health_port" {

tests/docker/docker-compose.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ services:
77
working_dir: /tmp/common
88
volumes:
99
- ../../terraform/common:/workspace/common:ro
10-
- ./render-config/terraform.tfvars:/workspace/terraform.tfvars:ro
10+
- ./render-config/.tfvars:/workspace/.tfvars:ro
1111
- conf:/out
1212
entrypoint:
1313
- /bin/sh
@@ -18,7 +18,7 @@ services:
1818
cp -R /workspace/common /tmp/common
1919
cd /tmp/common
2020
terraform init -backend=false -input=false
21-
terraform plan -refresh=false -input=false -var-file=/workspace/terraform.tfvars -out=/tmp/plan.tfplan
21+
terraform plan -refresh=false -input=false -var-file=/workspace/.tfvars -out=/tmp/plan.tfplan
2222
# Write atomically so other containers don't observe a partially-written file.
2323
terraform show -json /tmp/plan.tfplan | jq -r '.planned_values.outputs.dbx_proxy_cfg.value' > /out/dbx-proxy.cfg.tmp
2424
mv /out/dbx-proxy.cfg.tmp /out/dbx-proxy.cfg

tests/docker/render-config/terraform.tfvars renamed to tests/docker/render-config/.tfvars

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
dbx_proxy_image_version = "test"
1+
dbx_proxy_image_version = "latest"
22
dbx_proxy_health_port = 8080
33
dbx_proxy_max_connections = 8192
44
dbx_proxy_listener = [

0 commit comments

Comments
 (0)