# Google Network Peering This module allows creation of a [VPC Network Peering](https://cloud.google.com/vpc/docs/vpc-peering) between two networks. The resources created/managed by this module are: - one network peering from `local network` to `peer network` - one network peering from `peer network` to `local network` ## Usage Basic usage of this module is as follows: ```hcl module "peering" { source = "modules/net-vpc-peering" prefix = "name-prefix" local_network = "" peer_network = "" } ``` If you need to create more than one peering for the same VPC Network `(A -> B, A -> C)` you have to use output from the first module as a dependency for the second one to keep order of peering creation (It is not currently possible to create more than one peering connection for a VPC Network at the same time). ```hcl module "peering-a-b" { source = "modules/net-vpc-peering" prefix = "name-prefix" local_network = "" peer_network = "" } module "peering-a-c" { source = "modules/net-vpc-peering" prefix = "name-prefix" local_network = "" peer_network = "" module_depends_on = [module.peering-a-b.complete] } ``` ## Variables | name | description | type | required | default | |---|---|:---: |:---:|:---:| | local_network | Resource link of the network to add a peering to. | string | ✓ | | | peer_network | Resource link of the peer network. | string | ✓ | | | *export_local_custom_routes* | Export custom routes to peer network from local network. | bool | | false | | *export_peer_custom_routes* | Export custom routes to local network from peer network. | bool | | false | | *module_depends_on* | List of modules or resources this module depends on. | list | | [] | | *prefix* | Name prefix for the network peerings | string | | network-peering | ## Outputs | name | description | sensitive | |---|---|:---:| | complete | Output to be used as a module dependency. | | | local_network_peering | Network peering resource. | | | peer_network_peering | Peer network peering resource. | |