Azure Webjobs - 指定 ZIP 中的哪个文件 运行
Azure Webjobs - Specify which file in the ZIP to run
我正在从在多个 VM 中托管我的应用程序实例,转移到 Azure 中的多个 WebApps。我还有一个批处理工具,我 运行 在不同的时间按计划完成不同的工作。它所做的特定工作由命令行参数控制,使用 Windows 任务计划很容易做到。
在 运行 网络作业时似乎没有指定参数的方法,但我确实找到了以下建议使用包含参数的 Powershell 脚本的 SO 文章:
Command Line Arguments to Azure Webjobs
非常好的解决方案,可以解决我的问题。但是,当上传包含我的应用程序、关联的 dll 和 powershell 文件的 zip 作为 WebJob 时,似乎没有办法指定我希望将 powershell 文件用作 WebJob,而是使用 exe .
在您的情况下将 运行 脚本命名为 run.{extension}
run.ps1
。
有关如何选择脚本的更全面说明,请阅读 https://github.com/projectkudu/kudu/wiki/Web-jobs
WebJobs 使用以下逻辑来决定哪个文件是作业目录中 运行 的脚本:
对于每种文件类型,我们首先查找名为:运行.{文件类型扩展名}(例如 run.cmd 或 run.exe 的文件。
如果不是所有文件类型都存在,我们将查找第一个具有受支持文件类型扩展名的文件。
使用的文件类型扩展名的顺序是:.cmd、.bat、.exe、.ps1、.sh、.php、.py、.js.
推荐的作业目录中的脚本文件是:run.cmd。
注意:我们只会在该作业的根目录下查找脚本(而不是在它的子目录下)。
注意:确保 .bat/.cmd 文件不包含 UTF-8 BOM(默认情况下由某些编辑器插入,例如 Visual Studio),这可能会破坏内容!
我正在从在多个 VM 中托管我的应用程序实例,转移到 Azure 中的多个 WebApps。我还有一个批处理工具,我 运行 在不同的时间按计划完成不同的工作。它所做的特定工作由命令行参数控制,使用 Windows 任务计划很容易做到。
在 运行 网络作业时似乎没有指定参数的方法,但我确实找到了以下建议使用包含参数的 Powershell 脚本的 SO 文章:
Command Line Arguments to Azure Webjobs
非常好的解决方案,可以解决我的问题。但是,当上传包含我的应用程序、关联的 dll 和 powershell 文件的 zip 作为 WebJob 时,似乎没有办法指定我希望将 powershell 文件用作 WebJob,而是使用 exe .
在您的情况下将 运行 脚本命名为 run.{extension}
run.ps1
。
有关如何选择脚本的更全面说明,请阅读 https://github.com/projectkudu/kudu/wiki/Web-jobs
WebJobs 使用以下逻辑来决定哪个文件是作业目录中 运行 的脚本:
对于每种文件类型,我们首先查找名为:运行.{文件类型扩展名}(例如 run.cmd 或 run.exe 的文件。 如果不是所有文件类型都存在,我们将查找第一个具有受支持文件类型扩展名的文件。 使用的文件类型扩展名的顺序是:.cmd、.bat、.exe、.ps1、.sh、.php、.py、.js.
推荐的作业目录中的脚本文件是:run.cmd。
注意:我们只会在该作业的根目录下查找脚本(而不是在它的子目录下)。
注意:确保 .bat/.cmd 文件不包含 UTF-8 BOM(默认情况下由某些编辑器插入,例如 Visual Studio),这可能会破坏内容!