Skip to content

Conversation

@ksawerykarwacki
Copy link

Summary

  • Adds ignoreMissingValueFiles boolean option to the helm-template promotion step
  • When enabled, missing value files are silently skipped instead of causing an error
  • Eliminates the need for empty placeholder YAML files per stage

Closes #4349

@ksawerykarwacki ksawerykarwacki requested review from a team as code owners December 19, 2025 19:21
@netlify
Copy link

netlify bot commented Dec 19, 2025

Deploy Preview for docs-kargo-io ready!

Name Link
🔨 Latest commit 344fa1c
🔍 Latest deploy log https://app.netlify.com/projects/docs-kargo-io/deploys/6949485cb870b20008f43c28
😎 Deploy Preview https://deploy-preview-5522.docs.kargo.io
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@krancour
Copy link
Member

I'm not specifically opposed to this, but I do vaguely recall some prior discussion about this, or else it was a very similar conversation. Whether it was on this exact topic or just similar one, I think @hiddeco may have once expressed some reluctance to the idea of steps that wrap a tool (like helm) having options that the tool itself lacks.

helm template cannot do this.

It is quite possible I am mis-remembering the aforementioned conversation, so let's have @hiddeco weigh in.

fwiw, there is another way to do this in v1.9.0. There's a step that merges a list of YAML files and it already has an option to ignore any that are missing. It would be possible to use that first to merge your YAML files (from most general to most specific) and then use helm template on the one resulting file.

@ksawerykarwacki
Copy link
Author

I missed that there is new step for merging YAML (i see that it has this flag implemented).

My reasoning was to bring Kargo on par with ArgoCD, as some folks (including myself) run mix of both (e.g. ArgoCD managed apps for dev, PoCs, etc. and rendered manifests via Kargo for staging and prod). Of course I can wrap yaml-merge and helm-template under single promotion task my-helm-template to achieve the same but will flesh out other limitations (vars only support strings so you cannot pass list of value files to it) and will make things more convoluted just for sake of keeping the action as limited as the original source of inspiration (helm template command)

@hiddeco it is your call then if it is worth to have this or not

@hiddeco
Copy link
Contributor

hiddeco commented Dec 20, 2025

My concern with a flag at a global level like this is that it opens the gates for incidents where e.g. a typo results in something to go unnoticed because any path is allowed to be missing.

I would be more open to the idea of allowing specific paths to be optional. But the problem with this (and the current API) is that the list of values files is just a simple list (and you can't add fields per list item).

@hiddeco
Copy link
Contributor

hiddeco commented Dec 20, 2025

I do believe we had the same discussion for the yaml-merge step though, and as it was added at a global level there my concern isn't particularly strong if we follow our own existing API patterns.

@codecov
Copy link

codecov bot commented Dec 20, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 55.51%. Comparing base (7febfe1) to head (1e69576).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #5522   +/-   ##
=======================================
  Coverage   55.51%   55.51%           
=======================================
  Files         429      429           
  Lines       31954    31957    +3     
=======================================
+ Hits        17738    17741    +3     
  Misses      13208    13208           
  Partials     1008     1008           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Closes akuity#4349

Signed-off-by: Ksawery Karwacki <ksawery.karwacki@gmail.com>
@ksawerykarwacki ksawerykarwacki force-pushed the feature/4349-ignore-missing-value-files branch from 1e69576 to 344fa1c Compare December 22, 2025 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ignoreMissingValueFiles from ArgoCD for helm-template step

3 participants