Helm dependency deduplication post-renderer
Project description
ded
Helm dependency deduplication post-rendererInstallation
pip install ded
Usage
This program collects all pre-rendered manifests from Helm and post-renders only those unique amongst them.
The uniqueness is determined based on the default or supplied YAML keys. The keys must exist in all of the supplied documents.
Invoke as --post-renderer
during helm install/upgrade.
ded
determines uniquiness based on values of the kind
and metadata.name
fields of each manifests. You can specify non-default keys by which the pre-rendered manifests from helm must be deduplicated:
ded --key metadata.namespace
IMPORTANT: The keys used to determine uniquiness must be present in every manifest or ded
will exit with code 1 and helm install
or helm upgrade
will consequently fail.
Examples
The example below will filter all manifests based on values of kind
and metadata.name
fields.
helm install release-name your-chart/ --post-renderer ded
So, if there are 2 manifests in your Helm chart release with the same values on these fields, then only one of them will be left.
Manifest A:
apiVersion: v1
kind: ConfigMap
metadata:
name: foo-cm
data:
onedata: test
Manifest B:
apiVersion: v1
kind: ConfigMap
metadata:
name: foo-cm
data:
twodata: test-test
In the example above only the first occuring manifest will make it to the output of the post-renderer.
Or invoke with a different set of keys:
helm install release-name your-chart/ --post-renderer ded --key metadata.name
More keys:
helm install release-name your-chart/ --post-renderer ded -k metadata.name --k data.onedata
Why ded
?
- Because it's a shorthand for
deduplication
- Because "ded" means grandpa in Russian. And I was grumpy as hell when I was trying to deduplicate manifests generated by Helm.
- Because dealing with subcharts and dependencies in Helm makes you a little dead inside.
Helm is ❤️
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ded-0.1.3.tar.gz
.
File metadata
- Download URL: ded-0.1.3.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.2 CPython/3.7.2 Darwin/19.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f25a2e570eb67477fe62b41d569107a70d647c6712e196d58800e10c2c430ef0 |
|
MD5 | 8358c760677e908ae161ed93cc02e70a |
|
BLAKE2b-256 | 4c50a5217a057884be0036e77213851ff0a205ae1dda7f15fea023541e0f20bd |
File details
Details for the file ded-0.1.3-py3-none-any.whl
.
File metadata
- Download URL: ded-0.1.3-py3-none-any.whl
- Upload date:
- Size: 3.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.2 CPython/3.7.2 Darwin/19.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19696dabbbbfe408eb2e47267049b86c0dda7c202a81736a7d9112e322ba484e |
|
MD5 | f9b9a59d404a8fafccbe2e54978dac08 |
|
BLAKE2b-256 | bb80ec46439e150297c51340003a54e328f6198340ad2ac33c63e857d709c10b |