【问题标题】:ASK CLI to deploy to different environments?要求 CLI 部署到不同的环境?
【发布时间】:2018-08-23 11:16:22
【问题描述】:

是否可以使用 Alexa Skill Kit 的 ASK CLI deploy 命令来构建,例如部署 development 环境的应用程序的 debug 版本和部署的应用程序的 release 版本到test 环境?

我和我的团队正在尝试将相同的技能部署到两个不同的环境中,因此我们的测试团队可以在测试环境中做他们的事情,而开发团队可以在开发环境中做他们的事情。

这将是一项私人技能,因此不能通过发布应用程序来使用http://developer.amazon.com 分离测试和“产品”。

【问题讨论】:

  • 很难说。文档是用 Martian 编写的。
  • 呵呵...现在,我编写了一个 bash 脚本,它复制包含测试配置的文件,运行 ask deploy,然后在 ask deploy 完成时退出这些测试配置。

标签: alexa alexa-skills-kit alexa-skill


【解决方案1】:

可能有很多方法可以做到这一点。以下是一些立即浮现在脑海中的:

  1. 从环境或单独的文件(例如 .env 文件)中提取不同的设置。
  2. 您还可以使用单独的帐户进行调试和发布,并在它们之间“共享”公共代码。
  3. 按照您在评论中提到的操作,并根据需要使用 bash(或 npm)进行配置。

就个人而言,我更喜欢 npm 方法,但我也成功地使用了 bash 来做到这一点。您没有提及您为 Lambda 使用的语言。我正在使用 Javascript,所以 npm 非常适合我。

另请注意,除了 ASK CLI 之外,您还可以使用 AWS CLI 来处理您的 lambda。

【讨论】:

  • 伟大的建议罗恩!正如你所说,我最终使用bash 复制配置进出“发布”版本。我们正在为我们的 lamda 使用 node
  • 节点很棒。在将我的 Lambda 上传到 AWS 之前,我使用 Mocha 在本地对我的 Lambda 进行单元测试(npm 测试)。
  • 另一条评论。由于代码位于 Lambda 中,您可以利用 AWS Lambda 的几个非常酷的特性: 1. 版本控制 - 每个 Lambda 都可以“版本化”,这使其不可变并赋予其唯一的编号名称(例如 myLambda:1 ) 2. 别名 - 您可以定义指向您选​​择的任何其他 Lambda 的 Lambda ARN 别名。因此,创建 test 和 prod 别名,然后将它们指向与每个阶段关联的 Lambdas(希望是版本化的?)。
猜你喜欢
  • 1970-01-01
  • 2023-03-03
  • 2011-11-29
  • 1970-01-01
  • 1970-01-01
  • 2018-05-06
  • 1970-01-01
  • 2018-08-02
  • 2015-07-05
相关资源
最近更新 更多