Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alex-leonhardt/terraform-provider-gotemplate

a custom terraform provider to use go text/template language instead of terraform's
https://github.com/alex-leonhardt/terraform-provider-gotemplate

golang template terraform terraform-provider

Last synced: about 2 months ago
JSON representation

a custom terraform provider to use go text/template language instead of terraform's

Awesome Lists containing this project

README

        

# terraform-provider-gotemplate

## build and run tf
```
go build -o terraform-provider-gotemplate; tf init; tf plan && tf apply
```

## mixed json

when having a mix of json, like
```
{
"m": "yolo",
22
}
```

one can use the included `template funcs` to assert the type and change how one deals with the values/keys - example see:
https://gist.github.com/alex-leonhardt/8ed3f78545706d89d466434fb6870023

### template functions

to assert a type when dealing with mixed json, you have the following available:
- isInt
- isString
- isSlice
- isArray
- isMap

and you can use them like this

```
{{ if isInt $v }}
do stuff with {{ $v }}
{{ endif }}

{{ if isMap $v }}
do range over {{ $v }} like ...
{{ range $k, $v := $v -}}
k={{ $k }}, v={{ $v }}
{{- end }}
{{ endif }}
```