Serverless: لا يمكن تعيين إعدادات VPC بواسطة المتغيرات

تم إنشاؤها على ١٠ فبراير ٢٠١٧  ·  3تعليقات  ·  مصدر: serverless/serverless

عند استخدام المتغيرات في تعريف VPC في serverless.yml مثل:

vpc:
securityGroupIds:
- $ { self: custom.prod_sg_a }
- $ { self: custom.prod_sg_b }
الشبكة الفرعية
- $ { 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

معلومات بيئتك -----------------------------
نظام التشغيل: داروين
إصدار العقدة: 5.1.1
الإصدار بدون خادم: 1.6.1

يجب أن يكون قادرًا على استخدام المتغيرات (بما في ذلك المتغيرات المتداخلة) لدعم النشر عبر حسابات مختلفة وبالتالي VPCs مختلفة.

bug

التعليق الأكثر فائدة

تحرير: تجاهل - لقد قمت بنسخ هذا التكوين من على الإنترنت في مكان ما ولصق واصلة بدلاً من شرطة ، مما أدى إلى الخطأ الذي رأيته.

أنا أتلقى نفس الخطأ. لدي مجموعة أمنية واحدة فقط.

لقد جربت كليهما

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"

هل هذا مجرد شيء يامل؟

تحرير: تجاهل - لقد قمت بنسخ هذا التكوين من على الإنترنت في مكان ما ولصق واصلة بدلاً من شرطة ، مما أدى إلى الخطأ الذي رأيته.

ال 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}

شكر! يبدو أن هذا هو الحيلة. يجب تعيين المتغير على هيئة قائمة وليس قائمة متغيرات. أو شيء من هذا القبيل. نقدر المساعدة!

تحرير: تجاهل - لقد قمت بنسخ هذا التكوين من على الإنترنت في مكان ما ولصق واصلة بدلاً من شرطة ، مما أدى إلى الخطأ الذي رأيته.

أنا أتلقى نفس الخطأ. لدي مجموعة أمنية واحدة فقط.

لقد جربت كليهما

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"

هل هذا مجرد شيء يامل؟

تحرير: تجاهل - لقد قمت بنسخ هذا التكوين من على الإنترنت في مكان ما ولصق واصلة بدلاً من شرطة ، مما أدى إلى الخطأ الذي رأيته.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات