diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2021-01-09 12:33:17 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2021-01-09 12:33:17 +0100 |
commit | 16795884f3e915ed6d8b086fd5b6b93fc4858a27 (patch) | |
tree | 2043154f60fd396e5ee9f572df0dc9112f46feff /terraform/main.tf | |
parent | 4dd314376968d99abe67e1c49ad8032d3a2b96c2 (diff) | |
parent | 5b1279c3dd28a2c0252624c36e937c59db15270d (diff) | |
download | infra-16795884f3e915ed6d8b086fd5b6b93fc4858a27.tar.gz infra-16795884f3e915ed6d8b086fd5b6b93fc4858a27.tar.bz2 infra-16795884f3e915ed6d8b086fd5b6b93fc4858a27.tar.xz infra-16795884f3e915ed6d8b086fd5b6b93fc4858a27.zip |
Merge branch 'master' of trygvis.io:git/infra
Diffstat (limited to 'terraform/main.tf')
-rw-r--r-- | terraform/main.tf | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/terraform/main.tf b/terraform/main.tf new file mode 100644 index 0000000..853a87d --- /dev/null +++ b/terraform/main.tf @@ -0,0 +1,75 @@ +terraform { + required_version = ">= 0.13" + + backend "local" { + path = "../state/dns" + } + + required_providers { + linode = { + version = "~> 1.13" + source = "linode/linode" + } + + ansiblevault = { + version = "~> 2.2" + source = "MeilleursAgents/ansiblevault" + } + + minio = { + source = "tidalf/minio" + version = "1.1.1" + } + } +} + +provider "ansiblevault" { + root_folder = "../ansible" +} + +################################################# +# Linode + +data "ansiblevault_path" "linode_token" { + path = "group_vars/all/linode-dns.yml" + key = "linode_token_v4" +} + +provider "linode" { + token = data.ansiblevault_path.linode_token.value +} + +################################################# +# Minio + +data "ansiblevault_path" "minio_access_key" { + path = "minio/group_vars/all/vault.yml" + key = "MINIO_ROOT_USER" +} + +data "ansiblevault_path" "minio_secret_key" { + path = "minio/group_vars/all/vault.yml" + key = "MINIO_ROOT_PASSWORD" +} + +provider "minio" { + minio_server = "minio.trygvis.io:443" + minio_ssl = "true" + minio_access_key = data.ansiblevault_path.minio_access_key.value + minio_secret_key = data.ansiblevault_path.minio_secret_key.value +} + +################################################# +# Modules + +module "dns" { + source = "./dns" +} + +module "minio" { + source = "./minio" +} + +output "secret" { + value = module.minio.secret +} |