Commit Graph

20 Commits

Author SHA1 Message Date
Quentin Machu f721608e4e provider/template: Add a 'dir' resource to template entire directories
When TerraForm is used to configure and deploy infrastructure
applications that require dozens templated files, such as Kubernetes, it
becomes extremely burdensome to template them individually: each of them
requires a data source block as well as an upload/export (file
provisioner, AWS S3, ...).

Instead, this commit introduces a mean to template an entire folder of
files (recursively), that can then be treated as a whole by any provider
or provisioner that support directory inputs (such as the
file provisioner, the archive provider, ...).

This does not intend to make TerraForm a full-fledged templating system
as the templating grammar and capabilities are left unchanged. This only
aims at improving the user-experience of the existing templating
provider by significantly reducing the overhead when several files are
to be generated - without forcing the users to rely on external tools
when these templates stay simple and that their generation in TerraForm
is justified.
2017-04-25 10:48:26 -07:00
Seth Vargo 0540c213c0
Update template provider 2017-04-10 12:29:20 -04:00
Martin Atkins 5fc7414076 website: Activate HCL syntax highlighting for Template provider docs 2017-04-07 16:46:56 -07:00
George Christou 61277c0dbd website/docs: Run `terraform fmt` on code examples (#12075)
* docs/vsphere: Fix code block

* docs: Convert `...` to `# ...` to allow `terraform fmt`ing

* docs: Trim trailing whitespace

* docs: First-pass run of `terraform fmt` on code examples
2017-02-19 00:48:50 +02:00
Abdul Rehman ec7182148a Added example of variable reference inside file (#11097)
This tripped me up earlier as I was referencing inside the file as $${variable} when it should be ${variable}. Think is brings clarity, cheers.
2017-01-09 09:36:16 +01:00
Mitchell Hashimoto 7d6b3b80b9
website: document escaping template vars [GH-9897] 2016-11-07 08:42:46 -08:00
Paul Hinze b7e854fa8b
provider/template: validate vars are primitives
Closes #7160 by returning a proper error.
2016-07-11 16:01:05 -05:00
Martin Atkins 861ac536dd provider/template: convert resources to data sources
The template resources don't actually need to retain any state, so they
are good candidates to be data sources.

This includes a few tweaks to the acceptance tests -- now configured to
run as unit tests -- since it seems that they have been slightly broken
for a while now. In particular, the "update" cases are no longer tested
because updating is not a meaningful operation for a data source.
2016-07-08 17:11:17 +01:00
Cameron Stokes 0857b13cb9 Fix markdown issue in template_file docs
Extra underscore was breaking markdown.
2016-06-24 07:53:21 -07:00
Peter Marton 2df53f283d Add gzip and base64 default values to cloudinit template docs (#4875) 2016-04-11 14:19:04 -05:00
Paul Hinze b6907f9bd4 docs: cloudinit_config - correct syntax and add sidebar link 2016-01-08 13:34:16 -06:00
James Nugent a4568c596e Fix CloudInit doc format and give better example 2015-12-21 13:32:26 -05:00
James Nugent 16c8750bab Make minor alterations to the cloudinit docs 2015-12-21 13:32:26 -05:00
James Nugent a926fa6fdd Adds template_cloudinit_config resource to template
This adds a new resource to template to generate multipart cloudinit
configurations to be used with other providers/resources.

The resource has the ability gzip and base64 encode the parts.
2015-12-21 13:32:26 -05:00
Michael Vermaes f0292d420f Update template example for new syntax 2015-11-24 13:42:37 +02:00
Luke Amdor f23a4994ae docs: fix template_file syntax error 2015-11-17 16:45:08 -06:00
Paul Hinze 928f534cfc template_file: source contents instead of path
Building on the work of #3846, deprecate `filename` in favor of a
`template` attribute that accepts file contents instead of a path.

Required a bit of work in the interpolation code to prevent Terraform
from assuming that template interpolations were resource variables that
needed to be resolved. Leaving them as "Unknown Variables" prevents
interpolation from happening early and lets the `template_file` resource
do its thing.
2015-11-13 11:24:20 -06:00
Paul Hinze 2cea7c7d0c docs: clarify template_file path information
- change example to use the most commonly necessary path format w/
   `path.module`
 - link to path variable page in description

/cc @KFishner
2015-07-31 11:44:07 -05:00
7heo ff9b74c7e8 More internal links in template documentation. 2015-05-27 12:22:52 +02:00
Mitchell Hashimoto f1ae920aa9 website: document templating as a provider 2015-05-07 18:20:22 -07:00