services.rke2.autoDeployCharts

Auto deploying Helm charts that are installed by the rke2 Helm controller. Avoid using attribute names that are also used in the services.rke2.manifests and services.rke2.charts options. Manifests with the same name will override auto deploying charts with the same name. This option only makes sense on server nodes (role = server). See the rke2 Helm documentation for further information.

WARNING: If you have multiple server nodes, and set this option on more than one server, it is your responsibility to ensure that files stay in sync across those nodes. AddOn content is not synced between nodes, and rke2 cannot guarantee correct behavior if different servers attempt to deploy conflicting manifests.

Type
attribute set of (submodule)
Default
{ }
Example
{
  harbor = {
    name = "harbor";
    repo = "https://helm.goharbor.io";
    version = "1.14.0";
    hash = "sha256-fMP7q1MIbvzPGS9My91vbQ1d3OJMjwc+o8YE/BXZaYU=";
    values = {
      existingSecretAdminPassword = "harbor-admin";
      expose = {
        tls = {
          enabled = true;
          certSource = "secret";
          secret.secretName = "my-tls-secret";
        };
        ingress = {
          hosts.core = "example.com";
          className = "nginx";
        };
      };
    };
  };
  nginx = {
    repo = "oci://registry-1.docker.io/bitnamicharts/nginx";
    version = "20.0.0";
    hash = "sha256-sy+tzB+i9jIl/tqOMzzuhVhTU4EZVsoSBtPznxF/36c=";
  };
  custom-chart = {
    package = ../charts/my-chart.tgz;
    values = ../values/my-values.yaml;
    extraFieldDefinitions = {
      spec.timeout = "60s";
    };
  };
}
Declared
<nixpkgs/nixos/modules/services/cluster/rancher/default.nix>