Skip to Content
This documentation is provided with the HEAT environment and is relevant for this HEAT instance only.
InternalCluster ManagerHEAT patches (authoring)

HEAT patches (authoring)

Operators apply patches through Cluster Manager (/api/patches). Developers author patch sources in patches/ and pack them into .heatpatch archives.

Patch kinds

KindExecutorTargets
platformheat-node-agenthost-os, k3s, container-images, helm, config
applicationcluster-managerenv-assets, features, session-templates, platform-config, datasources

Manifest schema: models/heat-patch.schema.json.

Author CLI

python tools/patch-author/create_patch.py new python tools/patch-author/create_patch.py validate python tools/patch-author/create_patch.py pack <name>

Wrapper: deploy/create-patch.sh.

Full developer guide: patches/README.md.

Pack pipeline

deploy/pack-patches.sh:

  1. Copies manifest.json, check.sh, execute.sh from patches/<name>/.
  2. Builds payload.tar.gz from patches/<name>/payload/ (empty archive if missing).
  3. Updates payload.sha256 via deploy/update-patch-manifest-hash.mjs.
  4. Writes dist/patches/<name>.heatpatch.

Runtime (scratch)

Cluster-manager unpacks uploads to scratch:

  • patches/inbox/ — uploaded .heatpatch files
  • patches/catalog/<name>/ — extracted manifest and scripts
  • patches/state/<name>.json — application patch apply state
  • public/ — static env assets (/env-assets)

See references/lovable/cluster-manager/31-patches-and-scratch.md.