From 7e7f956fae40efefc97711649d55376d2aae1aba Mon Sep 17 00:00:00 2001 From: Paramtamtam <7326800+tarampampam@users.noreply.github.com> Date: Mon, 31 Jan 2022 14:45:12 +0500 Subject: [PATCH] template docs added --- templates/readme.md | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/templates/readme.md b/templates/readme.md index 99cb7ab..7da9746 100644 --- a/templates/readme.md +++ b/templates/readme.md @@ -1 +1,37 @@ -# TODO: Write docs +# Templates + +Creating templates is a very simple operation, even for those who know nothing at all about [Go Template](https://pkg.go.dev/text/template). All you should know is: + +- The template should be one page. Without additional `css` or `js` files (but you can load them from the CDN or another GitHub repositories using [jsdelivr.com](https://www.jsdelivr.com/), for example) +- Don't forget to include `` tag in the header +- You can use a special "placeholders" (wrapped in `{{` and `}}`) for the rendering error code, message and others (see details below) + +## Supported signatures + +### Error page & request data + +| Signature | Description | Example | +|-------------------------------------|---------------------------------------------------------------|----------------------------------------------| +| `{{ code }}` | Error page code | `404` | +| `{{ message }}` | Error code message | `Not found` | +| `{{ description }}` | Error code description | `The server can not find the requested page` | +| `{{ original_uri }}` | `X-Original-URI` header value | `/foo1/bar2` | +| `{{ namespace }}` | `X-Namespace` header value | `foo` | +| `{{ ingress_name }}` | `X-Ingress-Name` header value | `bar` | +| `{{ service_name }}` | `X-Service-Name` header value | `baz` | +| `{{ service_port }}` | `X-Service-Port` header value | `8080` | +| `{{ request_id }}` | `X-Request-ID` header value | `12AB34CD56EF78` | +| `{{ forwarded_for }}` | `X-Forwarded-For` header value | `203.0.113.195, 70.41.3.18` | +| `{{ host }}` | `Host` header value | `example.com` | +| `{{ now.Unix }}` | Current timestamp (e.g. in Unix format) | `1643621927` | +| `{{ hostname }}` | OS hostname | `ab12cd34ef56` | +| `{{ version }}` | Application version | `2.5.0` | +| `{{ if show_details }}...{{ end }}` | Logical operator (server started with "show details" option?) | | +| `{{ if hide_details }}...{{ end }}` | Same as above, but inverted | | + +### Modifiers + +| Signature | Description | Example | +|------------------------------------|--------------------------------|-------------------------------------| +| {{ ... | json }} | Convert value into json-string | {{ code | json }} | +| {{ ... | int }} | Convert value into integer | {{ code | int }} |