发布Azure WebJob以进行" staging"环境

时间:2016-02-10 11:08:26

标签: c# azure visual-studio-2015 azure-web-sites azure-webjobs

我的项目配置:

我有一个包含Azure Webjob的Web应用程序项目(Visual Studio 2015 update 1 + c#)。 Webjob是项目配置的一部分。看起来像这样(位置:ProjName - >属性 - > webjobs_list.json):

{
  "$schema": "http://schemastore.org/schemas/json/webjobs-list.json",
  "WebJobs": [
    {
      "filePath": "../Jobs/XXX/XXX.csproj"
    }
  ]
}

我的Azure配置:

我创建了一个新网站(" Web应用程序")并发布(到#34;生产"环境)我的项目。工作得很好。包括我的webjob。

到目前为止,一切都很好。现在,我创建了一个名为" Staging"的新环境(在我的Web应用程序站点内)。返回我的Visual Studio项目,下载新创建的发布配置文件(暂存)并发布它。

问题

Visual Studio拒绝使用此错误将我的项目发布到登台环境:

  

创建WebJob计划时发生错误:没有网站可以   找到与WebSiteName [XXX__stage]和。匹配的   WebSiteUrl [http://XXX-stage.azurewebsites.net]提供。

什么......?为什么? 通过将同一个项目发布到" Production"环境,证明项目配置正常(包括webjob)。

这个奇怪的任何解决方案?

谢谢。

1 个答案:

答案 0 :(得分:2)

从Visual Studio配置Azure Scheduler存在一些已知问题。建议的方法是避免使用Azure Scheduler,而是使用文档here中描述的较新的基于CRON的调度程序功能。

基本上,您将WebJobs创建为手动(未安排),然后使用CRON表达式向其添加settings.job,例如每15分钟运行一次:

{ "schedule": "0 */15 * * * *" }

接下来,这将是VS中的默认值。