Migrate Nextcloud to hcloud

This commit is contained in:
Paul-Henri Froidmont 2021-07-17 00:24:30 +02:00
parent 600844c56d
commit 39f20ed89d
Signed by: phfroidmont
GPG key ID: BE948AFD7E7873BE
10 changed files with 110 additions and 17 deletions

View file

@ -22,6 +22,14 @@ resource "hcloud_network_subnet" "db_network_subnet" {
ip_range = "10.0.1.0/24"
}
resource "hcloud_network_subnet" "banditlair_vswitch_network_subnet" {
type = "vswitch"
network_id = hcloud_network.private_network.id
network_zone = "eu-central"
ip_range = "10.0.2.0/24"
vswitch_id = 22304
}
resource "hcloud_server" "db1" {
name = "db1"
image = data.hcloud_image.nixos_stable.id
@ -47,7 +55,7 @@ resource "hcloud_server" "db1" {
}
module "deploy_nixos_db1" {
source = "github.com/phfroidmont/terraform-nixos//deploy_nixos?ref=a8d5d31e59f4ce2677272e4849b122b4afc5a8e4"
source = "github.com/phfroidmont/terraform-nixos//deploy_nixos?ref=5f6b38f7e1485d216c14c3cbd6692581e5eaa392"
nixos_config = "db1"
flake = true
target_host = hcloud_server.db1.ipv4_address
@ -59,6 +67,8 @@ module "deploy_nixos_db1" {
TEMPLATE template0
LC_COLLATE = "C"
LC_CTYPE = "C";
CREATE ROLE "nextcloud" WITH LOGIN PASSWORD '${data.sops_file.secrets.data["nextcloud.db_password"]}';
CREATE DATABASE "nextcloud" WITH OWNER "nextcloud";
EOT
borgbackup-passphrase = data.sops_file.secrets.data["borg.passphrase"]
borgbackup-ssh-key = data.sops_file.secrets.data["borg.client_keys.db1.private"]
@ -95,7 +105,7 @@ resource "hcloud_floating_ip_assignment" "main" {
}
module "deploy_nixos_backend1" {
source = "github.com/phfroidmont/terraform-nixos//deploy_nixos?ref=a8d5d31e59f4ce2677272e4849b122b4afc5a8e4"
source = "github.com/phfroidmont/terraform-nixos//deploy_nixos?ref=5f6b38f7e1485d216c14c3cbd6692581e5eaa392"
nixos_config = "backend1"
flake = true
target_host = hcloud_server.backend1.ipv4_address
@ -112,10 +122,13 @@ module "deploy_nixos_backend1" {
password: "${data.sops_file.secrets.data["synapse.db_password"]}"
macaroon_secret_key: "${data.sops_file.secrets.data["synapse.macaroon_secret_key"]}"
EOT
nextcloud-db-pass = data.sops_file.secrets.data["nextcloud.db_password"]
nextcloud-admin-pass = data.sops_file.secrets.data["nextcloud.admin_password"]
"murmur.env" = <<-EOT
MURMURD_PASSWORD=${data.sops_file.secrets.data["murmur.password"]}
EOT
borgbackup-passphrase = data.sops_file.secrets.data["borg.passphrase"]
borgbackup-ssh-key = data.sops_file.secrets.data["borg.client_keys.backend1.private"]
sshfs-ssh-key = data.sops_file.secrets.data["sshfs_keys.private"]
}
}