Altinity / Altinity/clickhouse-operator

The generated CRD yaml can't pass `kubeconform -ignore-missing-schemas -strict`

Open
#1,412 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
2.6k
Forks
574
Avg merge
8d 6h
Merged PRs (30d)
6

Description

It fails with

CustomResourceDefinition clickhouseinstallations.clickhouse.altinity.com failed validation: error unmarshalling resource: error converting YAML to JSON: yaml: unmarshal errors:
  line 311: key "description" already set in map
  line 384: key "type" already set in map
  line 394: key "description" already set in map
  line 397: key "description" already set in map
  line 400: key "description" already set in map
  line 410: key "description" already set in map
  line 413: key "description" already set in map
  line 416: key "description" already set in map
  line 419: key "description" already set in map
  line 429: key "description" already set in map
  line 528: key "description" already set in map
  line 528: key "description" already set in map
  ...

Probably because TypeStringBool has description and type fields, but we try to override them later, which is not allowed by kubeconform. Can we somehow fix it?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the CRD-generation path and the TypeStringBool definition referenced in the issue, then inspect how its description and type fields are overridden. Reproduce the failure with kubeconform -ignore-missing-schemas -strict against the generated CRD. Done means the generated CRD passes strict validation without duplicate YAML keys.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
devops, infrastructure
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.