kubernetes-sigs/kubespray

eliminate all instances of `default` filter in roles => var should have a default defined only once

Open

#11.822 geöffnet am 19. Dez. 2024

Auf GitHub ansehen
 (13 Kommentare) (0 Reaktionen) (1 zugewiesene Person)HTML (4.419 Forks)batch import
good first issuehelp wanted

Repository-Metriken

Stars
 (10.380 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 25T) (26 gemergte PRs in 30 T)

Beschreibung

We have lots of instances of this pattern:

"{{ some_var | d(some_default_value) }}"

Where the same value is repeated multiples places in the code base -> that default should be defined only once.

We should instead define those defaults in roles defaults/ directories, either

  • in the role where it's used
  • in kubespray-defaults (main.yml) if it's used in several roles.

Where possible, the default definition should also be accompanied by a comment defining the use of the variable, and possibly a commented examples for variable with a complex internal structure.

The two benefits:

  • the code is more readable when not littered with default filters
  • variables are defined in one place

(by the way, this also apply to variable which we check with is defined -> we shouldn't have to do that if we define a default) There is no need to tackle every instance at once, but this is pretty good way to start working on the code base for new contributors.

/help /good-first-issue

Contributor Guide