簡體   English   中英

如何使用無服務器創建相同雲功能的dev和prod實例?

[英]How do I create a dev and prod instance of the same cloud function using serverless?

我有一個名為getVendors的雲功能,該功能使用無服務器進行部署。 我需要創建具有相同功能的開發實例和生產實例。 當我在yml文件中使用dev變量進行部署時,它將覆蓋GCP中當前的功能。

如何在不覆蓋生產實例的情況下部署具有相同雲功能的開發實例?

作為參考,我在Deployment Manager中有兩個堆棧(dev和prod)。 當我查看項目中的Cloud Functions時,項目中僅列出了一個功能。 這是被覆蓋的功能。

service: get-vendor-info

provider:
  name: google
  stage: production
  runtime: nodejs8
  region: us-central1
  project: {PROJECT NAME IS HIDDEN}
  # the path to the credentials file needs to be absolute
  credentials:{MY_CREDENTIALS}.json

plugins:
  - serverless-google-cloudfunctions

package:
  exclude:
    - node_modules/**
    - .gitignore
    - .git/**

functions:
  getVendors:
    handler: getVendors
    events:
      - event: 
          eventType: providers/cloud.pubsub/eventTypes/topic.publish
          resource: projects/{MY_PROJECT_NAME}/topics/getVendors

我使用了兩個不同的GCP項目; 一個用於開發/測試,另一個用於產品。 如果團隊中有多個開發人員,則應考慮為每個開發人員提供自己的開發項目。

這樣可以減少開發或測試工作弄亂生產數據的風險。 您可以每晚將生產數據庫復制到dev / test項目中,並可能還會向其中添加特殊的測試數據。 這些特殊的測試數據可以是極端情況,可以根據其運行自動化測試的知名數據等。

要進行更深入的討論,請查看Google Cloud上的演講接下來: https : //youtu.be/41QvqGfbz9o?t=1142

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM