1
0
Fork 0
mirror of https://github.com/adnanh/webhook.git synced 2026-01-23 02:24:30 +00:00

docs: Documented cat and credential template functions (#739)

This commit is contained in:
DIGVIJAY 2025-11-28 02:39:50 +05:30 committed by GitHub
parent 7ea2a53bbb
commit 34d4418840
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -73,5 +73,38 @@ Additionally, the result is piped through the built-in Go template function `js`
```
## Template Functions
In addition to the [built-in Go template functions and features][tt], `webhook` provides the following functions:
### `getenv`
The `getenv` template function can be used for inserting environment variables into a templated configuration file.
Example:
```
"Secret": "{{getenv TEST_secret | js}}"
```
### `cat`
The `cat` template function can be used to read a file from the local filesystem. This is useful for reading secrets from files. If the file doesn't exist, it returns an empty string.
Example:
```
"secret": "{{ cat "/run/secrets/my-secret" | js }}"
```
### `credential`
The `credential` template function provides a way to retrieve secrets using [systemd's LoadCredential mechanism](https://www.freedesktop.org/software/systemd/man/systemd.exec.html#Credentials). It reads the file specified by the given name from the directory specified in the `CREDENTIALS_DIRECTORY` environment variable.
If `CREDENTIALS_DIRECTORY` is not set, it will fall back to using `getenv` to read the secret from an environment variable of the given name.
Example:
```
"secret": "{{ credential "my-secret" | js }}"
```
[w]: https://github.com/adnanh/webhook
[tt]: https://golang.org/pkg/text/template/