{"id":21489382,"url":"https://github.com/vivid-money/helm-plugin-render-values","last_synced_at":"2025-07-15T16:31:09.723Z","repository":{"id":64303132,"uuid":"404274489","full_name":"vivid-money/helm-plugin-render-values","owner":"vivid-money","description":"Render helm values-files from others","archived":false,"fork":false,"pushed_at":"2025-02-13T10:35:27.000Z","size":4090,"stargazers_count":12,"open_issues_count":1,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T07:22:15.554Z","etag":null,"topics":["helm","helm-plugin","helm-plugins","kubernetes","yaml"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vivid-money.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-08T08:45:15.000Z","updated_at":"2025-02-13T10:34:22.000Z","dependencies_parsed_at":"2023-01-15T10:01:05.895Z","dependency_job_id":"339a9ee2-30b1-4e02-b790-3ef6b3fa7a8d","html_url":"https://github.com/vivid-money/helm-plugin-render-values","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/vivid-money/helm-plugin-render-values","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivid-money%2Fhelm-plugin-render-values","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivid-money%2Fhelm-plugin-render-values/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivid-money%2Fhelm-plugin-render-values/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivid-money%2Fhelm-plugin-render-values/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vivid-money","download_url":"https://codeload.github.com/vivid-money/helm-plugin-render-values/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivid-money%2Fhelm-plugin-render-values/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265445302,"owners_count":23766445,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["helm","helm-plugin","helm-plugins","kubernetes","yaml"],"created_at":"2024-11-23T14:19:52.867Z","updated_at":"2025-07-15T16:31:09.707Z","avatar_url":"https://github.com/vivid-money.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# helm-plugin-render-values\n\nThe `helm-plugin-render-values` is a Helm downloader plugin that enhances the rendering of templated values.\n\nThis plugin is particularly useful when working with third-party charts that don't have the tpl() function for values, but you still want to utilize it.\n\nFeel free to explore the capabilities of this plugin and enjoy a more streamlined and efficient Helm charting experience!\n\n## Install\nUse helm CLI to install this plugin:\n```\n$ helm plugin install https://github.com/vivid-money/helm-plugin-render-values --version 0.2.6\n```\n\n## Usage\n```\nhelm upgrade name . -f render://templated-values.yaml\n```\ntemplated-values.yaml should looks like this\n```\n## Extra files values imorted from. They must not have templating\nimportValuesFrom: \n- base-values1.yaml\n- base-values2.yaml\n- services/*/deploy.yaml\n- services/*/env/dev.yaml\n\n## Extra files with templating to render. They should have templating\nextendRenderWith: \n- extended-values1.yaml\n\nmyapp:\n  cluster: {{ .Values.clusterName }}\n  enabled: {{ .Values.enabled }}\n  {{if .Values.default }}\n  run: {{ .Values.default }}\n  {{- end }}\n```\n### *importValuesFrom*\n- The `importValuesFrom` keyword allows you to specify a list of sources for values to render them.\n- These files should not contain any templating. Only values for templating!\n- If you use `importValuesFrom` with a pattern, the values will be nested under the corresponding folder structure. For example, if you have values in files under the `folder1/folder2` directory, they will be nested under `\"folder1\".\"folder2\"` in the rendered values.\n- The values specified in `importValuesFrom` will be merged, and if there are conflicting keys, the last imported value will override the first one.\n\n### *extendRenderWith*\n- The `extendRenderWith` section specifies a list of files with templating to render. These files can contain templating logic. In the example, values are extended from extended-values1.yaml\n\n### Self values rendering\nIf neither `importValuesFrom` nor `extendRenderWith` is specified in the file, the values will be taken from the same file, and the file itself will be used for template rendering.\n\n- Since this file renders values based on its own values, templating will only work with a single level of nesting. For example, if we define param1: value1, we can use it for param2: {{ .Values.param1 }}, but we cannot use param2 to generate the next value.\n\n- The plugin doesn't know about `.Release` values!\n\n- Another limitation is that you cannot use string values with `{{ xxx }}` in the main file that should not be rendered (e.g., passing strings with templating for Prometheus rules).\n\nExample:\n\n`helm upgrade releasename -f render://test-values.yaml`\n```test-values.yaml\nenv: dev\nnamespace: release-{{.Value.env}}\nhostname: service-{{.Value.env}}.domain.com\n```\n## Notes\n\nv0.2.7\n- fix render output\n\n\nv0.2.6\n- update go packages\n\nv0.2.5\n- Adds support for Glob Patterns in extendRenderWith\n\nv0.2.4\n- update go to 1.23 and packages\n\nv0.2.3\n- update go to 1.20\n- add test for glob import files\n- fix glob import files\n\nv0.2.2\n- update go to 1.19\n- added tests\n- update README\n\nv0.2.1\n- importValuesFrom now can been set with files pattern\n\nv0.2.0\n- add \"extendRenderWith\" key to include those files to output render\n- fix mergeKeys func\n\nv0.1.3\n- fixed all from previous(0.1.2) note\n- could use \"self\" in importValuesFrom\n\n***\n\n## Development\n\nRun tests\n`go test ./tests/ -v`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvivid-money%2Fhelm-plugin-render-values","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvivid-money%2Fhelm-plugin-render-values","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvivid-money%2Fhelm-plugin-render-values/lists"}