Interpret values only once
What does this MR do and why?
While reviewing !2614 (closed), I realized that subsequent interpretations of values could be time consuming as we are running through the values several times, even when they are already interpreted.
interpret-values-gotpl is indeed called in several places (in each template file), this can be avoided by adding a marker to process the values only once.
this change has shown to bring significant performance gains (25%), here are the result of following command
time for i in $(seq 1 10); do helm template . --values test-values/capo-base/values.yaml; done
before
real 1m1,632s
user 1m19,054s
sys 0m1,664s
with proposed change
real 0m46,501s
user 0m59,439s
sys 0m1,076s