Serverless: As configurações de VPC não podem ser atribuídas por variáveis

Criado em 10 fev. 2017  ·  3Comentários  ·  Fonte: serverless/serverless

Ao usar variáveis ​​na definição de VPC em serverless.yml, como:

vpc:
securityGroupIds:
- $ { self: custom.prod_sg_a }
- $ { self: custom.prod_sg_b }
subnetIds:
- $ { self: custom.prod_subnet_a }
- $ { self: custom.prod_subnet_b }

serverless gera o seguinte erro na implantação:

Sem servidor: falha na implantação!

Erro sem servidor ---------------------------------------

 An error occurred while provisioning your stack: LambdaFunction
 - Value of property SecurityGroupIds must be of type
 List of String.

Obtenha suporte --------------------------------------------
Docs: docs.serverless.com
Bugs: github.com/serverless/serverless/issues

Suas informações ambientais -----------------------------
OS: darwin
Versão do nó: 5.1.1
Versão sem servidor: 1.6.1

Deve ser capaz de usar variáveis ​​(incluindo variáveis ​​aninhadas) para dar suporte à implantação em contas diferentes e, portanto, VPCs diferentes.

bug

Comentários muito úteis

EDIT: DISREGARD - Copiei esta configuração online em algum lugar e colei um hífen em vez de um travessão, resultando no erro que vi.

Estou recebendo este mesmo erro. Eu só tenho um grupo de segurança.

Eu tentei os dois

provider:
  name: aws
  runtime: nodejs6.10
  vpc:
    securityGroupIds:
      — "sg-abcdefg1"
    subnetIds:
      — "subnet-abcdefg1"
      — "subnet-abcdefg2"

E

provider:
  name: aws
  runtime: nodejs6.10
  vpc:
    securityGroupIds: "sg-abcdefg1"
    subnetIds:
      — "subnet-abcdefg1"
      — "subnet-abcdefg2"

Isso é apenas uma coisa do yaml?

EDIT: DISREGARD - Copiei esta configuração online em algum lugar e colei um hífen em vez de um travessão, resultando no erro que vi.

Todos 3 comentários

Estou usando variáveis ​​para isso, mas com 1.3. Você tem seu arquivo serverless.yml exato?

Abaixo está um exemplo de como estou fazendo isso. Ele foi modificado, então pode não ser exatamente correto, mas deve fornecer um ponto de partida.

custom:
  vpc:
    securityGroupIds: ${self:custom.SecurityGroupId}
    subnetIds: ${self:custom.SubnetId}
  SubnetId:
    - TBA
  SecurityGroupId:
    - TBA

functions:
  test:
    handler: handlers/test.handler
    vpc: ${self:custom.vpc}

Obrigado! Isso pareceu funcionar. Deve definir a variável como uma lista em vez de uma lista de variáveis. Ou algo assim. Agradeço a ajuda!

EDIT: DISREGARD - Copiei esta configuração online em algum lugar e colei um hífen em vez de um travessão, resultando no erro que vi.

Estou recebendo este mesmo erro. Eu só tenho um grupo de segurança.

Eu tentei os dois

provider:
  name: aws
  runtime: nodejs6.10
  vpc:
    securityGroupIds:
      — "sg-abcdefg1"
    subnetIds:
      — "subnet-abcdefg1"
      — "subnet-abcdefg2"

E

provider:
  name: aws
  runtime: nodejs6.10
  vpc:
    securityGroupIds: "sg-abcdefg1"
    subnetIds:
      — "subnet-abcdefg1"
      — "subnet-abcdefg2"

Isso é apenas uma coisa do yaml?

EDIT: DISREGARD - Copiei esta configuração online em algum lugar e colei um hífen em vez de um travessão, resultando no erro que vi.

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

Questões relacionadas

anreved picture anreved  ·  3Comentários

bradgreens picture bradgreens  ·  3Comentários

jnicho02 picture jnicho02  ·  3Comentários

tomyam1 picture tomyam1  ·  3Comentários

gandhi-jay picture gandhi-jay  ·  3Comentários