The platform Helm chart now ships an in-cluster previewJanitor CronJob that runs hourly to delete expired Tuist preview namespaces, even when the previously used external GitHub Actions cleanup workflow fails or stalls. The janitor only targets namespaces labeled tuist.dev/preview=true, deletes them once the tuist.dev/expires-at label is in the past, also tears down stale state=creating namespaces, and is scoped with a dedicated service account and the preview worker taint toleration. The GitHub Actions sweep is kept as a backstop, so expired preview pods are now reliably cleaned up without depending on a single external workflow.
Hive
Reliable cleanup of expired preview environments via in-cluster janitor
Published
Jun 29, 2026 · 16:31 UTC
Repository
tuist/tuist