templater icon indicating copy to clipboard operation
templater copied to clipboard

CMD golang template cli using sprig library. Like helm. But only for local templating.

Templater

License Build Status Version

Templater is a cli tool that helps you to quickly and easily create files from templates, using go template.

How to use

  1. Inline variables
# File using helm templating
cat <<'EOF'>file
---
{{- $name := "John" }}
class:
{{- range $i := until 11 }}
  {{$i}}: {{$name}}
{{- end }}
EOF

templater -i file

# This will be the output

File: out/file
---
class:
  0: John
  1: John
  2: John
  3: John
  4: John
  5: John
  6: John
  7: John
  8: John
  9: John
  10: John

  1. Passing variables from external yaml, using helm style templating.
# Value file
cat <<'EOF'>values.yaml
school: Govt. Public School
EOF
# File using helm templating
cat <<'EOF'>file
---
{{- $name := "John" }}
class:
  school: {{ .Values.school }}
{{- range $i := until 11 }}
  {{$i}}: {{$name}}
{{- end }}
EOF

templater -i file -f values.yaml -o out/

# This will be the output

File: out/file
---
class:
  school: Govt. Public School
  0: John
  1: John
  2: John
  3: John
  4: John
  5: John
  6: John
  7: John
  8: John
  9: John
  10: John

Installation

  1. HomeBrew

brew install rjshrjndrn/tap/templater

  1. Binary

Download the latest binary from Release Page.

  1. Using go get
go get github.com/rjshrjndrn/templater