Terraform module for dummy hosts
Go to file
Jakub Sokołowski 468348bc8c
versions: upgrade cloudflare from 3.26.0 to 4.26.0
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-03-14 23:28:48 +01:00
README.md switch domain from statusim.net to status.im 2024-03-14 19:51:36 +01:00
main.tf switch domain from statusim.net to status.im 2024-03-14 19:51:36 +01:00
outputs.tf add dummy-module files from infra-nimbus 2022-05-05 12:46:21 +02:00
variables.tf switch domain from statusim.net to status.im 2024-03-14 19:51:36 +01:00
versions.tf versions: upgrade cloudflare from 3.26.0 to 4.26.0 2024-03-14 23:28:48 +01:00

README.md

Description

This is a dummy module which does not create any actual cloud resources. It's intended for registering hosts which cannot be managed with Terraform to our infra.

For example providers like Hetzner or MacStadium have no provider module for Terrafom.

This module creates the Ansible inventory hosts in order to make hosts appear the same way all the other hosts created by Terraform do.

Variables

  • Static
    • ips - List of public IPs for dummy hosts. (default: [])
  • General
    • region - Region in which the host will be created.
    • prefix - Short name of provider being used.
    • name - Prefix of hostname before index. (default: node)
    • group - Name of Ansible group to add hosts to.
    • env - Environment for these hosts, affects DNS entries.
    • stage - Name of stage, like prod, dev, or staging.
  • DNS
    • cf_zone_id - CloudFlare DNS domain zone ID. (ID for status.im)
    • domain - DNS Domain for hostnames. (default: status.im)

Usage

module "hosts" {
  source = "./modules/dummy-module"

  name   = "node"
  env    = "example"
  stage  = "prod"
  group  = "example-prod"
  region = "eu-hel1"
  prefix = "he"

  ips = [
    "12.34.56.78",
    "23.45.67.89",
    "98.76.54.32",
  ]
}