summaryrefslogtreecommitdiff
path: root/acme/main.tf
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2021-01-07 23:38:01 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2021-01-07 23:38:01 +0100
commit3d25f7059f518dd8c857dd5e45552ba3ab733aa6 (patch)
treee7bbd7f2c6c7cfe41398335da0ab51807b54931c /acme/main.tf
parent70d0ad3c9f37e44a9504a0d7f66e412a3f3bba6f (diff)
downloadrules-sandbox-3d25f7059f518dd8c857dd5e45552ba3ab733aa6.tar.gz
rules-sandbox-3d25f7059f518dd8c857dd5e45552ba3ab733aa6.tar.bz2
rules-sandbox-3d25f7059f518dd8c857dd5e45552ba3ab733aa6.tar.xz
rules-sandbox-3d25f7059f518dd8c857dd5e45552ba3ab733aa6.zip
Working terraform setup.
Diffstat (limited to 'acme/main.tf')
-rw-r--r--acme/main.tf60
1 files changed, 60 insertions, 0 deletions
diff --git a/acme/main.tf b/acme/main.tf
new file mode 100644
index 0000000..c7b91b2
--- /dev/null
+++ b/acme/main.tf
@@ -0,0 +1,60 @@
+terraform {
+ required_providers {
+ scaleway = {
+ source = "scaleway/scaleway"
+ version = "1.17.2"
+ }
+
+ ansiblevault = {
+ source = "MeilleursAgents/ansiblevault"
+ version = "2.2.0"
+ }
+ }
+}
+
+variable "ansible_vault_pass" {
+ type = string
+}
+
+provider "ansiblevault" {
+ # vault_path = ".vault-password"
+ vault_pass = var.ansible_vault_pass
+ root_folder = "."
+}
+
+data "ansiblevault_path" "scaleway_access_key" {
+ path = "vault/scaleway.yml"
+ key = "scaleway_access_key"
+}
+data "ansiblevault_path" "scaleway_secret_key" {
+ path = "vault/scaleway.yml"
+ key = "scaleway_secret_key"
+}
+data "ansiblevault_path" "scaleway_organization" {
+ path = "vault/scaleway.yml"
+ key = "scaleway_organization"
+}
+
+provider "scaleway" {
+ region = "fr-par"
+ zone = "fr-par-1"
+ access_key = data.ansiblevault_path.scaleway_access_key.value
+ secret_key = data.ansiblevault_path.scaleway_secret_key.value
+ organization_id = data.ansiblevault_path.scaleway_organization.value
+}
+
+# This can also be generated from input objects, but it might be reused between different modules so some control
+# over if/when it is generated is required.
+resource "google_dns_managed_zone" "acme" {
+ name = "acme"
+ dns_name = "machine.acme.com."
+}
+
+module "acme-apps" {
+ source = "../acme-apps/terraform"
+ providers = {
+ scaleway = scaleway
+ }
+
+ acme_zone = google_dns_managed_zone.acme.name
+}