109 lines
3.6 KiB
HCL
109 lines
3.6 KiB
HCL
module "cloudflare" {
|
|
source = "./cloudflare"
|
|
domain = "bb8.fun"
|
|
zone_id = lookup(data.cloudflare_zones.bb8.zones[0], "id")
|
|
ips = var.ips
|
|
|
|
droplet_ip = module.digitalocean.droplet_ipv4
|
|
}
|
|
|
|
module "docker" {
|
|
source = "./docker"
|
|
web_username = data.pass_password.web_username.password
|
|
web_password = data.pass_password.web_password.password
|
|
cloudflare_key = data.pass_password.cloudflare_key.password
|
|
cloudflare_email = "bb8@captnemo.in"
|
|
wiki_session_secret = data.pass_password.wiki_session_secret.password
|
|
ips = var.ips
|
|
domain = "bb8.fun"
|
|
}
|
|
|
|
module "db" {
|
|
source = "./db"
|
|
postgres-root-password = data.pass_password.postgres-root-password.password
|
|
ips = var.ips
|
|
}
|
|
|
|
module "timemachine" {
|
|
source = "./timemachine"
|
|
ips = var.ips
|
|
username-1 = "vikalp"
|
|
username-2 = "rishav"
|
|
password-1 = data.pass_password.timemachine-password-1.password
|
|
password-2 = data.pass_password.timemachine-password-2.password
|
|
}
|
|
|
|
module "gitea" {
|
|
source = "./gitea"
|
|
domain = "git.captnemo.in"
|
|
traefik-labels = var.traefik-common-labels
|
|
ips = var.ips
|
|
secret-key = data.pass_password.gitea-secret-key.password
|
|
internal-token = data.pass_password.gitea-internal-token.password
|
|
smtp-password = data.pass_password.gitea-smtp-password.password
|
|
lfs-jwt-secret = data.pass_password.gitea-lfs-jwt-secret.password
|
|
oauth2-jwt-secret = data.pass_password.gitea-oauth2-jwt-secret.password
|
|
|
|
//passed, but not used
|
|
mysql-password = ""
|
|
|
|
traefik-network-id = module.docker.traefik-network-id
|
|
}
|
|
|
|
module "opml" {
|
|
source = "./opml"
|
|
domain = "opml.bb8.fun"
|
|
client-id = data.pass_password.opml-github-client-id.password
|
|
client-secret = data.pass_password.opml-github-client-secret.password
|
|
traefik-network-id = module.docker.traefik-network-id
|
|
}
|
|
|
|
module "radicale" {
|
|
source = "./radicale"
|
|
domain = "radicale.bb8.fun"
|
|
}
|
|
|
|
module "media" {
|
|
source = "./media"
|
|
domain = "bb8.fun"
|
|
traefik-labels = var.traefik-common-labels
|
|
ips = var.ips
|
|
# ToDO: Change this to lookup
|
|
traefik-network-id = "ffc1e366849e"
|
|
lastfm_api_key = data.pass_password.navidrome-lastfm-api-key.password
|
|
lastfm_secret = data.pass_password.navidrome-lastfm-secret.password
|
|
spotify_id = data.pass_password.navidrome-spotify-id.password
|
|
spotify_secret = data.pass_password.navidrome-spotify-secret.password
|
|
}
|
|
|
|
module "monitoring" {
|
|
source = "./monitoring"
|
|
gf-security-admin-password = data.pass_password.gf-security-admin-password.password
|
|
domain = "bb8.fun"
|
|
transmission = module.media.names-transmission
|
|
traefik-labels = var.traefik-common-labels
|
|
ips = var.ips
|
|
links-traefik = module.docker.names-traefik
|
|
traefik-network-id = module.docker.traefik-network-id
|
|
}
|
|
|
|
module "digitalocean" {
|
|
source = "./digitalocean"
|
|
}
|
|
|
|
module "mastodon" {
|
|
source = "./mastodon"
|
|
db-password = data.pass_password.mastodon-db-password.password
|
|
secret-key-base = data.pass_password.mastodon-secret-key-base.password
|
|
otp-secret = data.pass_password.mastodon-otp-secret.password
|
|
vapid-private-key = data.pass_password.mastodon-vapid-private-key.password
|
|
vapid-public-key = data.pass_password.mastodon-vapid-public-key.password
|
|
smtp-password = data.pass_password.mastodon-smtp-password.password
|
|
}
|
|
|
|
// Used to force access to ISP related resources
|
|
# module "tinyproxy" {
|
|
# source = "./tinyproxy"
|
|
# ips = "${var.ips}"
|
|
# }
|