我在配置Azure DevOps Dotnet核心构建过程时遇到问题。
我有一个简单的dotnet核心项目,我正试图在azuredevops环境中构建它。
该项目在我的repo中的一个子文件夹中,但是我不知道如何指定管道应该如何找到我的csproj文件。MSDN留档建议您可以指定它,但没有示例,我所有的尝试都遇到了错误。
使用标准dotnet CLI模板构建管道时,创建的YAML是:
# ASP.NET Core
# Build and test ASP.NET Core web applications targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/vsts/pipelines/languages/dotnet-core
pool:
vmImage: 'Ubuntu 16.04'
variables:
buildConfiguration: 'Release'
steps:
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
然而,这是遇到了错误:
MSBUILD : error MSB1003: Specify a project or solution file.
The current working directory does not contain a project or solution file.
上面链接的文档建议使用基于“任务”的语法,而不是脚本,我假设在文档中输入的顺序与下面列出的示例相同。
如果使用脚本
,则在构建
字之后指定csproj文件:
- script: dotnet build myrepo/test/test.csproj --configuration $(buildConfiguration)
使用Azure DevOps管道的最佳方法是为构建管道使用任务,在Dotnet Core yaml构建任务中,您可以在输入
部分指定文件:
- task: DotNetCoreCLI@2
inputs:
command: 'build'
projects: 'myrepo/test/test.csproj'
我现在有一个Azure DevOps发布管道,其中包含测试、验收和生产阶段,它们是按顺序触发的。当有新的生成可供部署时,将触发测试。 我遇到的问题是,所有阶段目前都部署了完全相同的工件。但这是错误的,因为它们部署到不同的环境,需要有自己版本的Web.config. 如何更改设置,使所有环境都能获得正确的软件包?我是否应该更改生成设置,以便为多个不同的配置生成,还是应该为每个环境分别生成?我如何选择
我正在尝试在Azure DevOps(内部部署)中配置发布管道以支持git流策略。我正在努力实现的目标: promise“发布/*”触发软件的构建并发布到QA的位置 promise“主控”从步骤1获取相同的软件构建(工件),并发布到生产位置 因此,当我做一个git-flow开始发布时,软件可用于测试/质量保证,当我完成发布时,它可供用户使用。 我的构建管道工作正常,它由发布分支触发,并以发布工件任
我在 Azure DevOps 存储库中有一个 ASP.NET 核心项目,使用 DevOps 生成管道可以正常生成该项目。但是,该版本的发布始终失败,并显示以下错误: 找不到具有指定模式的包。< br >检查任务中提到的包是否作为构建或前一阶段中的工件发布,并在当前作业中下载。 更多详情:
我在运行Azure DevOps管道时遇到问题。 我现在正在使用SpringBootMaven项目。我希望在不生成测试(src/test)文件的情况下运行构建管道,因为项目将在生成测试文件时失败,并且可以在没有测试文件的情况下成功构建。 是否有任何设置或配置?非常感谢。 您可以查看图像以查看详细信息,谢谢。请查看日志的图像
我的任务是开发现有遗留应用程序的Azure DevOps实现。应用程序有一个QA团队,该团队使用500个自动化测试用例。此测试用例是使用量角器开发的。所有测试用例都是使用JavaScript开发的。 对于现有设置,以下是所采取的步骤:a.发布管道部署ASP。NET应用程序到Azure app services b。QA人员手动登录到VM并启动量角器测试。 我们可以使用Azure devOps管道中
我最近尝试将我们的UI或基于经典的发布管道转换为基于YAML的发布管道。 我们有三个环境,最初一个CD构建将很高兴地部署到我们的开发环境中。 从那时起,我们手动触发一个版本(re:promotion)进行测试,然后在某个时候,如果我们都满意的话,手动升级到生产环境。 我们知道我们不能在发布阶段之间模仿手动推广,因为它目前不受支持,但是根据我所读到的,我们应该能够通过为请求手动推广的每个环境定义安全