Harthelm Docs
Configure

Configuration

How Harthelm is configured: one values file, rendered before every change, and where each topic lives.

Last updated 2026-10-19

Everything an operator configures is a value of the Helm chart. There is no settings page for the platform and no configuration in the database: change the values, render them, and upgrade the release. The chart values reference lists every key with its type, default and meaning.

Change a value

Edit your values file

Keep one file (my-values.yaml in these pages) with only the keys you change, in version control.

Render it

The schema is strict: an unknown key, an empty host, database.mode: external without a DSN Secret, or an OIDC issuer without its Secret fail the render.

Terminal
helm template harthelm oci://<your registry>/charts/harthelm --version <version> \
  -n harthelm-system -f my-values.yaml > /dev/null

Apply it

Terminal
helm upgrade harthelm oci://<your registry>/charts/harthelm --version <version> \
  -n harthelm-system -f my-values.yaml

The preflight Job checks the cluster against the new values first. A change of core's settings restarts core, which does not stop running workspaces. Under Argo CD, commit the file instead.

Where each topic lives

TopicPageMain values
Sign-in and cluster adminsSign-inoidc, auth.breakGlass
Hosts, certificates, in-cluster TLSDNS and TLSplatform, routing, internal.tls, trustedProxies
Workspace volumesStoragestorage, security.defaultUid
Plans, base images, sleep, schedulingWorkspacesplans, baseImages, workspaces, wake, scheduling
Git repositoriesGit providersgit.providers
Invitation mailsMailmail
Teams' own domainsCustom domainscustomDomains
Your own PostgreSQLExternal databasedatabase
Databases for usersManaged servicesmarketplace
Isolation and egressNetwork policiesnetworkPolicy, teams.network
Organizations, teams, quotasTeam administrationtenancy, teams.quota
BackupsBackups and restorebackup
UpgradesUpgradescore.updateStrategy, workspaces.upgradePolicy

Sizes

Memory and storage values take what the console and hart take: a number in the key's unit (a plain quota number is bytes, as in Kubernetes) or a string such as 2Gi, 2GiB, 2048Mi or 2048MiB. Storage must be whole GiB; decimal units such as 2GB are refused.

On this page