Changelog
0.9.4 (2025-04-22)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Fix previously breaking change that would cause a KeyError when the NYL_PROFILE environment variable was not set in the ArgoCD plugin when the project has no default profile. | @NiklasRosenstein |
0.9.3 (2025-04-22)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | add support for `ARGOCD_ENV_NYL_PROFILE` environment variable | @NiklasRosenstein |
0.9.2 (2025-04-22)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | Introduce new `values` object into templating evaluation namespace, replacing the `locals` object going forward. The `locals` name is still available but will be removed in an upcoming release. | @NiklasRosenstein | ||
Feature | Allow defining parameters in the "values" of a profile, accessible via `${{ values.PARAM }}` throughout manifest rendering with the profile. | @NiklasRosenstein |
0.9.1 (2025-04-20)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | `nyl new component` now includes `metadata.labels` and `metadata.annotations` defaults in the generated `values.yaml` | @NiklasRosenstein | ||
Feature | Add support for `NYL_ARGS` and `ARGOCD_ENV_NYL_ARGS` environment variables | @NiklasRosenstein | ||
Improvement | Improve help text of `nyl new component` command | @NiklasRosenstein | ||
Improvement | `.metadata.labels` set on a `HelmChart` resource now propagate and overwrite labels on the resources it generates (note that this also applies to Nyl components using Helm charts) | @NiklasRosenstein |
0.9.0 (2025-04-15)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | Add ability to define and use local variables in manifests | @NiklasRosenstein | ||
Improvement | argocd-cmp: Upgrade ArgoCD from v2.13.1 to v2.14.10 | @NiklasRosenstein | ||
Improvement | argocd-cmp: Upgrade Helm from v3.16.3 to v3.17.3 | @NiklasRosenstein | ||
Improvement | argocd-cmp: Upgrade Sops from v3.9.2 to v3.10.2 | @NiklasRosenstein | ||
Improvement | argocd-cmp: Upgrade Kyverno from 1.13.2 to 1.13.4 | @NiklasRosenstein |
0.8.1 (2025-01-22)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Remove sneaky `breakpoint()` call in `nyl template` | @NiklasRosenstein |
0.8.0 (2025-01-22)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Improvement | Further improve on #56 by populating the namespace of resources earlier than later (e.g. before the `HelmChart` gets rendered, instead of only applying it to the resources generated by the `HelmChart` at the end). | @NiklasRosenstein |
0.7.2 (2025-01-17)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Feature | Add `nyl add namespace` command | @NiklasRosenstein | ||
Docs | Fix links in docs and add information on how to use the `HelmChart.spec.chart` field | @NiklasRosenstein | ||
Feature | Add `nyl add chart` command | @NiklasRosenstein | ||
Docs | Add note to discurage from using `{{ .Release.Namespace }}` in Helm charts | @NiklasRosenstein | ||
Breaking change | Rename annotation `nyl.io/default-namespace` to `nyl.io/is-default-namespace` | @NiklasRosenstein |
0.7.1 (2025-01-17)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Fix | Fixed a bug where pulling two different charts with the same version number from the same repository conflated the cache key and ended up with Nyl using the wrong chart (that which has been pulled first). | @NiklasRosenstein |
0.7.0 (2025-01-17)
Type | Description | PR | Issues | Author |
---|---|---|---|---|
Breaking change | Recognize `nyl.io/default-namespace: "true"` on Namespace resources to choose between one of multiple namespaces defined in the same manifest file. | @NiklasRosenstein | ||
Breaking change | Instead of not assuming a default namespace when multiple `Namespace` resources are defined in a manifest file, pick the first one alphabetically when none have the `nyl.io/default-namespace: "true"` annotation | @NiklasRosenstein | ||
Improvement | Apply Nyl `PostProcessor` instructions at the end, after Nyl had a chance to fill in the manifest file's determined default namespace. Kyverno might add the `namespace: default` field to any resource that has no namespace set, making it impossbile for Nyl after the fact to tell which resources need to have their namespace injected. | @NiklasRosenstein | ||
Fix | Update `PostProcessor`, pointing Kyverno to a directory and expecting it to output all manifest, not just the mutated ones. The `PostProcessor` is now invoked at the very end, even after Nyl patches resources with the default namespace in the current manifest file. | @NiklasRosenstein | ||
Fix | fix #57 -- `ARGOCD_APP_NAMESPACE` and the `--default-namespace` option are used now only when no namespace is defined in the manifest file | @NiklasRosenstein | ||
Improvement | Resources generated by the Nyl `HelmChart` resource now get the chart resource's `metadata.namespace` populated before they are passed up and inlined into the rest of the manifest. Fixes #56 | @NiklasRosenstein | ||
Improvement | Fix deprecation warnings of using the `loguru.logger.opt(ansi)` keyword argument and use the new `colors` kwarg instead | @NiklasRosenstein | ||
Feature | Add `PostProcessor.spec.kyvernoRules` field as a shorthand for defining Kyverno policies in a Nyl manifest. | @NiklasRosenstein | ||
Refactor | Refactor `PostProcessor` implementation for generating policy files and invoking Kyverno | @NiklasRosenstein | ||
Improvement | `PostProcessor` log for invoking Kyverno now lists the policy file paths that are going to be applied | @NiklasRosenstein | ||
Fix | `nyl new chart` now generates 2-space indented YAML and has a more complete template | NiklasRosenstein/nyl#47 | @NiklasRosenstein |