Configuring
The client
Two things, both optional if your defaults already work.
| Variable | Purpose |
|---|---|
OTISK_HOST |
The host to talk to, as git@host or git@host:port |
OTISK_SSH_COMMAND |
The ssh invocation to use |
otisk host set git@git.otisk.dev records the host so you do not have to
set it every time; otisk host prints what is recorded. The user defaults to
git and the port to 22, so a host serving on 22 needs neither: otisk host set git.otisk.dev says the same thing.
For ssh, otisk honours OTISK_SSH_COMMAND and falls back to
GIT_SSH_COMMAND, so a key or option set that already works for git needs
no second configuration.
The gateway
Read from the environment; see .env.example in the repository.
| Variable | Purpose |
|---|---|
OTISK_DATABASE_URL |
PostgreSQL connection string |
OTISK_S3_ENDPOINT |
Object store endpoint |
OTISK_S3_ACCESS_KEY / OTISK_S3_SECRET_KEY |
Object store credentials |
OTISK_S3_BUCKET |
Bucket holding repository data |
OTISK_S3_USE_SSL |
Whether to use TLS to the object store |
OTISK_CACHE_DIR |
Local repository cache; safe to delete |
OTISK_SSH_HOST_KEY |
Gateway host key; generated if absent |
OTISK_SSH_ADDR |
Gateway listen address (default :2222) |
OTISK_ENV_FILE |
Alternative path to the env file (default .env) |
A service refuses to start when a value it requires is missing, naming every absent variable at once.
Credentials and configuration live on the host and never in the build artefact: the binary you install contains nothing about where it will run.