We use helmcharts with values file to inject parameters at runtime, Most of the time we have no updates to charts and during CI/CD process we do the following steps
1. Build the image and push to registry and tag with the commit hash (first 7 characters)
2. helm install the chart by setting the image tag as value/variable override
If we need to change the helm template we do that in its source git, which currently stays with the app but can be a separate repo or a helm registry as well.