-
Notifications
You must be signed in to change notification settings - Fork 304
Description
I've fully implemented use of hatchet locally with typescript and hatchet-lite (compose) and everything is working fine. I then tried to deploy the code to Kubernetes by following your documentation.
First of all, the documentation for Kubernetes deployment using Helm is very sparse, to say the least. It is missing a lot of information that I had to dig out from the source code to find out. Specifically regarding all configuration. The default behavior is that Hatchet wants to use Rabbitmq which I didn't find a way to turn off. After reading the source code I found the flag SERVER_TASKQUEUE_KIND=postgres that solved the issue. The actual flag (SERVER_TASKQUEUE_KIND) is documented but its different values and what they do is not. Also virtually all env variables are listed, with their default value, but without further explanation on what they do and when to use them. Most of them are self explanatory but far from all.
Anyway, after a lot of experimentation I finally got my working code to run along a deployed Hatchet setup in my cluster.
The application prints this log at startup:
🪓 1 | 01/28/26, 07:06:30 PM [WARN/client-init] 🚨⚠️‼️ YOU ARE USING A V0 ENGINE WITH A V1 SDK, WHICH IS NOT SUPPORTED. PLEASE UPGRADE YOUR ENGINE TO V1.🚨⚠️‼️ undefined
I checked the source code in ts and found that it checks if the tenant is V1:
But I dont know exactly why or what information it is looking at. I checked the token it is using and that token points to a Tenant in the db which is V1=true.
But it's complaining about the engine, not the sdk. So I guess the engine maybe is missing some config or something? There is no logs whatsoever in the engine that I can see about v0/v1.
Any help would be appreciated!
These are the basic configuration that we have set:
grpcBroadcastAddress: "myrelease-engine.myns.svc.cluster.local:7070"
env:
DATABASE_LOGGER_LEVEL: "info"
SERVER_ADDITIONAL_LOGGERS_PGXSTATS_LEVEL: "info"
SERVER_ADDITIONAL_LOGGERS_QUEUE_LEVEL: "info"
SERVER_ALLOW_CHANGE_PASSWORD: "false"
SERVER_ALLOW_CREATE_TENANT: "false"
SERVER_ALLOW_INVITES: "false"
SERVER_ALLOW_SIGNUP: "false"
SERVER_DEFAULT_ENGINE_VERSION: "V1"
SERVER_GRPC_BIND_ADDRESS: "0.0.0.0"
SERVER_GRPC_INSECURE: "t"
SERVER_LOGGER_LEVEL: "info"
SERVER_TASKQUEUE_KIND: "postgres"
# Located in .secrets and is replaced with real value
DATABASE_URL: unset-database-url