diff --git a/main.tf b/main.tf index 1329e2f..a9e9a8c 100644 --- a/main.tf +++ b/main.tf @@ -67,11 +67,12 @@ module "resilio" { } module "media" { - source = "media" - domain = "bb8.fun" - traefik-labels = "${var.traefik-common-labels}" - ips = "${var.ips}" - traefik-network-id = "${module.docker.traefik-network-id}" + source = "media" + domain = "bb8.fun" + traefik-labels = "${var.traefik-common-labels}" + ips = "${var.ips}" + traefik-network-id = "${module.docker.traefik-network-id}" + airsonic-smtp-password = "notvalid" } module "monitoring" { diff --git a/media/airsonic.tf b/media/airsonic.tf index 8de3640..a4f25d2 100644 --- a/media/airsonic.tf +++ b/media/airsonic.tf @@ -4,7 +4,8 @@ module "airsonic" { name = "airsonic" resource { - memory = "1024" + memory = "1024" + memory_swap = "1024" } web { @@ -25,16 +26,16 @@ module "airsonic" { container_path = "/dev/snd" }] - # files = [ - # "/usr/lib/jvm/java-1.8-openjdk/jre/lib/airsonic.properties", - # "/usr/lib/jvm/java-1.8-openjdk/jre/lib/sound.properties", - # ] - - - # contents = [ - # "${data.template_file.airsonic-properties-file.rendered}", - # "${file("${path.module}/conf/airsonic.sound.properties")}", - # ] + uploads = [ + { + content = "${data.template_file.airsonic-properties-file.rendered}" + file = "/usr/lib/jvm/java-1.8-openjdk/jre/lib/airsonic.properties" + }, + { + content = "${file("${path.module}/conf/airsonic.sound.properties")}" + file = "/usr/lib/jvm/java-1.8-openjdk/jre/lib/sound.properties" + }, + ] volumes = [ { @@ -60,15 +61,12 @@ module "airsonic" { ] } -# data "template_file" "airsonic-properties-file" { -# template = "${file("${path.module}/conf/airsonic.properties.tpl")}" +data "template_file" "airsonic-properties-file" { + template = "${file("${path.module}/conf/airsonic.properties.tpl")}" + vars { + smtp-password = "${var.airsonic-smtp-password}" -# vars { -# smtp-password = "${var.airsonic-smtp-password}" - - -# # db-password = "${var.airsonic-db-password}" -# } -# } - + # db-password = "${var.airsonic-db-password}" + } +} diff --git a/media/variables.tf b/media/variables.tf index 1d66838..c8dcbb7 100644 --- a/media/variables.tf +++ b/media/variables.tf @@ -18,3 +18,4 @@ variable "ips" { } variable "traefik-network-id" {} +variable "airsonic-smtp-password" {} diff --git a/modules/container/main.tf b/modules/container/main.tf index 248bb55..3ce692e 100644 --- a/modules/container/main.tf +++ b/modules/container/main.tf @@ -23,6 +23,8 @@ resource "docker_container" "container" { network_mode = "bridge" + upload = ["${var.uploads}"] + // Only attach the traefik network if // service is exposed to the web networks = ["${concat(var.networks,compact(split(",",lookup(var.web, "expose", "false") == "false" ? "" :"${data.docker_network.traefik.id}")))}"] diff --git a/modules/container/vars.tf b/modules/container/vars.tf index b77fda6..80e0f6f 100644 --- a/modules/container/vars.tf +++ b/modules/container/vars.tf @@ -94,3 +94,7 @@ variable "devices" { type = "list" default = [] } + +variable "uploads" { + default = [] +}