Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documented environment variables used in Tink Server/CLI/Worker: #545

Merged
merged 3 commits into from
Oct 19, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,4 @@ terraform.tfstate.backup
envrc
.env
deploy/state
out/
4 changes: 4 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -191,3 +191,7 @@ CI will ensure generated files are up to date.
│   ├── template
│   └── workflow
```

### environment variables

Tink Server, CLI, and Worker environment variables are documented [here](docs/ENVVARS.md).
38 changes: 38 additions & 0 deletions docs/ENVVARS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Environment Variables

The follow describes environment variables available to be set when running Tink Server, Tink CLI, or Tink Worker.

| Name | Type | Service(s) | Description |
| ---------------------------------------------------------------------------------------------- | ------ | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `TINK_AUTH_USERNAME=tink` | string | server | username to use for basic auth to http endpoints |
| `TINK_AUTH_PASSWORD=tink` | string | server | password to use for basic auth to http endpoints |
| `TINKERBELL_CERT_URL=http://127.0.0.1:42114/cert` | string | cli/worker | url from which to get a TLS certificate, needed when Tink Server's TLS cert is signed by an unknown certificate authority, ie self-signed |
| `CERTS_DIR=/certs` | string | server | a directory which contains the `bundle.pem` and `server-key.pem` files, for use when running Tink with TLS |
| `TINKERBELL_CERTS_DIR=/certs` | string | server | same as `CERTS_DIR`, deprecated in server |
| `TLS_CERT="-----BEGIN RSA PRIVATE KEY-----\n....\n-----END RSA PRIVATE KEY-----\n"` | string | server | a TLS certificate for use with Tink server |
| `TINKERBELL_TLS_CERT="-----BEGIN RSA PRIVATE KEY-----\n....\n-----END RSA PRIVATE KEY-----\n"` | string | server | same as `TLS_CERT`, deprecated in server |
| `GRPC_AUTHORITY=127.0.0.1:42113` | string | server | url of the Tink gRPC server |
| `TINKERBELL_GRPC_AUTHORITY=127.0.0.1:42113` | string | server/cli/worker | same as `GRPC_AUTHORITY`, deprecated in server |
| `HTTP_AUTHORITY=127.0.0.1:42114` | string | server | url of the Tink HTTP server |
| `TINKERBELL_HTTP_AUTHORITY=127.0.0.1:42114` | string | server | same as `HTTP_AUTHORITY`, deprecated in server |
| `FACILITY=onprem` | string | server/cli | location for which the Tink server serves, deprecated in server |
| `POSTGRES_DATABASE=tinkerbell` | string | server | name of the PostgreSQL database for use in the Tink server |
| `PGDATABASE=tinkerbell` | string | server | same as `POSTGRES_DATABASE`, deprecated in server |
| `POSTGRES_USER=tink` | string | server | PostgreSQL username for connecting to the DB |
| `PGUSER=tink` | string | server | same as `POSTGRES_USER`, deprecated in server |
| `POSTGRES_PASSWORD=tink` | string | server | PostgreSQL password for connecting to the DB |
| `PGPASSWORD=tink` | string | server | same as `POSTGRES_PASSWORD`, deprecated in server |
| `POSTGRES_SSLMODE=disable` | string | server | sets the PostgreSQL SSL priority [docs](https://www.postgresql.org/docs/10/libpq-connect.html#LIBPQ-CONNECT-SSLMODE) |
| `PGSSLMODE=disable` | string | server | same as `POSTGRES_SSLMODE`, deprecated in server |
| `MAX_WORKFLOW_DATA_VERSIONS=` | int | server | maximum number of workflow data versions to be kept in database |
| `EVENTS_TTL=60` | string | server | purges the events in the events table that have passed this TTL in minutes |
| `ONLY_MIGRATION=true` | bool | server | if set to true, only POSTGRES migrations are executed |
| `TINK_CLI_VERSION="0.0.0"` | string | cli | if set to `0.0.0`, the old get command is used |
| `DOCKER_REGISTRY=` | string | worker | the docker registry to use for pulling images |
| `REGISTRY_PASSWORD=` | string | worker | the password for the docker registry |
| `REGISTRY_USERNAME=` | string | worker | the username for the docker registry |
| `ID=` | string | worker | the id of the workflow to be executed |
| `RETRY_INTERVAL=` | int | worker | the interval in seconds between retries for setting up connections to, querying for workflows from, and sending status reports to Tink Server |
| `MAX_RETRIES=` | int | worker | the maximum number of retries for setting up connections and sending status reports to Tink Server |
| `MAX_FILE_SIZE=` | int | worker | the maximum size in bytes for the Tink worker data file |
| `CAPTURE_ACTION_LOGS=` | bool | worker | Capture action container output as part of worker logs |