Kubernetes: Não é possível usar 'verdadeiro' e 'falso' como valor de rótulo

Criado em 20 mar. 2016  ·  3Comentários  ·  Fonte: kubernetes/kubernetes

Parece que os recursos não podem ser criados com o valor do rótulo definido como 'true' ou 'false'.

Com o seguinte yaml,

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

Estou recebendo um erro:

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

mas mude para

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

Sem erro:

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

A documentação da etiqueta não menciona este caso.

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.

O caso de uso para usar 'true' como valor de rótulo é usar o seletor "Exist", "NotExist", onde você não tem um valor de rótulo significativo.

Eu não testei ainda, mas se o analisador yaml convertê-lo em valor booleano digitado antes mesmo de obtermos o valor, então pode não ser fácil de corrigir? Se sim e não queremos apoiá-lo, então acho que pelo menos documentamos de alguma forma.

siapi-machinery

Comentários muito úteis

Cite-os.

Todos 3 comentários

Os rótulos são strings.

Cite-os.

siga @ bgrant0607
fixo.

Esta página foi útil?
0 / 5 - 0 avaliações