Serverless: VPC設定を変数で割り当てることはできません

作成日 2017年02月10日  ·  3コメント  ·  ソース: serverless/serverless

serverless.ymlのVPC定義で次のような変数を使用する場合:

vpc:
securityGroupIds:
-$ { self:custom.prod_sg_a }
-$ { self:custom.prod_sg_b }
サブネットID:
-$ { self:custom.prod_subnet_a }
-$ { self:custom.prod_subnet_b }

サーバーレスは、デプロイ時に次のエラーをスローします。

サーバーレス:展開に失敗しました!

サーバーレスエラー---------------------------------------

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

支持を得ます - - - - - - - - - - - - - - - - - - - - - -
ドキュメント:docs.serverless.com
バグ:github.com/serverless/serverless/issues

あなたの環境情報-----------------------------
OS:ダーウィン
ノードバージョン:5.1.1
サーバーレスバージョン:1.6.1

変数(ネストされた変数を含む)を使用して、さまざまなアカウント、つまりさまざまなVPCへの展開をサポートできる必要があります。

bug

最も参考になるコメント

編集:無視-この構成をオンラインのどこかにコピーしたところ、ダッシュではなくハイフンが貼り付けられたため、エラーが発生しました。

これと同じエラーが発生します。 セキュリティグループは1つだけです。

私は両方を試しました

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

そして

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

これは単なるyamlのことですか?

編集:無視-この構成をオンラインのどこかからコピーしたところ、ダッシュではなくハイフンが貼り付けられたため、エラーが発生しました。

全てのコメント3件

私はこれに変数を使用していますが、1.3を使用しています。 正確なserverless.ymlファイルはありますか?

以下は私がこれを行う方法の例です。 変更されているため、正確に正しくない可能性がありますが、出発点となるはずです。

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

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

ありがとう! それはトリックをするようでした。 変数のリストではなく、リストとして変数を設定する必要があります。 またはそのようなもの。 助けに感謝します!

編集:無視-この構成をオンラインのどこかにコピーしたところ、ダッシュではなくハイフンが貼り付けられたため、エラーが発生しました。

これと同じエラーが発生します。 セキュリティグループは1つだけです。

私は両方を試しました

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

そして

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

これは単なるyamlのことですか?

編集:無視-この構成をオンラインのどこかからコピーしたところ、ダッシュではなくハイフンが貼り付けられたため、エラーが発生しました。

このページは役に立ちましたか?
0 / 5 - 0 評価