最近在為公司導入CI/CD流程,需要建構開發、測試、正式環境滿足業務需求,由於公司的後端開發環境全部都基於AWS的Serverless架構下開發,使用到了API Gateway、Lambda,因此紀錄一下如何在這樣的架構下將環境分別切開。
先到Lambda創建新版本
Version description部分可以留空,或針對版本變化描述
以測試環境做為演示,創建新的別名
test連結到新創版號
創建結果
進到該LambdaAPI Gateway,並創建test stage
test stage Variable下創建key為lambdaAlias,value為 test
回到Resource頁,需針對每個呼叫方法設定,點選Integration Request
修改Lambda Function名稱為function Name:${stageVariables.lambdaAlias}
針對提醒新增call function的權限
以本次實作為例,跑一次cmd,修改字串command中${stageVariables.lambdaAlias}為test
在Resource中Actions裡deploy環境
點選test
切換到custom domain頁,選擇要修改的Custom domain names
13.點選Configure API mappings
點選要新增或修改API的Stage
新增
使用post man送出請求 送出測試環境Request
送出開發環境Request
查看CloudWatch Lambda是否有針對不同的環境產生不同的log
完成!