serverless-framework - 无服务器框架和条件值的解决方法
问题描述
在阅读了无服务器文档和他们论坛中的一些帖子后,我注意到没有办法实现明确的条件归因。
我想根据阶段设置一个或其他值。
provider:
stage: ${opt:stage, 'production'}
custom:
domain: here's where the conditional should set one or the other value
因此,如果阶段是生产, custom.domain 应该保存值:www.mydomain.com,但如果是开发阶段,它应该保存 www-dev.mydomain.com
我发现了一些库/插件,例如https://www.serverless.com/plugins/serverless-plugin-ifelse,但其中大多数都已过时。
您知道无需安装插件即可实现此目的的解决方法吗?
解决方案
一种常用的解决方法是定义每个阶段的值并使用可变分辨率路由到特定的值。
custom:
stageTargets:
dev:
domain: dev.foobar.com
prod:
domain: foobar.com
target: ${self:custom.stageTargets.${self:custom.stage}}
domain: ${self:custom.target.domain}
推荐阅读
- kotlin - 在 Kotlin 中隐藏基类构造函数参数
- python - 表输入参数和标量输出参数
- java - 什么是隐藏堆栈帧?
- php - 如何使用 for 循环使用多维索引数组?
- git - 适用于非常小的开发团队的 GIT 功能分支策略
- javascript - 确认数据是否已呈现的方法
- php - JQUERY AJAX GET 和 POST 访问不同的文件?
- java - Spring boot、ElasticSearch 和 TestContainers 集成测试。拒绝连接
- javascript - 使用模型 [Angular] 的嵌套对象填充选择下拉列表
- java - Android Studio 的模拟器摄像头倒置打开?