Skip to content

Commit c917291

Browse files
committed
add(docs/self-hosting): Improve K8s and Helm docs
1 parent 377b4da commit c917291

5 files changed

Lines changed: 57 additions & 176 deletions

File tree

frontend/docs/pages/self-hosting/_meta.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ export default {
1111
title: "Kubernetes",
1212
},
1313
"kubernetes-quickstart": "Quickstart",
14-
"kubernetes-glasskube": "Installing with Glasskube",
1514
networking: "Networking",
1615
"kubernetes-helm-configuration": "Configuring the Helm Chart",
1716
"kubernetes-external-database": "Setting up an External Database",

frontend/docs/pages/self-hosting/kubernetes-glasskube.mdx

Lines changed: 0 additions & 164 deletions
This file was deleted.

frontend/docs/pages/self-hosting/kubernetes-helm-configuration.mdx

Lines changed: 51 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,60 @@ sharedConfig:
5858

5959
This will set the environment variable `MY_ENV_VAR` to `"my-value"` for all backend services. These values will override any default environment settings for the services.
6060

61+
## Credentials and Key Generation
62+
63+
### Setup Job
64+
65+
The `quickstartJob` bootstraps Hatchet's encryption and auth secrets into a Kubernetes Secret (`hatchet-config`):
66+
67+
```yaml
68+
quickstartJob:
69+
enabled: true
70+
```
71+
72+
### Worker Token Job
73+
74+
The worker token job generates a client token after the engine is running:
75+
76+
```yaml
77+
workerTokenJob:
78+
enabled: true
79+
```
80+
81+
The token is stored as `HATCHET_CLIENT_TOKEN` in the `hatchet-client-config` secret. Alternatively, navigate to the `Settings` tab in the Hatchet frontend and click on the `API Tokens` tab to generate a token manually.
82+
83+
### Generating Keys Manually
84+
85+
For GitOps or pre-configured deployments, generate keys using the `hatchet-admin` image:
86+
87+
```sh
88+
docker run --rm ghcr.io/hatchet-dev/hatchet/hatchet-admin:latest \
89+
/hatchet/hatchet-admin keyset create-local-keys
90+
```
91+
92+
Generate cookie secrets via `openssl` - these must be two space-separated random strings:
93+
94+
```sh
95+
echo "$(openssl rand -hex 16) $(openssl rand -hex 16)"
96+
```
97+
98+
Supply all values in your `values.yaml`:
99+
100+
```yaml
101+
sharedConfig:
102+
env:
103+
SERVER_ENCRYPTION_MASTER_KEYSET: "<master-keyset>"
104+
SERVER_ENCRYPTION_JWT_PRIVATE_KEYSET: "<private-keyset>"
105+
SERVER_ENCRYPTION_JWT_PUBLIC_KEYSET: "<public-keyset>"
106+
SERVER_AUTH_COOKIE_SECRETS: "<secret1> <secret2>"
107+
```
108+
109+
For all available options, see [Encryption Configuration](/self-hosting/configuration-options#encryption-configuration) and [Authentication Configuration](/self-hosting/configuration-options#authentication-configuration).
110+
61111
### Seeding Data
62112

63113
The `sharedConfig` object also allows you to seed the database with a default tenant and user. The following environment variables are used for seeding:
64114

65-
````yaml
66-
The following environment variables are used to seed the database:
67-
68115
```yaml
69116
seed:
70117
defaultAdminEmail: "admin@example.com" # in exposed/production environments, change this to a valid email
@@ -74,4 +121,4 @@ seed:
74121
DEFAULT_TENANT_NAME: "Default"
75122
DEFAULT_TENANT_SLUG: "default"
76123
DEFAULT_TENANT_ID: "707d0855-80ab-4e1f-a156-f1c4546cbf52"
77-
````
124+
```

frontend/docs/pages/self-hosting/kubernetes-quickstart.mdx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,14 @@ To deploy `hatchet-stack`, run the following commands:
1717

1818
```sh
1919
helm repo add hatchet https://hatchet-dev.github.io/hatchet-charts
20-
helm install hatchet-stack hatchet/hatchet-stack --set caddy.enabled=true
20+
helm install hatchet-stack hatchet/hatchet-stack --set caddy.enabled=true --set quickstartJob.enabled=true
2121
```
2222

23-
This default installation will run the Hatchet server as an internal service in the cluster and spins up a reverse proxy via `Caddy` to get local access. To view the Hatchet server, run the following command:
23+
This default installation will run the Hatchet server as an internal service in the cluster and spins up a reverse proxy via `Caddy` to get local access.
24+
25+
Encryption keys and secrets are generated automatically on first install when `quickstartJob.enabled=true`. See [Credentials & Key Generation](/self-hosting/kubernetes-helm-configuration) for details.
26+
27+
To view the Hatchet server, run the following command:
2428

2529
```sh
2630
export NAMESPACE=default # TODO: replace with your namespace

frontend/docs/scripts/test-search-quality.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -511,11 +511,6 @@ const TEST_CASES: SearchTestCase[] = [
511511
query: "sampling",
512512
expectAnyOf: ["self-hosting/sampling"],
513513
},
514-
{
515-
name: "glasskube",
516-
query: "glasskube",
517-
expectAnyOf: ["self-hosting/kubernetes-glasskube"],
518-
},
519514
{
520515
name: "downgrading versions",
521516
query: "downgrading versions",

0 commit comments

Comments
 (0)