[英]How to know if Google Cloud function is running in dev or 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.