Skip to content

dnsZones block unintentionally introduced a breaking change #1858

Closed
@abaguas

Description

@abaguas

#1845 introduced the possibility to configure multiple DNS zones.
The helm chart was extended with the key dnsZones:, and the old dnsZone/edgeDNSZone were kept for backwards compatibility. However, the old configuration no longer works since dnsZones is used in the default values.yaml and values.schema.json makes sure only one of them is set.

How to reproduce

Create an additional values file, values-abaguas.yaml:

k8gb:
  dnsZone: "cloud.abaguas.com"
  edgeDNSZone: "abaguas.com"

Generate the manifests using:

hem package -u . > /dev/null && helm template k8gb k8gb-v0.14.0.tgz --include-crds -f values.yaml -f values-abaguas.yaml > manifests.yaml

This results in an error:

Error: values don't meet the specifications of the schema(s) in the following chart(s):
k8gb:
- k8gb: Must validate one and only one schema (oneOf)

Fix suggestions

k8gb is on major version 0, so it is okay to introduce a breaking change and remove completely the old option, thus forcing all users to migrate.

Alternatively, a simple fix is to enable only the old configuration options in the default values.yaml

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions