我想通过 azure 函数以及我的托管应用程序包含一些功能,并希望我可以将其包含在您指定的.zip文件中,该文件包含您的 mainTemplate.json 和 createUiDefinition.json 文件。
如果是这样,您将它们放在哪里,然后如何配置它们以运行? 他们以什么身份运行,他们的 URL 是什么,等等? 它们是否可以只是"消耗"模型(即根据需要分配 CPU 而不是专用服务器池(? 这些都是我想提供的低频率、高延迟类型的操作。
我发现文档说您可以在.zip文件中放置其他资源,但没有任何地方谈论实际执行此操作或如何使用它们。
如果我完全偏离基础,如何向客户提供特定行为以及托管应用程序? 我真的宁愿不自己托管这些功能,但如果这就是你必须这样做的方式......
谢谢。
本指南中有一节介绍部署工件,其中包括您需要的信息: https://github.com/Azure/azure-quickstart-templates/blob/master/1-CONTRIBUTION-GUIDE/best-practices.md
要总结该页面,您可以将脚本包含在 zip 中的任何位置,但最佳做法是不要将其放在顶层。 若要在主模板中获取 URI,需要添加以下参数:
"parameters": {
"_artifactsLocation": {
"type": "string",
"metadata": {
"description": "The base URI where artifacts required by this template are located including a trailing '/'"
},
"defaultValue": "[deployment().properties.templateLink.uri]"
},
"_artifactsLocationSasToken": {
"type": "securestring",
"metadata": {
"description": "The sasToken required to access _artifactsLocation if needed."
},
"defaultValue": ""
}
},
然后使用 URI 函数获取资源的完整路径,如以下示例所示:
"variables": {
"scriptFileUri": "[uri(parameters('_artifactsLocation'), concat('scripts/configuration.sh', parameters('_artifactsLocationSasToken')))]",
"nestedtemplateUri": "[uri(parameters('_artifactsLocation'), concat('nestedtemplates/jumpbox.json', parameters('_artifactsLocationSasToken')))]"
},