cb6cb8b96a
This commit adds support for declaring variable types in Terraform configuration. Historically, the type has been inferred from the default value, defaulting to string if no default was supplied. This has caused users to devise workarounds if they wanted to declare a map but provide values from a .tfvars file (for example). The new syntax adds the "type" key to variable blocks: ``` variable "i_am_a_string" { type = "string" } variable "i_am_a_map" { type = "map" } ``` This commit does _not_ extend the type system to include bools, integers or floats - the only two types available are maps and strings. Validation is performed if a default value is provided in order to ensure that the default value type matches the declared type. In the case that a type is not declared, the old logic is used for determining the type. This allows backwards compatiblity with previous Terraform configuration. |
||
---|---|---|
.. | ||
.bundle | ||
helpers | ||
scripts | ||
source | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE.md | ||
Makefile | ||
README.md | ||
Vagrantfile | ||
config.rb | ||
config.ru | ||
packer.json |
README.md
Terraform Website
This subdirectory contains the entire source for the Terraform Website. This is a Middleman project, which builds a static site from these source files.
Contributions Welcome
If you find a typo or you feel like you can improve the HTML, CSS, or JavaScript, we welcome contributions. Feel free to open issues or pull requests like any normal GitHub project, and we'll merge it in.
Running the Site Locally
Running the site locally is simple. First you need a working copy of Ruby >= 2.0 and Bundler. Then you can clone this repo and run make dev
.
Then open up http://localhost:4567
. Note that some URLs you may need to append
".html" to make them work (in the navigation).