diff --git a/enos/modules/docker_postgres/main.tf b/enos/modules/docker_postgres/main.tf index 04c3fd1ce..cde66a3a5 100644 --- a/enos/modules/docker_postgres/main.tf +++ b/enos/modules/docker_postgres/main.tf @@ -63,6 +63,8 @@ resource "docker_container" "postgres" { "POSTGRES_USER=${var.user}", "POSTGRES_PASSWORD=${var.password}", ] + cpu_set = "1-2" + memory = 2000 volumes { host_path = abspath(path.module) container_path = "/etc/postgresql/" diff --git a/enos/modules/docker_worker/main.tf b/enos/modules/docker_worker/main.tf index 6bec05233..f03a43949 100644 --- a/enos/modules/docker_worker/main.tf +++ b/enos/modules/docker_worker/main.tf @@ -63,6 +63,7 @@ resource "docker_image" "boundary" { locals { recording_storage_path = "/recordings" + port_ops = var.port + 1 } resource "docker_container" "worker" { @@ -78,6 +79,10 @@ resource "docker_container" "worker" { internal = var.port external = var.port } + ports { + internal = local.port_ops + external = local.port_ops + } capabilities { add = ["IPC_LOCK"] } @@ -96,6 +101,7 @@ resource "docker_container" "worker" { type_tags = jsonencode(var.tags) recording_storage_path = local.recording_storage_path port = var.port + port_ops = local.port_ops }) file = "/boundary/worker-config.hcl" } @@ -115,6 +121,14 @@ resource "docker_container" "worker" { } } +resource "enos_local_exec" "check_address" { + depends_on = [ + docker_container.worker + ] + + inline = ["timeout 10s bash -c 'until echo $(curl -s -i \"http://0.0.0.0:${local.port_ops}/health?worker_info=1\") | grep -i \\\"upstream_connection_state\\\":\\\"READY\\\"; do sleep 2; done'"] +} + output "upstream_address" { value = "${var.container_name}:${var.port}" } diff --git a/enos/modules/docker_worker/worker-config-bsr-downstream.hcl b/enos/modules/docker_worker/worker-config-bsr-downstream.hcl index 1a995543a..156be5ca3 100644 --- a/enos/modules/docker_worker/worker-config-bsr-downstream.hcl +++ b/enos/modules/docker_worker/worker-config-bsr-downstream.hcl @@ -14,6 +14,12 @@ listener "tcp" { tls_disable = true } +listener "tcp" { + address = "0.0.0.0:${port_ops}" + purpose = "ops" + tls_disable = true +} + worker { name = "${worker_name}" public_addr = "${worker_name}:${port}" diff --git a/enos/modules/docker_worker/worker-config-bsr.hcl b/enos/modules/docker_worker/worker-config-bsr.hcl index a07cbfbeb..648f712f0 100644 --- a/enos/modules/docker_worker/worker-config-bsr.hcl +++ b/enos/modules/docker_worker/worker-config-bsr.hcl @@ -14,6 +14,12 @@ listener "tcp" { tls_disable = true } +listener "tcp" { + address = "0.0.0.0:${port_ops}" + purpose = "ops" + tls_disable = true +} + worker { name = "${worker_name}" public_addr = "${worker_name}:${port}" diff --git a/enos/modules/docker_worker/worker-config-downstream.hcl b/enos/modules/docker_worker/worker-config-downstream.hcl index 11655d64f..886e80e1f 100644 --- a/enos/modules/docker_worker/worker-config-downstream.hcl +++ b/enos/modules/docker_worker/worker-config-downstream.hcl @@ -14,6 +14,12 @@ listener "tcp" { tls_disable = true } +listener "tcp" { + address = "0.0.0.0:${port_ops}" + purpose = "ops" + tls_disable = true +} + worker { name = "${worker_name}" public_addr = "${worker_name}:${port}" diff --git a/enos/modules/docker_worker/worker-config.hcl b/enos/modules/docker_worker/worker-config.hcl index 280cd2e6d..b68503331 100644 --- a/enos/modules/docker_worker/worker-config.hcl +++ b/enos/modules/docker_worker/worker-config.hcl @@ -14,6 +14,12 @@ listener "tcp" { tls_disable = true } +listener "tcp" { + address = "0.0.0.0:${port_ops}" + purpose = "ops" + tls_disable = true +} + worker { name = "${worker_name}" public_addr = "${worker_name}:${port}"