{{- define "custom.changelog.header" -}} ## Changelog {{- end -}} {{- define "custom.changelog" -}} {{ template "custom.changelog.header" . }} All notable changes to this library Helm chart will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### [4.5.2] #### Fixed - Fixed environment variable processing logic for main container when initContainers or additionalContainers were set. ### [4.5.1] #### Fixed - Fixed environment variable processing logic for initContainers and additionalContainers. ### [4.5.0] #### Added - Support checksum/config annotations for configMaps to automate roll deployments/daemonsets/statefulsets after config changes. - Support Gluetun VPN client add-on. Please see [the project repository](https://github.com/qdm12/gluetun) for more information and how to configure. - Added support for the `envFrom` field in the VPN add-on. #### Changed - Updated and pinned `netshoot` add-on image to `v0.7`. - Updated `code-server` add-on image to `4.5.1`. - Updated `promtail` add-on image to `2.6.1`. #### Fixed - Added `ingressClassName` description under the `code-server` add-on. - `valueFrom` now works correctly when `env` is a list of variables. ### [4.4.2] #### Fixed - Change the scope for some of the annotation/label includes. ### [4.4.1] #### Fixed - Fix a typo that would make charts / objects containing annotations not render correctly. ### [4.4.0] #### Added - Support for `nfs` as a persistence type. - Support for setting custom `args` for VPN containers. - Support setting additional global labels. These will be applied to all objects rendered by the chart. - Support setting additional global annotations. These will be applied to all objects rendered by the chart. - Support Helm templating in `podAnnotations`. #### Changed - `externalTrafficPolicy` (when a value is specified) is now set for all Service types. - Changed the unit test framework to an easier and more readable solution. #### Fixed - Fix a typo in the generated Notes. - Explicitly add `imagePullSecrets` to `values.yaml` to improve discoverability of the setting. ### [4.3.0] #### Added - Support setting `podManagementPolicy` on StatefulSet - Support setting the `runtimeClassName` of pods #### Changed - Improved environment variables documentation to correctly reflect the available syntax options. ### [4.2.0] #### Added - Support for defining ipFamilyPolicy and ipFamilies in service resources ### [4.1.0] #### Changed - Updated Wireguard add-on image tag to `v1.0.20210914`. #### Added - Support for specifying whether a pod should auto mount a service account token. - Support for specifying configMaps directly in values.yaml. - Support for specifying annotations/labels on the VPN add-on `NetworkPolicy`. - Support for specifying custom podSelector labels on the VPN add-on `NetworkPolicy`. - Added `secret` and `configMap` as persistence types. ### [4.0.1] #### Fixed - Fixed an issue where users weren't able to set custom ingress labels. ### [4.0.0] #### Added - Support for specifying container termination message path and policy (#77). - Support for specifying Pod termination grace period. - Support for specifying PVC labels for `persistence` items. #### Changed - **BREAKING**: Renamed the `skipuninstall` key to `retain` for `persistence` items. - **BREAKING**: `initContainers` now expects a dictionary instead of a list to make merging less error-prone. initContainers are ordered by their key. - **BREAKING**: `additionalContainers` now expects a dictionary instead of a list to make merging less error-prone. ### [3.3.0] #### Added - Support ability to specify the [mountPropagation](https://kubernetes.io/docs/concepts/storage/volumes/#mount-propagation) key under persistence items. #### Changed - Changed the docstring for `persistence` to better reference our documentation regarding Storage options. #### Fixed - Fixed an issue where the default `repository` value for the Wireguard addon was incorrect. - Fixed an issue where probes were not referencing the service `targetPort`. ### [3.2.0] #### Added - Support for specifying [topologySpreadConstraints](https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/) for a pod. - Support for specifying multiple `subPath` items under `persistence` keys. #### Removed - Removed persistence examples from the `values.yaml` file. These will be documented instead in our documentation. ### [3.1.1] #### Fixed - Fixed an issue where the default service would not be determined correctly for Ingress objects. - Fixed an issue where the code-server addon ingress would reference the wrong service when multiple hosts were specified. ### [3.1.0] #### Added - Support to disable the controller when no container is deployed. #### Fixed - Fixed an issue where the code-server addon ingress would reference the wrong service. ### [3.0.2] #### Fixed - Fixed an issue where the `common.names.fullname` template would not properly render. ### [3.0.1] #### Fixed - Fixed an issue where the `nameOverride` and `fullnameOverride` could throw an error. ### [3.0.0] #### Added - It is now possible to flag an ingress / service / port as primary. This will then be used by default in the chart notes, probes, etc. - Individual ports can now be enabled / disabled. - Allow setting Pod labels using the `podLabels` field. - Allow setting `volumeName` for PVC's. - Annotated the values.yaml to better describe what fields do. This is also reflected in the [README.md](README.md) file. - Added a [netshoot](https://github.com/nicolaka/netshoot) add-on. This allows for injecting a network trouble-shooting swiss-army sidecar container. #### Changed - Probes are now automatically disabled (except for custom defined probes) when no service is enabled. - Moved the primary ingress from `ingress` to `ingress.main`. - Moved the primary service from `service` to `service.main`. - Multiple ingress objects can now be specified under the `ingress` key. - Multiple service objects can now be specified under the `service` key. - `nameSuffix` has been renamed to `nameOverride`. - `hostPathMounts` has been integrated with `persistence`. - `additionalVolumes` has been integrated with `persistence`. - Test framework has been rewritten from Ruby to Go. #### Fixed - Cleaned up YAML document separators (`---`). - Fixed indenting of the `lifecycle` field. #### Removed - Removed support for `ingress.additionalIngresses`. - Removed support for `services.additionalServices`. - Removed support for TrueNAS SCALE features. These are out of scope for our project. ### [2.5.0] #### Added - Added `Horizontal Pod Autoscaler` - Can now use "HTTP" or "HTTPS" as port protocol (which use TCP under-the-hood) - Setting the port protocol to "HTTPS" adds traefik annotation to use https towards the backend service - Add option to automatically generate a configmap for use with the TrueNAS SCALE UI portal-button - Added option to use TrueNAS SCALE default storageClass by using `SCALE-ZFS` storageClass - It is now possible to set the `serviceName` and `servicePort` per Ingress path #### Changed - Port protocol gets used to determine install-notes URL (http or https) ### [2.4.0] #### Added - `hostPathMounts` to mount hostPaths with a single values.yaml setting - Automated ownership fixing job for `hostPathMounts` - `envList` to use a list of environment variables in addition to the current dict or template #### Changed - Set `dnsPolicy` default based on `hostNetwork` setting #### Fixed - Fixed unit-tests not correctly testing no-env scenario's ### [2.3.1] #### Fixed - Fixed the VPN addon secret name when providing inline VPN configuration. ### [2.3.0] #### Added - Allow `configFileSecret` to be specified under the VPN add-on, to reference an existing secret. - Allow `git.deployKey` to be specified under the codeserver add-on. Please refer to `values.yaml` for more details. #### Changed - Modified unit tests to no longer depend on `jq`. #### Fixed - `secretName` is now truly optional under Ingress TLS configuration. ### [2.2.0] #### Added - Persistence `nameSuffix` can now be set to `-` to disable suffixing that PVC. - Support for configuring `lifecycle` - Support for configuring `pathTpl` in Ingress (#15). #### Fixed - Ingress `pathType` is now actually configurable. Fixes #16. - PVC's are always forced to a newline. Fixes #17. ### [2.1.0] #### Added - Added support for shipping logs to Loki using the new `promtail` add-on. #### Changed - Upgraded the default image in the `codeserver` add-on to `v3.9.2` ### [2.0.1] #### Fixed - Volumes referencing persistentVolumeClaims actually reference the PVC again. - Items under persistence now default their `mountPath` to the item name, as they should have been doing. ### [2.0.0] #### Added - Added support for using Helm template language in `additionalContainers`. #### Changed - **Breaking:** `persistence.emptyDir` was changed to allow more configuration options, such as `medium` and `sizeLimit`. ### [1.0.0] #### Changed - Moved common library chart to separate repository #### Fixed - The `command` and `args` values now properly support both string and list values. [4.0.0]: #400 [3.3.0]: #330 [3.2.0]: #320 [3.1.1]: #311 [3.1.0]: #310 [3.0.2]: #302 [3.0.1]: #301 [3.0.0]: #300 [2.5.0]: #250 [2.4.0]: #240 [2.3.1]: #231 [2.3.0]: #230 [2.2.0]: #220 [2.1.0]: #210 [2.0.1]: #201 [2.0.0]: #200 [1.0.0]: #100 {{- end -}}