MATIH Platform is in active MVP development. Documentation reflects current implementation status.
7. Tenant Lifecycle
Helm Releases
Release Management

Release Management

Release management covers the core operations of installing new Helm releases, querying release state, viewing revision history, and uninstalling releases. Each release is scoped to a tenant namespace and tracked with a full revision history.


Installing a Release

The install operation deploys a chart into the tenant's namespace:

{
  "tenantId": "uuid",
  "releaseName": "acme-ai-service",
  "namespace": "tenant-acme",
  "chartName": "matih-ai-service",
  "chartVersion": "1.0.0",
  "appVersion": "2.0.0",
  "valuesOverride": {
    "replicaCount": 2,
    "resources": {
      "requests": { "cpu": "500m", "memory": "1Gi" },
      "limits": { "cpu": "2", "memory": "4Gi" }
    }
  },
  "timeout": 600,
  "atomic": true,
  "waitForJobs": true
}
OptionTypeDefaultDescription
timeoutInteger300Seconds to wait for install to complete
atomicBooleanfalseAuto-rollback on failure
waitForJobsBooleanfalseWait for hook jobs to complete

Querying Releases

By release ID:

GET /api/v1/helm/releases/:releaseId

By tenant:

GET /api/v1/helm/releases/tenant/:tenantId

Returns all releases for the tenant with their current status and revision number.


Revision History

GET /api/v1/helm/releases/:releaseId/history

Returns a list of HelmReleaseHistory entries, each representing a revision:

FieldDescription
revisionRevision number (incremented on each change)
chartVersionChart version at this revision
appVersionApplication version at this revision
statusStatus of this revision
descriptionDescription provided at install/upgrade
performedByUser who performed the operation
createdAtTimestamp of the operation

Uninstalling a Release

DELETE /api/v1/helm/releases/:releaseId?reason=Tenant%20migration

Uninstalling a release removes all deployed resources from the namespace. The release record and history are preserved in the database for audit purposes.


Release Summary

Platform administrators can view a summary of all releases across tenants:

GET /api/v1/helm/releases/summary

Returns counts grouped by status and chart name.