Make edge Docker installation opt-in

This commit is contained in:
juvdiaz 2026-06-29 13:22:59 -06:00
parent f8a9e7b792
commit 4561dd9788
2 changed files with 13 additions and 1 deletions

View File

@ -46,6 +46,7 @@ resource "null_resource" "edge_services" {
host = var.edge_host host = var.edge_host
user = var.edge_user user = var.edge_user
install_dir = var.edge_install_dir install_dir = var.edge_install_dir
install_docker = tostring(var.edge_install_docker)
server_name = var.server_name server_name = var.server_name
server_names = join(" ", local.server_names) server_names = join(" ", local.server_names)
certbot_domain_args = join(" ", [for name in local.server_names : "-d ${name}"]) certbot_domain_args = join(" ", [for name in local.server_names : "-d ${name}"])
@ -105,6 +106,7 @@ resource "null_resource" "edge_services" {
set -eu set -eu
install_dir="${self.triggers.install_dir}" install_dir="${self.triggers.install_dir}"
install_docker="${self.triggers.install_docker}"
server_name="${self.triggers.server_name}" server_name="${self.triggers.server_name}"
server_names="${self.triggers.server_names}" server_names="${self.triggers.server_names}"
certbot_domain_args="${self.triggers.certbot_domain_args}" certbot_domain_args="${self.triggers.certbot_domain_args}"
@ -144,7 +146,12 @@ if ! curl -sS --connect-timeout 10 "http://$gitea_backend_host:$gitea_backend_po
fi fi
if ! command -v docker >/dev/null 2>&1; then if ! command -v docker >/dev/null 2>&1; then
curl -fsSL https://get.docker.com | sudo sh if [ "$install_docker" = "true" ]; then
curl -fsSL https://get.docker.com | sudo sh
else
echo "Docker is not installed on the edge host. Install Docker first, or set edge_install_docker=true to allow get.docker.com installation." >&2
exit 1
fi
fi fi
if ! sudo docker compose version >/dev/null 2>&1; then if ! sudo docker compose version >/dev/null 2>&1; then

View File

@ -18,6 +18,11 @@ variable "edge_install_dir" {
default = "/opt/homelab-edge" default = "/opt/homelab-edge"
} }
variable "edge_install_docker" {
type = bool
default = false
}
variable "server_name" { variable "server_name" {
type = string type = string
default = "lab2025.duckdns.org" default = "lab2025.duckdns.org"