Skip to content

Changelog

0.7.2 (2025-01-17)

TypeDescriptionPRIssuesAuthor
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)

TypeDescriptionPRIssuesAuthor
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)

TypeDescriptionPRIssuesAuthor
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 template47@NiklasRosenstein

0.6.0

  • Upgraded argocd-cmp-server in nyl/argocd-cmp container image to v2.13.1 (see #46)
  • Re-introduce settings.generate_placeholders in nyl-project.toml, but warn if it is used. Enabling the option will have the same effect as setting on_lookup_failure = "CreatePlaceholder" and take precedence over the original value of on_lookup_failure.

0.5.1

  • Add Nix flake
  • Docs: Add missing API docs for nyl.secrets.kubernetes

0.5.0

  • Add the KubernetesSecret secret provider
  • Add the ntyl secrets set and nyl secrets unset commands
  • Breaking: Replace the settings.generate_placeholders option with settings.on_lookup_failure

0.4.0

  • Automatically replace the host in Kubeconfig server field if it is set to localhost, 0.0.0.0 or 127.0.0.1 when a Kubeconfig is retrieved via SSH (saving you to configure replace_apiserver_hostname when sourcing a Kubeconfig from a K3s/RKE2 cluster via SSH).
  • Add port and sudo option to KubeconfigFromSsh config

0.3.0

  • Add PostProcessor inline resource which supports applying Kyverno policies to the generated resources.
  • Fixed a bug in the construction of the local Helm chart path when referencing a Helm chart in a Git repository.