Merge pull request #41 from HideyoshiSolutions/cloudflare-dns-implementation
Initial Cloudflare Implementation
This commit is contained in:
@@ -35,12 +35,12 @@ variable "aws_secret" {
|
|||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "godaddy_key" {
|
variable "cloudflare_api_token" {
|
||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "godaddy_secret" {
|
variable "cloudflare_zone_id" {
|
||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "ssh_public_key_main" {
|
variable "ssh_public_key_main" {
|
||||||
|
|||||||
43
dns/dns.tf
43
dns/dns.tf
@@ -1,8 +1,8 @@
|
|||||||
terraform {
|
terraform {
|
||||||
required_providers {
|
required_providers {
|
||||||
godaddy = {
|
cloudflare = {
|
||||||
source = "zaneatwork/godaddy"
|
source = "cloudflare/cloudflare"
|
||||||
version = "1.9.10"
|
version = "~> 4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -16,25 +16,28 @@ variable "environment_name" {
|
|||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
variable "cloudflare_zone_id" {
|
||||||
|
type = string
|
||||||
|
}
|
||||||
|
|
||||||
resource "godaddy_domain_record" "default" {
|
|
||||||
domain = "hideyoshi.com.br"
|
|
||||||
|
|
||||||
overwrite = false
|
resource "cloudflare_record" "default" {
|
||||||
|
zone_id = var.cloudflare_zone_id
|
||||||
|
|
||||||
record {
|
name = var.environment_name == "prod" ? "@" : "staging"
|
||||||
name = var.environment_name == "prod" ? "@" : "staging"
|
value = var.public_ip
|
||||||
type = "A"
|
type = "A"
|
||||||
data = "${var.public_ip}"
|
ttl = 3600
|
||||||
ttl = 600
|
proxied = false
|
||||||
priority = 0
|
}
|
||||||
}
|
|
||||||
|
|
||||||
record {
|
|
||||||
name = var.environment_name == "prod" ? "api" : "api.staging"
|
resource "cloudflare_record" "api" {
|
||||||
type = "A"
|
zone_id = var.cloudflare_zone_id
|
||||||
data = "${var.public_ip}"
|
|
||||||
ttl = 600
|
name = var.environment_name == "prod" ? "api" : "api.staging"
|
||||||
priority = 0
|
value = var.public_ip
|
||||||
}
|
type = "A"
|
||||||
|
ttl = 3600
|
||||||
|
proxied = false
|
||||||
}
|
}
|
||||||
14
main.tf
14
main.tf
@@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
terraform {
|
terraform {
|
||||||
required_providers {
|
required_providers {
|
||||||
godaddy = {
|
cloudflare = {
|
||||||
source = "zaneatwork/godaddy"
|
source = "cloudflare/cloudflare"
|
||||||
version = "1.9.10"
|
version = "~> 4.0"
|
||||||
}
|
}
|
||||||
aws = {
|
aws = {
|
||||||
source = "hashicorp/aws"
|
source = "hashicorp/aws"
|
||||||
@@ -19,9 +19,8 @@ provider "aws" {
|
|||||||
secret_key = var.aws_secret
|
secret_key = var.aws_secret
|
||||||
}
|
}
|
||||||
|
|
||||||
provider "godaddy" {
|
provider "cloudflare" {
|
||||||
key = var.godaddy_key
|
api_token = var.cloudflare_api_token
|
||||||
secret = var.godaddy_secret
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -53,8 +52,9 @@ module "instances" {
|
|||||||
module "dns" {
|
module "dns" {
|
||||||
source = "./dns"
|
source = "./dns"
|
||||||
providers = {
|
providers = {
|
||||||
godaddy = godaddy
|
cloudflare = cloudflare
|
||||||
}
|
}
|
||||||
public_ip = module.instances.pool_master_public_ip
|
public_ip = module.instances.pool_master_public_ip
|
||||||
environment_name = var.environment_name
|
environment_name = var.environment_name
|
||||||
|
cloudflare_zone_id = var.cloudflare_zone_id
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user