terraform/config
Martin Atkins ef161e1c1b Various interpolation functions for CIDR range manipulation.
These new functions allow Terraform to be used for network address space
planning tasks, and make it easier to produce reusable modules that
contain or depend on network infrastructure.

For example:
- cidrsubnet allows an aws_subnet to derive its
  CIDR prefix from its parent aws_vpc.
- cidrhost allows a fixed IP address for a resource to be assigned within
  an address range defined elsewhere.
- cidrnetmask provides the dotted-decimal form of a prefix length that is
  accepted by some systems such as routing tables and static network
  interface configuration files.

The bulk of the work here is done by an external library I authored called
go-cidr. It is MIT licensed and was implemented primarily for the purpose
of using it within Terraform. It has its own unit tests and so the unit
tests within this change focus on simple success cases and on the correct
handling of the various error cases.
2015-10-22 08:10:52 -07:00
..
lang config/lang: restore go1.4.3 generated code 2015-10-21 09:49:23 -05:00
module fix a bunch of tests from go-getter import 2015-10-15 13:48:58 -07:00
test-fixtures Adding ignore_changes lifecycle meta property 2015-10-14 16:34:27 -05:00
append.go config: allow atlas block 2015-03-24 13:30:22 -07:00
append_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
config.go Adding ignore_changes lifecycle meta property 2015-10-14 16:34:27 -05:00
config_string.go config: add Config method 2014-10-02 11:34:08 -07:00
config_test.go Add a function to load JSON directly 2015-06-23 16:15:26 +02:00
config_tree.go config: make Merge an exported func 2014-07-18 17:05:22 -07:00
import_tree.go Condense switch fallthroughs into expr lists 2015-05-26 21:52:36 -04:00
interpolate.go config: self variables 2015-02-23 14:34:25 -08:00
interpolate_funcs.go Various interpolation functions for CIDR range manipulation. 2015-10-22 08:10:52 -07:00
interpolate_funcs_test.go Various interpolation functions for CIDR range manipulation. 2015-10-22 08:10:52 -07:00
interpolate_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
interpolate_walk.go core: allow distinguishing between empty lists and strings 2015-06-25 18:53:35 -05:00
interpolate_walk_test.go core: allow distinguishing between empty lists and strings 2015-06-25 18:53:35 -05:00
lang.go config/lang; missed file 2015-01-15 09:40:36 -08:00
loader.go removed extra parentheses 2015-10-08 15:48:04 +03:00
loader_hcl.go remove various typos 2015-09-11 11:56:20 -07:00
loader_hcl_test.go config: HCL loader 2014-08-11 09:58:53 -07:00
loader_test.go Adding ignore_changes lifecycle meta property 2015-10-14 16:34:27 -05:00
merge.go config: allow atlas block 2015-03-24 13:30:22 -07:00
merge_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
raw_config.go core: keys() and values() funcs for map variables 2015-06-02 16:49:51 -05:00
raw_config_test.go config: if any var is computed, the entire interpolation is computed 2015-02-27 22:47:43 -08:00
string_list.go go fmt the "compact" function changes. 2015-10-10 15:17:25 -07:00
string_list_test.go Add tests for empty string lists 2015-10-08 17:32:54 +02:00