通过Git部署的计划Azure WebJob会导致按需作业

 Coco李可儿 发布于 2022-12-09 14:57

我有一个启用了Git的ASP.NET WebApp,其中包含一个关联的Azure WebJob.当我通过Visual Studio部署它时,一切都很好,但在连续交付环境中这有点难,所以我想通过Git发布Web App和WebJob.

通过Azure工具我关联了我的WebJob项目,我在WebApp项目中获得了一个"webjobs-list.json"文件:

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


webjobs-list.json来源

在Console App Project中,我得到了一个带有以下内容的"webjob-publish-settings.json"文件: 

{
"$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
"webJobName": "Hub-Crawler",
"startTime": "2014-11-25T02:00:00+01:00",
"endTime": null,
"jobRecurrenceFrequency": "Day",
"interval": 1,
"runMode": "Scheduled"
}

webjob - 发布 - settings.json

正如您所看到的,"runMode"设置为"Scheduled",当我通过Visual Studio部署它时一切正常.

但是没有Visual Studio我得到了这个"按需"的WebJob: 在此输入图像描述

这是目前不支持或可能是什么问题?

完整的.sln可以在GitHub上找到

2 个回答
  • 最后有一个使用git部署部署预定webjobs的解决方案.

    这个博客有详细信息.

    该解决方案使用kudu调度程序而不是Azure调度程序,因此Azure门户仍将作业显示为"按需",但它确实按计划执行,门户网站准确显示历史记录.

    2022-12-11 02:08 回答
  • 实际上,问题是该方案尚未得到很好的支持.具体来说,当通过git(或GitHub/Bitbucket)发布时,该webjob-publish-settings.json文件将被忽略.

    一种解决方法是使用VS发布一次只是为了创建调度程序,然后使用git.

    最终,将使用定义WebSite和调度程序的Azure Resource Manager模板来解决此方案.从技术上讲,这可以在今天完成,但目前还没有太多的文档.

    2022-12-11 03:08 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有