Skip to content

Vitesco-Technologies/terraform-module-qip-address

Terraform module for addresses in Nokia QIP

⚠️ Important Notice: Vitesco Technologies has ceased using Nokia QIP as the main DNS tool and we currently don't use this project anymore. No further updates or maintenance will be provided for now.

During our merging with Schaeffler, we will be re-evaluating this tool.

Feel free to keep using the tool if you are able to support yourself. Add your comments to #6.

GitHub tag (with filter) Terraform Registry GitHub Workflow Status GitHub License Open Source

Based on terraform-provider-qip to manage IPv4 addresses in a subnet of Nokia QIP.

Documentation and releases can also be found on the Terraform Registry under Vitesco-Technologies/qip-address.

Example

If you want to use the module in your terraform code, please use a versioned reference:

source = "git::https://github.com/Vitesco-Technologies/terraform-module-qip-address?ref=v1.0.0"
module "address" {
  source = "git::https://github.com/Vitesco-Technologies/terraform-module-qip-address"

  name   = "terraform-test"
  subnet = "192.0.2.0"

  # subnet_range_start = "192.0.2.20"
  # subnet_range_end   = "192.0.2.50"

  # object_class = "Virtualized Server"
  # description  = "This is a very special host"

  # additional_names = ["*.terraform-test"]
}

provider "qip" {
  # server = "https://qip.example.com" # should be set via env QIP_SERVER
  # org    = "Example"                 # should be set via env QIP_ORG
  # username = ""                      # should be set via env QIP_USERNAME
  # password = ""                      # should be set via env QIP_PASSWORD
}

terraform {
  required_version = ">= 0.14"

  required_providers {
    qip = {
      source  = "Vitesco-Technologies/qip"
      version = ">= 1"
    }
  }
}

Requirements

Name Version
terraform >= 0.14
dns ~> 3.2
qip >= 1

Providers

Name Version
dns ~> 3.2
qip >= 1

Inputs

Name Description Type Default Required
additional_names Additional names for the address (with the same domain) list(string) [] no
address Manually provide a IPv4 address to manage. Not recommended string null no
description Object description for the address string "Managed by Terraform" no
name Hostname to register with the local domain of the subnet string n/a yes
object_class Object class for the address string "Virtualized Server" no
resolve_names Resolve names of DNS and NTP servers into IP addresses. bool true no
subnet IPv4 subnet address to create the address in string n/a yes
subnet_range_end End of an address range to select the address in (defaults to the 20th to last host of the subnet, e.g. 192.0.2.235 for 192.0.2.0/24) string null no
subnet_range_start Begin of an address range to select the address in (defaults to the 20th host of the subnet, e.g. 192.0.2.20 for 192.0.2.0/24) string null no

Outputs

Name Description
address The actual IPv4 address managed
address_cidr Address in CIDR notation including the prefix length (e.g. 192.0.2.11/24)
dns_servers IP addresses of all DNS servers assigned to the subnet
domain Local domain assigned to the subnet
domains All domains assigned to the subnet for lookups
fqdn FQDN (full qualified domain name) for the address
gateway Default gateway for the subnet
network_mask Network mask for the address (e.g. 255.255.255.0)
ntp_servers IP addresses of all NTP servers assigned to the subnet. Defaults to the DNS servers
prefix_length CIDR prefix length (e.g. 24)