Kubernetes: Impossible d'utiliser 'true' et 'false' comme valeur d'étiquette

Créé le 20 mars 2016  ·  3Commentaires  ·  Source: kubernetes/kubernetes

Il semble que les ressources ne puissent pas être créées avec une valeur d'étiquette définie sur "true" ou "false".

Avec le yaml suivant,

  template:
    metadata:
      labels:
        environment: test
        release: false
        tier: frontend

J'obtiens une erreur :

$ kubectl create -f replicaset.yaml
unable to decode "replicaset.yaml": [pos 341]: json: expect char '"' but got char 'f'

mais changer pour

  template:
    metadata:
      labels:
        environment: test
        release: stable
        tier: frontend

Pas d'erreur:

$ kubectl create -f replicaset.yaml   
replicaset "replicaset" created

La documentation de l'étiquette ne mentionne pas ce cas.

Valid label values must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.

Le cas d'utilisation pour utiliser 'true' comme valeur d'étiquette consiste à utiliser le sélecteur "Exist", "NotExist", où vous n'avez pas de valeur d'étiquette significative.

Je n'ai pas encore testé, mais si l'analyseur yaml le convertit en valeur booléenne typée avant même que nous obtenions la valeur, cela ne sera peut-être pas facile à corriger ? Si c'est le cas et que nous ne voulons pas l'appuyer, alors je pense que nous le documentons au moins d'une manière ou d'une autre.

siapi-machinery

Commentaire le plus utile

Citez-les.

Tous les 3 commentaires

Les étiquettes sont des chaînes.

Citez-les.

suivre @bgrant0607
fixé.

Cette page vous a été utile?
0 / 5 - 0 notes