O requisito de ação Juju está faltando. Por quê?

3

Estou com muitos problemas ao passar os parâmetros necessários para uma Ação Juju. Este é o conteúdo das minhas ações.yaml:

create-root-cert:
  description: "Generate a Root CA Certificate"
  params:
    subject:
      type: object
      description: "Relative Distinguished Names (RDNs)"
      properties:
        cn:
          type: string
          description: "Common Name"
  required: [subject.cn]

No entanto, quando eu corro:

juju action do strongswan/0 create-root-cert subject.cn="beenswerving.com"

Eu recebo o seguinte erro:

ERROR validation failed: (root) : "subject.cn" property is missing and required, given {"subject":{"cn":"beenswerving.com"}}

Estou correndo:

jammin@ADARA:$ juju version
1.24-alpha1-trusty-amd64
    
por benileo 22.04.2015 / 22:16

1 resposta

4

A chave 'required' é um ponto para a chave 'properties'. Quando seu esquema contém um objeto, ele obtém suas próprias propriedades e chaves necessárias (entre as outras). Você pode atualizar suas actions.yaml assim e deve funcionar:

create-root-cert:
  description: "Generate a Root CA Certificate"
  params:
    subject:
      type: object
      description: "Relative Distinguished Names (RDNs)"
      properties:
        cn:
          type: string
          description: "Common Name"
      required: [cn]

O aviso "obrigatório" é recuado e o nome do campo obrigatório é local, em vez de estar no escopo "assunto"

    
por John Weldon 23.04.2015 / 16:41

Tags