You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/continuous-delivery/deploy-srv-diff-platforms/helm/deploy-helm-charts.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -538,6 +538,10 @@ Helm charts can be deployed using any of the execution steps and deployment stra
538
538
539
539
Each Helm chart deployment is treated as a release. During deployment, when Harness detects that there is a previous release for the chart, it upgrades the chart to the new release.
540
540
541
+
:::info Configuration file handling
542
+
During deployment, Harness downloads your Helm chart manifests and override files (values and secrets) to the delegate. Override files are stored persistently in `/repository/helm/overrides/` and are not automatically deleted after deployment. For details about file storage, cleanup options, and security considerations, go to [Helm Deployment FAQs](/docs/continuous-delivery/deploy-srv-diff-platforms/helm/helm-deployment-faqs#how-does-harness-handle-configuration-files-for-helm-deployments-on-the-delegate).
Copy file name to clipboardExpand all lines: docs/continuous-delivery/deploy-srv-diff-platforms/helm/helm-deployment-faqs.md
+64-1Lines changed: 64 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -693,6 +693,69 @@ For a smooth transition between deployment types:
693
693
3.**Document your current configuration** before making changes.
694
694
4.**Consider using different services** for different deployment types if you need both approaches.
695
695
696
+
### How does Harness store and manage Helm configuration files on the delegate?
697
+
698
+
When you run a Helm deployment, Harness handles different file types with distinct storage and lifecycle behaviors:
699
+
700
+
**Manifest files**
701
+
702
+
Stored in temporary directories during deployment execution and automatically cleaned up after the task completes.
703
+
704
+
**Override files (values and secrets)**
705
+
706
+
Stored persistently at `/repository/helm/overrides/${CONTENT_HASH}.yaml`, where `${CONTENT_HASH}` is an MD5 hash of the file content. Key characteristics:
707
+
708
+
- Files use content-based naming, so identical configurations produce the same file path and overwrite previous versions
709
+
- Different configurations generate different hashes, creating separate files
710
+
- Files are **not automatically deleted** after deployment completion and persist on the delegate until manually removed
711
+
- Harness does not provide built-in automatic cleanup (no cron jobs, post-hooks, or disk-based sweeps)
712
+
713
+
**Impact on deployments**
714
+
715
+
Persistent override files do not affect deployment correctness. Each deployment fetches fresh copies from source repositories or secrets managers, regenerates content hashes, and overwrites files as needed. Stale files from previous deployments cannot interfere with new executions.
716
+
717
+
### How should I handle cleanup of Helm override files?
718
+
719
+
**Do you need to clean up?**
720
+
721
+
Manual cleanup is not required for functional deployments, but consider it if:
722
+
- You have compliance or security requirements for sensitive file storage
723
+
- Delegate disk space is limited
724
+
- You deploy frequently with many unique configurations
725
+
726
+
**Cleanup approaches**
727
+
728
+
If cleanup is needed for your environment:
729
+
730
+
-**OS-level scripts**: Create cron jobs or scripts to periodically remove files from `/repository/helm/overrides/` on the delegate
731
+
-**Maintenance windows**: Schedule regular delegate maintenance to clear accumulated files
732
+
-**Monitoring**: Set up disk usage alerts to prompt cleanup when thresholds are reached
733
+
-**Built-in cleanup**: Contact Harness Support if you need an automated cleanup feature (tracked as a product enhancement)
734
+
735
+
**Monitoring recommendations**
736
+
737
+
Regularly monitor delegate disk space, especially in high-frequency deployment environments. Track the growth of `/repository/helm/overrides/` to identify when cleanup is necessary.
738
+
739
+
### What security measures should I implement for Helm configuration files?
740
+
741
+
**Built-in security**
742
+
743
+
Harness provides baseline security for configuration files:
744
+
745
+
-**Content-hash naming**: Files use MD5 hashes, making paths non-predictable
746
+
-**Restricted permissions**: Files created with `600` permissions on Unix-like systems (owner read/write only)
747
+
-**Fresh fetch**: Each deployment retrieves current data from sources, preventing use of outdated credentials
748
+
749
+
**Enhanced security for compliance**
750
+
751
+
If you have strict security or compliance requirements:
752
+
753
+
-**Encrypted filesystems**: Run delegates on hosts with encrypted filesystems to protect data at rest
754
+
-**Access controls**: Restrict filesystem access to delegate processes only
755
+
-**Secrets managers**: Store sensitive values in integrated secrets managers (HashiCorp Vault, AWS Secrets Manager, Azure Key Vault) instead of values files to minimize persistent sensitive data
756
+
-**Regular cleanup**: Implement cleanup procedures for `/repository/helm/overrides/` to limit exposure window for sensitive files
757
+
-**Audit logging**: Enable delegate logging and monitor file access patterns
758
+
696
759
### Why does Helm deployment fail with "validation: chart.metadata.version is invalid" but succeed on rerun?
697
760
698
761
During Helm deployment, Harness fetches the Helm repository and reads the `index.yaml` file to resolve the requested chart and version. Helm performs strict validation on all chart entries in the repository index. If any chart entry contains an invalid version that does not follow [Semantic Versioning (SemVer)](https://semver.org/) format, Helm skips that entry while loading the index.
@@ -746,4 +809,4 @@ To permanently resolve this issue:
0 commit comments