你好,我是使用ask-cli的Alexa Skill Kit部署的新手。我只想知道是否有任何部署实践,我们有不同的配置,即skills.json和.ask/config
例如,我有一个存储库some-alexa-skill,它有两个分支: staging和production。
对于skills.json,staging具有以下配置
{
"skillManifest": {
"publishingInformation": {
"locales": {
"en-US": {
"name": "staging"
}
},
"isAvailableWorldwide": true,
"distributionCountries": []
},
"apis": {
"custom": {
"endpoint": {
"uri": "staging",
"sourceDir": "lambda/custom"
}
}
},
"manifestVersion": "1.0"
}
}而production则是这样的:
{
"skillManifest": {
"publishingInformation": {
"locales": {
"en-US": {
"name": "production"
}
},
"isAvailableWorldwide": true,
"distributionCountries": []
},
"apis": {
"custom": {
"endpoint": {
"uri": "production",
"sourceDir": "lambda/custom"
}
}
},
"manifestVersion": "1.0"
}
}正如我所观察到的,skill.json应该在git仓库中被“忽略”,因为在“发布到生产”期间,每当合并发生时,它都会被替换。我正在考虑忽略skills.json,并在我想部署时更改它。但我也在考虑允许其他人在自己的计算机上部署它的能力。
关于如何使用ask-cli实现这一点,有什么建议吗?
发布于 2017-11-17 20:36:57
使用API应该允许您随心所欲地控制源和目标目的地。使用“配置文件”将允许您保留单独的凭据集。
使用ask-cli时,有两种不同的控制级别。一个是高层次的,它简化了创建、克隆和更新技能。它们使用以下格式:
可以使用更低级别的API,它允许进行更具体的控制。它们使用"ask api ...“格式。并允许您指定例如要上传/下载到/从其下载的特定文件。我发现这些更适合有阶段、开发、测试分支等的项目。
在所有ask命令中,您可以提供一个配置文件,用于指定Lambda的Alexa开发人员帐户和AWS帐户的凭据。使用"ask init“来设置这些。我为以下内容保留单独的配置文件:
my work client projects,我们的测试人员和客户可以访问我的家庭/爱好项目。
亚马逊文档写得很好,并解释了如何使用ask-cli。这并不能解释为什么你要使用多个配置文件,等等。
我希望这能帮到你。从Amazon ask-cli quick start开始,然后访问参考文档的链接。
需要注意的一件事是确保您使用的是最新的ask-cli下载。截至今天,它是1.0.0-beta.4。您可以使用"ask -v“命令来显示您安装的版本。较早的1.0.0-beta.1版本中的部署命令存在问题。
https://stackoverflow.com/questions/47324246
复制相似问题