Skip to content

dodevops/terraform-azure-network

Repository files navigation

Azure network resources

Introduction

This module manages required Azure network resources.

Usage

Instantiate the module by calling it from Terraform like this:

module "azure-network" {
  source = "dodevops/network/azure"
  version = "<version>"
  
  (...)
}

Requirements

No requirements.

Providers

The following providers are used by this module:

  • azurerm

Modules

No modules.

Resources

The following resources are used by this module:

Required Inputs

The following input variables are required:

location

Description: The azure location used for azure

Type: string

network_cidr

Description: The address space to use for the complete network

Type: string

project

Description: Three letter project key

Type: string

resource_group

Description: Azure Resource Group to use

Type: string

stage

Description: Stage for this ressource group

Type: string

subnets

Description: A map of subnets (with a map of rules for each subnet to apply to the network security group of the virtual network for each of the subnets)

Type:

map(object({
    cidr              = list(string)
    service_endpoints = list(string)
    service_delegations = map(object({
      name    = string,
      actions = list(string),
    }))
    private_endpoint_network_policies = string
    rules = map(object({
      priority                     = number,
      source_address_prefixes      = list(string),
      source_port_ranges           = list(string),
      destination_address_prefixes = list(string),
      destination_port_ranges      = list(string),
      protocol                     = string,
    }))
  }))

Optional Inputs

The following input variables are optional (have default values):

peering_remote_virtual_network_id

Description: The id of the remote virtual network to peer to, if required

Type: string

Default: ""

Outputs

The following outputs are exported:

network

Description: The created network resource

subnet_ids

Description: Map of the created subnet ids

Development

Use terraform-docs to generate the API documentation by running

terraform fmt .
terraform-docs .