azure-devops - 在 Azure DevOps 发布定义中从同一个项目部署多个 WebJobs?
问题描述
因此,我们构建代码的方式是,我们的解决方案中有多个项目,每个项目都有多个 Web 作业。我们已经配置了一种手动方式,使用 run.cmd 文件发布这些多个 webjobs,并将相关的 run.cmd 文件复制到根文件夹,具体取决于我们要发布的 webjob。
我想知道是否有任何方法可以通过 Azure DevOps 中的构建/发布定义来做到这一点,而不必将多个 webjob 拆分为单个项目。这些多个 Web 作业也都存在于同一个应用服务中。
解决方案
您所做的是目前最简单的方法,您可以在 Azure DevOps Build/Release Pipeline 中克隆该过程。在 Azure DevOps 中没有任何方法可以做到这一点,而不必将多个 Web 作业拆分为单独的项目。
我们已经配置了一种手动方式,使用 run.cmd 文件发布这些多个 webjobs,并将相关的 run.cmd 文件复制到根文件夹,具体取决于我们要发布的 webjob。
例如,在您的构建解决方案步骤中定义(添加一些复制文件步骤以复制必要的文件):-
Visual Studio Build(解决方案:***.sln,MSBuild 参数:/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\")
发布构建工件(发布路径:$(build.artifactstagingdirectory);工件名称:drop;工件类型:服务器)
为此构建定义创建发布定义并添加任务
- Azure 应用服务部署
- 选择您的 Azure 订阅和应用服务名称;
- 选择您的包或文件夹:$(System.DefaultWorkingDirectory)**\WebJob1.zip
您可以类似地为 WebJob2.zip 创建另一个 Azure 应用服务部署任务,并通过单个构建和发布管道部署任意数量的 Web 作业。
推荐阅读
- ios - 如何在集合视图中显示从数组到特定 indexPath 的项目
- mybatis - 为什么 sqlsession 事务在 mybatis 中不起作用?
- php - 当我需要运行服务器时,laravel 框架错误
- java - 如果rest api抛出500内部服务器错误,如何捕获由球衣中的rest api返回的响应对象的内容
- python - 如何在 Python OpenCV 中裁剪图像/视频
- vba - 循环仅在第一个实例上更改类别
- kubernetes - 裸机设置上的 Kubeflow 设置?
- python-3.x - 如何解释 LinearSegmentedColormap 上的文档
- c++ - 当我们有纯虚函数雇佣关系时,如何启动一个对象?
- ruby-on-rails - Rubocop:在 void 上下文中使用的文字。[Lint/Void]