7

我正在按照本指南创建带有自定义deploy.cmd文件的 Web 应用程序。该文章建议我可以deploy.cmd使用以下命令获取当前文件的副本(然后我将对其进行修改):

azure site deploymentscript --python

azure不幸的是,当我使用文章中链接的 MSI 安装 Azure CLI 时,我的路径上没有二进制文件。我确实有az- 这是同一 CLI 的较新版本吗?- 但我找不到该可执行文件的等效部署脚本生成命令。

我找到了一个deploy.cmd使用 Kudu 的文件(在 下D:\home\site\deployments\tools),但不确定这是否是要使用的合适文件。任何人都可以建议正确的 Azure CLI 命令来生成部署脚本,或者确认deploy.cmd我找到的文件是正确的修改吗?提前致谢!

4

2 回答 2

8

azure site deploymentscript据我所知,在 azure cli(2.0) 中没有等价物。因此,您无法使用 Azure CLI 2.0 部署自定义脚本。

您最好了解 Azure cli 2.0(az) 与 Azure cli 1.0(azure) 之间的区别。

Azure CLI 2.0:我们用 Python 编写的下一代 CLI,用于资源管理器部署模型。

Azure CLI 1.0:我们用 Node.js 编写的 CLI,用于经典和资源管理器部署模型。

对于您的方案,如果您可以安装 Azure CLI 1.0,则可以参考此链接来安装 Azure CLI 1.0。

除了使用命令行生成启动器部署脚本之外,还有一种通常更简单的替代方法:

  • 无需任何部署脚本即可部署您的存储库。
  • 转到该站点的Kudu 控制台
  • 从“工具”菜单中,选择“下载部署脚本”。您将获得一个包含 .deployment 和 deploy.cmd 文件的 zip。
  • 在你的仓库的根目录提交这两个文件
  • 根据需要调整它们

更多信息请参考此链接

于 2017-05-26T02:01:09.117 回答
5

您可以使用kuduscript生成部署脚本。

npm install -g kuduscript
kuduscript --python

这是选项列表

Options:

    -h, --help                          output usage information
    -V, --version                       output the version number
    -r, --repositoryRoot [dir path]     The root path for the repository (default: .)
    --aspWAP <projectFilePath>          Create a deployment script for .NET web application, specify the project file path
    --aspNetCore <projectFilePath>      Create a deployment script for ASP.NET Core web application, specify the project file path
    --aspWebSite                        Create a deployment script for basic website
    --go                                Create a deployment script for Go website
    --node                              Create a deployment script for node.js website
    --ruby                              Create a deployment script for ruby website
    --php                               Create a deployment script for php website
    --python                            Create a deployment script for python website
    --functionApp [projectFilePath]     Create a deployment script for function App, specify the project file path if using msbuild
    --basic                             Create a deployment script for any other website
    --dotNetConsole <projectFilePath>   Create a deployment script for .NET console application, specify the project file path
    -s, --solutionFile <file path>      The solution file path (sln)
    -p, --sitePath <directory path>     The path to the site being deployed (default: same as repositoryRoot)
    -t, --scriptType <batch|bash|posh>  The script output type (default: batch)
    -o, --outputPath <output path>      The path to output generated script (default: same as repository root)
    -y, --suppressPrompt                Suppresses prompting to confirm you want to overwrite an existing destination file.
    --no-dot-deployment                 Do not generate the .deployment file.
    --no-solution                       Do not require a solution file path (only for --aspWAP otherwise ignored).
于 2018-08-04T18:40:20.610 回答