无服务器使用 gitlab 删除 lambda CI
serverless remove lamda using gitlab CI
我正在使用 gitlab CI 进行部署。
我 运行 在删除审查分支时遇到了问题。
stop_review:
variables:
GIT_STRATEGY: none
stage: cleanup
script:
- echo "$AWS_REGION"
- echo "Stopping review branch"
- serverless config credentials --provider aws --key ${AWS_ACCESS_KEY_ID} --secret ${AWS_SECRET_ACCESS_KEY}
- echo "$CI_COMMIT_REF_NAME"
- serverless remove --stage=$CI_COMMIT_REF_NAME --verbose
only:
- branches
except:
- master
environment:
name: review/$CI_COMMIT_REF_NAME
action: stop
when: manual
错误是This command can only be run in a Serverless service directory. Make sure to reference a valid config file in the current working directory if you're using a custom config file
我尝试了不同的 GIT_STRATEGY
,有人能给我指明正确的方向吗?
为了 运行 serverless remove
,您需要有可用的 serverless.yml
文件,这意味着需要克隆实际的存储库。 (或者该文件需要以某种方式到达 GitLab)。
当您 运行 serverless remove
时,需要有一个 serverless.yml
配置文件可用,因为无服务器框架允许用户不仅使用框架的 YML 配置而且还使用其他资源来配置基础设施(如 AWS 中的 CloudFormation)可能完全位于指定的 app
或 stage
CF 堆栈之外,也可能不存在。
事实上,您也可以将基础设施提供给其他提供商(AWS、GCP、Azure、OpenWhisk,或者它们的任意组合)。
因此,在 运行 宁 sls remove
时,仅识别舞台名称是不够的,您需要完整的 serverless.yml
模板。
我正在使用 gitlab CI 进行部署。
我 运行 在删除审查分支时遇到了问题。
stop_review:
variables:
GIT_STRATEGY: none
stage: cleanup
script:
- echo "$AWS_REGION"
- echo "Stopping review branch"
- serverless config credentials --provider aws --key ${AWS_ACCESS_KEY_ID} --secret ${AWS_SECRET_ACCESS_KEY}
- echo "$CI_COMMIT_REF_NAME"
- serverless remove --stage=$CI_COMMIT_REF_NAME --verbose
only:
- branches
except:
- master
environment:
name: review/$CI_COMMIT_REF_NAME
action: stop
when: manual
错误是This command can only be run in a Serverless service directory. Make sure to reference a valid config file in the current working directory if you're using a custom config file
我尝试了不同的 GIT_STRATEGY
,有人能给我指明正确的方向吗?
为了 运行 serverless remove
,您需要有可用的 serverless.yml
文件,这意味着需要克隆实际的存储库。 (或者该文件需要以某种方式到达 GitLab)。
当您 运行 serverless remove
时,需要有一个 serverless.yml
配置文件可用,因为无服务器框架允许用户不仅使用框架的 YML 配置而且还使用其他资源来配置基础设施(如 AWS 中的 CloudFormation)可能完全位于指定的 app
或 stage
CF 堆栈之外,也可能不存在。
事实上,您也可以将基础设施提供给其他提供商(AWS、GCP、Azure、OpenWhisk,或者它们的任意组合)。
因此,在 运行 宁 sls remove
时,仅识别舞台名称是不够的,您需要完整的 serverless.yml
模板。