您好我是使用ask-cli部署Alexa Skill Kit的新手。我只是想知道是否有任何部署实践,我们有不同的配置,skills.json
和.ask/config
例如,我有一个存储库some-alexa-skill
,包含2个分支:staging和production。
staging
具有skills.json
{
"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"
}
}
我可以观察到git资源库中应该“忽略”skill.json
,因为在“发布到生产”期间发生合并时它将被替换。我想只是忽略skills.json
而只是在我想要部署时更改它。但我也在考虑允许其他人在自己的机器上部署它的能力。
有关如何使用ask-cli
处理此问题的任何建议?
答案 0 :(得分:2)
使用API应该允许您根据需要控制源和目标目标。使用“配置文件”将允许您保留单独的凭据集。
使用ask-cli时有2种不同的控制级别。一个是高级别的,简化了创建,克隆和更新技能。这些使用格式:
可以使用较低级别的API,以实现更具体的控制。它们使用“ask api ...”格式,并允许您指定要上载/下载的特定文件。我发现这些对于有分期,开发,测试分支等的项目更好。
在所有ask命令中,您可以提供一个配置文件,指定Alexa开发人员帐户的凭据和Lambda的AWS账户。使用“ask init”进行设置。我保留了以下单独的个人资料:
亚马逊文档写得很好,并解释了如何使用ask-cli。它只是没有说明为什么你会使用多个配置文件等。
我希望这会有所帮助。从Amazon ask-cli quick start开始,然后点击参考文档的链接。
要注意的一件事是确保使用最新的ask-cli下载。截至今天它是1.0.0-beta.4。您可以使用“ask -v”命令显示已安装的版本。早期的1.0.0-beta.1版本中的deploy命令存在问题。