Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 16 additions & 12 deletions modules/core/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ provider "docker" {
for_each = var.docker_registry_address != null ? list(var.docker_registry_address) : []
iterator = address
content {
address = address.value
address = address.value
username = var.docker_registry_username
password = var.docker_registry_password
}
Expand All @@ -31,14 +31,14 @@ provider "docker" {

data "docker_registry_image" "core" {
count = var.docker_registry_address != null ? 1 : 0
name = local.docker_image_name
name = local.docker_image_name
}

resource "docker_image" "core" {
count = var.docker_registry_address != null ? 1 : 0
name = data.docker_registry_image.core[count.index].name
count = var.docker_registry_address != null ? 1 : 0
name = data.docker_registry_image.core[count.index].name
pull_triggers = [data.docker_registry_image.core[count.index].sha256_digest]
keep_locally = true
keep_locally = true
}

resource "docker_volume" "core" {
Expand Down Expand Up @@ -77,9 +77,13 @@ resource "docker_container" "core" {
}

# data transport
ports {
internal = 5353
external = 5353
dynamic "ports" {
for_each = var.data_port != null ? list(var.data_port) : []
iterator = data_port
content {
internal = 5353
external = data_port.value
}
}

# service proxy
Expand All @@ -89,14 +93,14 @@ resource "docker_container" "core" {
}

healthcheck {
test = ["CMD", "supd", "health"]
test = ["CMD", "supd", "health"]
interval = "15s"
timeout = "10s"
retries = 3
timeout = "10s"
retries = 3
}

volumes {
volume_name = docker_volume.core.name
volume_name = docker_volume.core.name
container_path = "/ns1/data"
}

Expand Down
5 changes: 5 additions & 0 deletions modules/core/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -97,3 +97,8 @@ variable "docker_log_driver" {
default = "json-file"
description = "Docker log driver to use, see https://docs.docker.com/config/containers/logging/configure/"
}

variable "data_port" {
default = 5353
description = "Port exposed out of the container for data transport. Setting value to null disables exposing this port."
}
7 changes: 5 additions & 2 deletions modules/data/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,14 @@ resource "docker_container" "data" {
external = 3300
}

# data transport
# should only be exposed if cluster_id is configured and data_port was not disabled
dynamic "ports" {
for_each = var.cluster_id != null ? list(var.cluster_id) : []
for_each = var.cluster_id != null && var.data_port != null ? list(var.data_port) : []
iterator = data_port
content {
internal = 5353
external = 5353
external = data_port.value
}
}

Expand Down
13 changes: 9 additions & 4 deletions modules/data/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,13 @@ variable "enable_ops_metrics" {
}

variable "telegraf_output_elasticsearch_data_host" {
default = null
description = "The elasticsearch host to export metrics"
default = null
description = "The elasticsearch host to export metrics"
}

variable "telegraf_output_elasticsearch_index" {
default = null
description = "The elasticsearch index to use when exporting metrics"
default = null
description = "The elasticsearch index to use when exporting metrics"
}

variable "expose_ops_metrics" {
Expand Down Expand Up @@ -102,3 +102,8 @@ variable "docker_log_driver" {
default = "json-file"
description = "Docker log driver to use, see https://docs.docker.com/config/containers/logging/configure/"
}

variable "data_port" {
default = 5353
description = "Port exposed out of the container for data transport. Setting value to null disables exposing this port."
}
13 changes: 7 additions & 6 deletions modules/dist/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,13 @@ resource "docker_container" "dist" {
}

# data transport
ports {
internal = 5353
external = 5353
# can we map this to 5353?
# how do we switch to ephemeral if on same host
# as core?
dynamic "ports" {
for_each = var.data_port != null ? list(var.data_port) : []
iterator = data_port
content {
internal = 5353
external = data_port.value
}
}

# service proxy
Expand Down
5 changes: 5 additions & 0 deletions modules/dist/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -71,3 +71,8 @@ variable "docker_log_driver" {
default = "json-file"
description = "Docker log driver to use, see https://docs.docker.com/config/containers/logging/configure/"
}

variable "data_port" {
default = 5353
description = "Port exposed out of the container for data transport. Setting value to null disables exposing this port."
}