From 626f6d926f7b12dc31680680fe90cacabfb77f39 Mon Sep 17 00:00:00 2001 From: Graham McIntire Date: Thu, 25 Dec 2025 16:33:13 -0600 Subject: [PATCH] tf state migration --- .gitignore | 13 +++ ...orm-Module.gitlab-ci.yml => .gitlab-ci.yml | 0 terraform/.terraform.lock.hcl | 86 ++++++++++++++----- terraform/main.tf | 25 ++++++ 4 files changed, 103 insertions(+), 21 deletions(-) rename Terraform-Module.gitlab-ci.yml => .gitlab-ci.yml (100%) diff --git a/.gitignore b/.gitignore index e67c854..0ca72f8 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,16 @@ # Terraform state files **/terraform.tfstate **/terraform.tfstate.* +**/terraform.tfstate.*.backup + +# Terraform variable files +**/*.tfvars +**/*.auto.tfvars +!**/terraform.tfvars.example + +# Terraform lock info +**/.terraform.tfstate.lock.info + +# Terraform plan files +**/tfplan +**/*.tfplan diff --git a/Terraform-Module.gitlab-ci.yml b/.gitlab-ci.yml similarity index 100% rename from Terraform-Module.gitlab-ci.yml rename to .gitlab-ci.yml diff --git a/terraform/.terraform.lock.hcl b/terraform/.terraform.lock.hcl index 461725b..b9e7201 100644 --- a/terraform/.terraform.lock.hcl +++ b/terraform/.terraform.lock.hcl @@ -1,23 +1,6 @@ -# This file is maintained automatically by "tofu init". +# This file is maintained automatically by "terraform init". # Manual edits may be lost in future updates. -provider "registry.opentofu.org/cloudflare/cloudflare" { - version = "5.15.0" - constraints = "~> 5.0" - hashes = [ - "h1:EY8mWQO1NTqXuxnZxwVppF7AiLRdx7vRLYk6O7yzgPs=", - "zh:20a72bdbb28435f11d165b367732369e8f8163100a214e89ad720dae03fafa0c", - "zh:2eabd7a51fd7aafcab9861631d85c895914857e4fcd6fe2dd80bac22e74a1f47", - "zh:62828afbc1ba0e0a64bbb7d5d42ae3c2fbbaabb793010b07eba770ba91bae94f", - "zh:6693f1021e52c34a629300fbcd91f8bd4ca386fda3b45aec746b9c200c28a42c", - "zh:6873a15454b289e5baecc1d36ce8997266438761386a320753c63f13407f4a6b", - "zh:afbf4e56b3a5e5950b35b02b553313e4a2008415920b23f536682269c64ca549", - "zh:db367612900bc2e5a01c6a325e4cff9b1b04960ce9de3dd41671dda5a627ca1d", - "zh:eb7365eafc6160c3b304a9ce6a598e5400a2e779e9e2bd27976df244f79f774f", - "zh:f809ab383cca0a5f83072981c64208cbd7fa67e986a86ee02dd2c82333221e32", - ] -} - provider "registry.opentofu.org/dnsimple/dnsimple" { version = "2.0.0" constraints = "~> 2.0" @@ -41,7 +24,68 @@ provider "registry.opentofu.org/dnsimple/dnsimple" { ] } -provider "registry.opentofu.org/kyswtn/porkbun" { +provider "registry.opentofu.org/pan-net/powerdns" { + version = "1.5.0" + constraints = "~> 1.5" + hashes = [ + "h1:oMzrqQGFY88Cwx06YkFHP6io3jow/22FRZkeK0UZtGY=", + "zh:02d1a87c28635779f66d1dcf165b5f16530f809deb6c71c35c3e58d715a88bf4", + "zh:1285a419c7fd2947f891771bd77d2f6e7dd0cb00621c547b6993947085616009", + "zh:340faecd0a0036e721480564acbad2ba0da6a9c0c0cd633957dcde76a4ba3798", + "zh:5646f78d9980038c4ae70e09828da01c7cc6ba2b3b1e9ea8a1988efafaba1b75", + "zh:66fef65aede775d9972be163a2bd25d8fda5a8ad2235ceef30d515bf35e2e5d4", + "zh:7130faa5dd892b1d41b9b3ebd1b2d7854bf780193073de58806e088311bb554c", + "zh:9f47b66ce7f4b23d25c4a726ffc5e504f797f247912cfa5dff23b3da0ba18982", + "zh:ada63a886bc5d7980eeb22b59b166713617847626627007d2e8429eeb4346327", + "zh:c853237b7831942d3d0f0f7a7a334e8f9df8a12f217c5680a76db256e368230d", + "zh:d2e8827d9d8662a892dbd1df6155823c8167db6f6762f38885037c7da87612b1", + "zh:d6e1069bb9d9f368e5d55a8bdf55de23636a586d698515f0075733499d6b9ccc", + "zh:dd224d521af2f72bfdc3498c5ccd54b09844cfaa347b3008f61faad465cc9769", + "zh:e02960d79ccfeeaea64c07aa1ad88cdd3688f49b670c9b607ea188283cd519d6", + ] +} + +provider "registry.terraform.io/cloudflare/cloudflare" { + version = "5.15.0" + constraints = "~> 5.0" + hashes = [ + "h1:EY8mWQO1NTqXuxnZxwVppF7AiLRdx7vRLYk6O7yzgPs=", + "zh:20a72bdbb28435f11d165b367732369e8f8163100a214e89ad720dae03fafa0c", + "zh:2eabd7a51fd7aafcab9861631d85c895914857e4fcd6fe2dd80bac22e74a1f47", + "zh:62828afbc1ba0e0a64bbb7d5d42ae3c2fbbaabb793010b07eba770ba91bae94f", + "zh:6693f1021e52c34a629300fbcd91f8bd4ca386fda3b45aec746b9c200c28a42c", + "zh:6873a15454b289e5baecc1d36ce8997266438761386a320753c63f13407f4a6b", + "zh:afbf4e56b3a5e5950b35b02b553313e4a2008415920b23f536682269c64ca549", + "zh:db367612900bc2e5a01c6a325e4cff9b1b04960ce9de3dd41671dda5a627ca1d", + "zh:eb7365eafc6160c3b304a9ce6a598e5400a2e779e9e2bd27976df244f79f774f", + "zh:f809ab383cca0a5f83072981c64208cbd7fa67e986a86ee02dd2c82333221e32", + ] +} + +provider "registry.terraform.io/dnsimple/dnsimple" { + version = "2.0.0" + constraints = "~> 2.0" + hashes = [ + "h1:wWsupXlmlShs8m4C2dTaNcYTxFJtDipftKWlXk+jX1U=", + "zh:0fb015799f6d37323cdc2776eed67657721df24311bf5b458f7fcce65ec66dea", + "zh:533cd0f6edd4ed6610b324b39aa3abb5e84293a3aaa176042826f17f10a20557", + "zh:77d13ff083eeeb408822e885934925b9010462ca7601d35f2a1c2b0d5faf2f52", + "zh:9be63f37c98050a30e43066805ac70db3e3ddfcf03607c9c8d8d13ebd3503648", + "zh:a66a61ab90840b5ae9513f302f76e2348acb8bca50cb702e1f6fbcd24b1111fb", + "zh:b65d2f77f20a9587f169aaeccd8e12f07a713294fd687043ff041538c5da5cf9", + "zh:c24faaefb7f87050f1dfbf6c7a9a522df07ab97e9ce73d7fd20bce761d092076", + "zh:d0072167c5f52cd63e245d6b136a8e62979c0b0979fbea5a07015d5bfb6e7191", + "zh:d07dee2322cf12ffc439059f7f3a58a5d740fe7ad934f96b84b0be3257ee31cb", + "zh:d0c898dcc7d51427348d641474a74521c029d2cd9713f262e404f5fb36f4c3a5", + "zh:d9322e1a3dba21316713ada4b8de6c4090ca6b76b418ef55b85dbe7c0a578391", + "zh:e0e0b5f07293ff2c0ddb1c561dcb430924897022995006c4bb71719cf3995d9d", + "zh:e4eb3deac11f7798ea991fd044aec6a23592cbd887a7f3d1d415e8f553ba7b39", + "zh:f1d307fe43f3a8be6a97111dbe025ccd0bb4a5c8dadd54abc48adec8701336b1", + "zh:f809ab383cca0a5f83072981c64208cbd7fa67e986a86ee02dd2c82333221e32", + ] +} + +provider "registry.terraform.io/kyswtn/porkbun" { version = "0.1.3" constraints = "~> 0.1" hashes = [ @@ -64,7 +108,7 @@ provider "registry.opentofu.org/kyswtn/porkbun" { ] } -provider "registry.opentofu.org/pan-net/powerdns" { +provider "registry.terraform.io/pan-net/powerdns" { version = "1.5.0" constraints = "~> 1.5" hashes = [ @@ -85,7 +129,7 @@ provider "registry.opentofu.org/pan-net/powerdns" { ] } -provider "registry.opentofu.org/vultr/vultr" { +provider "registry.terraform.io/vultr/vultr" { version = "2.28.0" constraints = "~> 2.28" hashes = [ diff --git a/terraform/main.tf b/terraform/main.tf index bc4e840..1a738fb 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -64,3 +64,28 @@ provider "powerdns" { api_key = var.pdns_vultr_api_key server_url = "http://100.93.123.98:8081" } + +variable "example_remote_state_address" { + type = string + description = "Gitlab remote state file address" +} + +variable "example_username" { + type = string + description = "Gitlab username to query remote state" +} + +variable "example_access_token" { + type = string + description = "GitLab access token to query remote state" +} + +data "terraform_remote_state" "example" { + backend = "http" + + config = { + address = var.remote_state_address + username = var.username + password = var.access_token + } +}