rss-bridge: Migrate to container module
This commit is contained in:
parent
9a5bf0a8b9
commit
ebe3ecbd9e
7
main.tf
7
main.tf
|
@ -61,13 +61,6 @@ module "radicale" {
|
|||
traefik-network-id = "${module.docker.traefik-network-id}"
|
||||
}
|
||||
|
||||
module "rss-bridge" {
|
||||
source = "rss-bridge"
|
||||
domain = "rss-bridge.bb8.fun"
|
||||
traefik-labels = "${var.traefik-common-labels}"
|
||||
traefik-network-id = "${module.docker.traefik-network-id}"
|
||||
}
|
||||
|
||||
module "resilio" {
|
||||
source = "resilio"
|
||||
domain = "sync.bb8.fun"
|
||||
|
|
|
@ -21,6 +21,7 @@ resource "docker_container" "container" {
|
|||
memory = "${local.resource["memory"]}"
|
||||
|
||||
volumes = "${var.volumes}"
|
||||
upload = "${var.uploads}"
|
||||
|
||||
# Look at this monstrosity
|
||||
# And then https://github.com/hashicorp/terraform/issues/12453#issuecomment-365569618
|
||||
|
|
|
@ -88,3 +88,9 @@ variable "volumes" {
|
|||
type = "list"
|
||||
default = []
|
||||
}
|
||||
|
||||
variable "uploads" {
|
||||
description = "uploads"
|
||||
type = "list"
|
||||
default = []
|
||||
}
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
module "rss-bridge" {
|
||||
name = "rss-bridge"
|
||||
source = "modules/container"
|
||||
image = "rssbridge/rss-bridge:latest"
|
||||
|
||||
web {
|
||||
expose = true
|
||||
host = "rss-bridge.${var.root-domain}"
|
||||
}
|
||||
|
||||
networks = "${list(module.docker.traefik-network-id)}"
|
||||
|
||||
uploads = [{
|
||||
content = <<EOF
|
||||
AmazonBridge
|
||||
BandcampBridge
|
||||
ContainerLinuxReleasesBridge
|
||||
DiscogsBridge
|
||||
FDroidBridge
|
||||
FacebookBridge
|
||||
GithubIssueBridge
|
||||
GithubSearchBridge
|
||||
GoComicsBridge
|
||||
GoogleSearchBridge
|
||||
InstagramBridge
|
||||
ReadComicsBridge
|
||||
SoundcloudBridge
|
||||
SteamBridge
|
||||
StripeAPIChangeLogBridge
|
||||
AmazonPriceTrackerBridge
|
||||
EOF
|
||||
|
||||
file = "/app/public/whitelist.txt"
|
||||
}]
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
data "docker_registry_image" "rss-bridge" {
|
||||
name = "rssbridge/rss-bridge:latest"
|
||||
}
|
||||
|
||||
resource "docker_image" "rss-bridge" {
|
||||
name = "${data.docker_registry_image.rss-bridge.name}"
|
||||
pull_triggers = ["${data.docker_registry_image.rss-bridge.sha256_digest}"]
|
||||
}
|
||||
|
||||
resource "docker_container" "rss-bridge" {
|
||||
name = "rss-bridge"
|
||||
image = "${docker_image.rss-bridge.latest}"
|
||||
|
||||
labels = "${merge(
|
||||
var.traefik-labels, map(
|
||||
"traefik.port", 80,
|
||||
"traefik.frontend.rule","Host:${var.domain}"
|
||||
))}"
|
||||
|
||||
upload {
|
||||
content = "${file("${path.module}/whitelist.txt")}"
|
||||
file = "/app/public/whitelist.txt"
|
||||
}
|
||||
|
||||
networks = ["${var.traefik-network-id}"]
|
||||
|
||||
restart = "unless-stopped"
|
||||
destroy_grace_seconds = 60
|
||||
must_run = true
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
variable "domain" {
|
||||
description = "domain to be used by traefik"
|
||||
}
|
||||
|
||||
variable "traefik-labels" {
|
||||
type = "map"
|
||||
}
|
||||
|
||||
variable "traefik-network-id" {}
|
|
@ -1,16 +0,0 @@
|
|||
AmazonBridge
|
||||
BandcampBridge
|
||||
ContainerLinuxReleasesBridge
|
||||
DiscogsBridge
|
||||
FDroidBridge
|
||||
FacebookBridge
|
||||
GithubIssueBridge
|
||||
GithubSearchBridge
|
||||
GoComicsBridge
|
||||
GoogleSearchBridge
|
||||
InstagramBridge
|
||||
ReadComicsBridge
|
||||
SoundcloudBridge
|
||||
SteamBridge
|
||||
StripeAPIChangeLogBridge
|
||||
AmazonPriceTrackerBridge
|
Loading…
Reference in New Issue