我正在尝试为 Azure 数据工厂创建我的 Azure DevOps 发布管道。
我遵循了 Microsoft ( https://docs.microsoft.com/en-us/azure/data-factory/continuous-integration-deployment ) 关于向 ARM 模板添加额外参数的相当神秘的指南发布(https://docs.microsoft.com/en-us/azure/data-factory/continuous-integration-deployment#use-custom-parameters-with-the-resource-manager-template)
arm-template-parameters-definition.json在 master 分支的路由中创建了一个文件。当我做一个发布,则ARMTemplateParametersForFactory.json在adf_publish分支保持完全不变。我尝试了很多配置。
我在数据工厂中定义了一些管道参数,并希望它们在我的部署管道中是可配置的。对我来说似乎是一个明显的要求。
我错过了一些基本的东西吗?请帮忙!
JSON 如下:
{
"Microsoft.DataFactory/factories/pipelines": {
"*": {
"properties": {
"parameters": {
"*": "="
}
}
}
},
"Microsoft.DataFactory/factories/integrationRuntimes": {
"*": "="
},
"Microsoft.DataFactory/factories/triggers": {},
"Microsoft.DataFactory/factories/linkedServices": {},
"Microsoft.DataFactory/factories/datasets": {}
}
Run Code Online (Sandbox Code Playgroud) azure azure-data-factory azure-devops azure-rm-template azure-pipelines
如果我运行 Azure DevOps 管道,则会收到以下错误。如果有人知道这个问题,请帮助我。
[错误] 没有购买或授予托管并行性。要申请免费的并行授权,请填写以下表格 https://aka.ms/azpipelines-parallelism-request

有什么方法可以将变量重用与模板和变量声明混合在同一个variables块中吗?像这样的东西:
variables:
- template: vars.yml # Template reference
anotherVar: http://$(oneVarFromVarsYml)/xxx
Run Code Online (Sandbox Code Playgroud)
测试后发现不行,请问有什么解决办法吗?我知道我可以定义 varanotherVar 我知道我可以在同一个模板中vars.yml,但我需要直接在此处定义它而不是在模板中。
下面的官方 Azure Devops 文档仅提供了如何从模板导入变量,但没有提供混合模板变量和直接变量的示例: https: //learn.microsoft.com/en-us/azure /devops/pipelines/process/templates?view=azure-devops#variable-reuse
我们正在使用带有Git和Team System Build(以前的Build vNext)的Visual Studio Team Systems。当我们执行请求请求时,将触发一个新的构建,该构建将用于运行单元测试并部署到隔离的测试系统中。为了执行到隔离系统的部署,我需要在构建过程中获取真实的源分支名称。但是,Build.SourceBranchName变量始终为“合并”,
例如:
从源FOO到目标BAR的请求
Build.SourceBranch是“ refs / pull / 1 / merge”,因此Build.SourceBranchName是“ merge”。但是我需要以某种方式使“ FOO”运行我的Power Shell脚本来配置系统。
有没有办法在VSTS的Git Pull Request中获取真实的源分支名称?
当通过RDP访问时,我的量角器测试在我的本地计算机和Azure VM Windows Server 2012R2上运行良好.我在我的测试中明确设置浏览器窗口分辨率browser.driver.manage().window().setSize(1600, 900);,它允许测试正常工作.
但是,当上面提到的VM用作构建机器时,由VSO(VSTS)代理控制,我的量角器测试失败了.我怀疑它发生是因为VSO代理会话的屏幕分辨率小于我的测试中指定的所需分辨率而且WebDriver(ChromeDriver)无法将分辨率设置为高于OS限制.
我的问题是如何更改Azure VM for VSO代理会话的屏幕分辨率?
我尝试使用自定义实用程序从这里更改屏幕分辨率 ,它可以在我的PC上运行,但是当它由Azure VM上的VSTS代理执行时,它会抛出错误:
System.InvalidOperationException: The display driver failed the specified graphics mode.
Run Code Online (Sandbox Code Playgroud) 我有一个中等大小的ASP.NET MVC4解决方案,其中包含大约15个项目.我一直在VSTS中使用付费托管管道(VS 2017)来构建我的版本.虽然我一直在构建或打包步骤中随机获取下面的错误.重新运行构建,它将通过源代码中没有其他更改!没有其他错误,详细信息错误显示在构建日志中.它在解决方案的任何项目中随机出现.任何想法可能导致它或如何获得更多的错误信息,以避免它?
我的团队将VSTS与托管代理一起使用,并使用Visual Studio Test构建任务来运行所有测试并产生代码覆盖率。但是,“代码覆盖率 ”选项卡此后仍然为空,仅显示下载* .coverage文件的链接。
我实际上希望显示代码覆盖率结果,以及使用表格和图表测试哪些项目以及它们各自的覆盖率。
我们正在使用Visual Studio测试生成任务来测试选中了代码覆盖率的 net461程序集。
有些关联都是这个和这个问题,但不完全,因为我们只是使用MSTest的框架与内置Visual Studio的测试生成任务,(我的理解),这也应该自动发布的代码覆盖率结果。
我是否缺少使此Code Coverage视图正常工作的内容?谢谢!!
我在Azure DevOps上为Service Fabric解决方案配置了一个构建管道,如下所示:
直到几天前,当某个特定的构建代理(专用)上的构建开始失败时,一切都很好,并出现以下错误(对于一些项目):
C:\ Program Files \ dotnet \ sdk \ 2.1.200 \ Sdks \ Microsoft.NET.Sdk \ build \ Microsoft.PackageDependencyResolution.targets(327,5):错误:资产文件'F:\ Agent03 \ w \ 84 \ s找不到\ src \ MyProject.Sam.Tiles.Domain \ obj \ project.assets.json'。运行NuGet软件包还原以生成此文件。
失败的任务是Build solution $(PathToSolution)一项。
奇怪的是,当在某些代理上运行时构建失败,但是对于其他代理,构建很好。
一些细节:
Use NuGet 4.x我认为,这项任务是最近开始使用NuGet v4.9.1的。我尝试使用v4.8.1没有运气;PackageReference格式,但是.sfproj项目使用packages.config文件dotnet restore任务,但尝试恢复该.sfproj项目的软件包时出现错误:
错误:无法找到.. \ packages \ Microsoft.VisualStudio.Azure.Fabric.MSBuild.1.6.7 \ build \ Microsoft.VisualStudio.Azure.Fabric.Application.props文件。请还原'Microsoft.VisualStudio.Azure.Fabric.MSBuild'Nuget程序包
关于什么可能导致此问题的任何想法?
我使用 Azure Pipelines 作为 Azure DevOps 的一部分。我试图在我的模板文件中定义变量,因为我需要多次使用相同的值。
这是我的stage-template.yml:
parameters:
- name: param1
type: string
- name: param2
type: string
variables:
var1: path/${{ parameters.param2 }}/to-my-file.yml
stages:
- stage: Deploy${{ parameters.param2 }}
displayName: Deploy ${{ parameters.param1 }}
jobs:
...
Run Code Online (Sandbox Code Playgroud)
尝试使用此管道时,我收到一条错误消息:
/stage-template.yml(第 7 行,第 1 列):意外值“变量”
为什么这不起作用?我做错了什么?
顺便提一下,我正在使用自托管代理来运行我的构建和发布管道。
问题是当我运行任何构建并且由于管道中的某些问题而失败时。来自远程的克隆分支位于 _work 目录中。第二次运行也选择了相同的工作目录,我已经从 agent _work 目录手动检查没有克隆新目录,我还可以从 Azure Pipeline 日志中验证它们使用的是相同的旧目录。
我临时解决了这个问题,我进入旧目录(即/home/user/_work/13)并手动删除那13个目录然后azure拿起它新文件夹说_work下的14,我可以看到最新的从远程克隆代码。
那么如何在发生任何故障时自动删除工作文件夹(代理构建目录,即 _work 下的 13/14)。
PS:当我的管道成功完成时,我已经有清理步骤,我在最后运行。另外,我正在编写基于 .yml 的管道。
如果需要任何信息以更好地理解,请告诉我。