问题标签 [azure-devops-self-hosted-agent]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - 如何在使用 Azure 应用服务部署和 -useCHECKSUM 进行部署时修复“ERROR_PROXY_GATEWAY”错误
我已经设置了一个自托管发布代理,用于将我的软件发布到独立应用服务。如果我使用 Azure App Service 部署任务 (V4) 进行部署,则效果很好。我想使用 -useCHECKSUM 选项,但这会破坏发布。我收到一条错误消息:“错误:远程服务器返回错误:(502) 网关错误。”
我已经尝试用谷歌搜索错误,但我找不到参数和错误之间的任何关系。我怀疑 -useCHECKSUM 正在使用不同的路线来部署应用程序,但我无法找出它正在使用什么。
更多信息:无法使用指定的进程(“Web 管理服务”)连接到远程计算机(“xxxxxxx”)。如果代理服务器中断与目标服务器的通信,就会发生这种情况。禁用代理服务器并重试。了解更多信息:http: //go.microsoft.com/fwlink/ ?LinkId=221672#ERROR_PROXY_GATEWAY 。错误:远程服务器返回错误:(502) Bad Gateway。错误计数:1。
2019-07-31T08:38:16.5670711Z ##[调试]任务结果:失败 2019-07-31T08:38:16.5680985Z ##[错误]错误:错误代码:ERROR_PROXY_GATEWAY
azure-devops - Visual Studio Test 已将 Upload Test Attachments 设置为 false,但无论如何它都会上传附件
“Visual Studio 测试”任务有一个名为“上传测试附件”的选项,无论此选项在某个版本中是打开还是关闭,它始终会上传测试附件。
这现在发生在我的代理池中的两个特定构建代理上,这是从上周末开始的行为变化。
发布定义没有已知的变化。
我尝试创建一个新的发布定义,新旧发布定义表现出这种行为。
在过去,我们阻止这种不良行为的唯一方法是重新创建构建代理。
docker - Docker 容器中的新 DotNet Core VSTS 代理
尝试在运行 dotnet core 的 Docker 中创建自托管代理?
我使用以下 https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/docker?view=azure-devops创建了我的代理
下面似乎是一个非常标准的设置,我该如何更改它以便我的 docker 容器也可以构建 dotnetcore 项目?
这是一个windows盒子
码头工人
开始.ps1
更新 我设法在以下 https://github.com/jakobehn/WindowsContainerBuildImage/blob/master/Dockerfile上找到了我正在寻找的答案
azure - Azure 和 AzureRM Powershell 模块冲突
我正在设置 Azure DevOps 自托管管道代理。我们有一些遗留的云服务,因此我们需要以服务管理 API 为目标的“旧”Azure powershell 模块。我们显然也使用 Azure 资源管理器,因此还需要 AzureRM 或新的 Az 模块。
我们目前正在使用以下命令安装 Azure 模块版本 5.3.0 和 AzureRM 模块版本 6.13.1:
我们遇到的问题是,根据这些模块的导入顺序,我们会遇到脚本失败。例如,如果导入顺序是 Azure,然后是 AzureRM,我们会收到以下错误:
Import-Module:加载扩展类型数据文件时发生以下错误:TypeData“Microsoft.Azure.Commands.Common.Authentication.Abstractions.IAzureContextContainer”中的错误:TypeConverter 已被忽略,因为它已经发生。TypeData“Microsoft.Azure.Commands.Common.Authentication.Abstractions.IAzureContextContainer”中的错误:成员 SerializationDepth 已存在。TypeData“Microsoft.Azure.Commands.Common.Authentication.ProtectedFileTokenCache”中的错误:成员 PropertySerializationSet 已存在。TypeData“Microsoft.Azure.Commands.Common.Authentication.ProtectedFileTokenCache”中的错误:成员 SerializationMethod 已存在。TypeData 中的错误“Microsoft.Azure.Commands.Common.Authentication。
您可以在以下屏幕截图中看到这一点:
但是,如果先导入 AzureRm,然后再导入 Azure,它似乎可以正常工作:
问题是,在使用 Microsoft 和其他人构建的现有管道任务时,我们不控制导入的顺序。由于 MS 构建的云服务部署任务恰好首先导入 Azure,我们在部署云服务时遇到了失败。
最后,我尝试简单地不安装旧的 Azure 模块,希望 AzureRM “附带”处理一些服务管理 API 任务所需的东西,但事实并非如此。如果我尝试在未安装 Azure 模块的情况下进行部署,则会收到错误消息:
不支持基于证书的身份验证。找不到 Azure PowerShell 模块。
所以看起来遗留模块是必需的,但它发生了冲突。
docker - Azure 管道:Docker buildAndPush 失败
我有一个通用管道将 docker 映像保存到 AWS ERC,如下所示:
我已经在我的系统(powershell)上设置了一个托管代理。我已经建立了 AWS 和 Docker 服务连接,但是对我来说它以一种奇怪的方式失败了......这是 Docker 日志(我已经更改了项目以隐藏我的真实姓名和公司信息):
当我查找它说它丢失的文件时,我在代理文件夹中找到了它:C:\Users\me\AzureDevOps\agent_work\3\s\MyAPI\API\Web.API.csproj
查看日志,docker 正在尝试从 /var/lib/docker/tmp/docker-builder654845578/API/Web.API.csproj 复制它
也许我搞砸了设置 docker 任务并且没有在代理上提供正确的位置(老实说,没有地方将文件夹信息放在 docker 任务中)?评论/想法?
python - Azure DevOps 构建代理:没有可用的 Kerberos 凭据
我的 Azure DevOps 项目中有一个自定义 Linux 构建代理。sqlalchemy
其中一个版本通过 Python 脚本使用和将 SQL 数据库上传到 Azure SQL 数据库ODBC Driver 17 for SQL Server
。
最近构建失败并出现以下错误:
仅当从 Azure DevOps Pipelines 计划生成时。当我在自定义构建代理上本地运行脚本时,一切正常。
sql - SSDT 部署:不能在表或索引视图“表”上使用 CONTAINS 或 FREETEXT 谓词,因为它不是全文索引
我正在使用“Azure SQL 数据库部署”任务将 dacpac 作为发布管道的一部分部署到 Azure。
我收到错误消息:“不能在表或索引视图‘表’上使用 CONTAINS 或 FREETEXT 谓词,因为它不是全文索引。”
dacpac 部署到的表是一个空数据库,每次都在之前的 Azure CLI 任务中创建并在稍后的部署中删除。
这些问题似乎是订购的问题......
调查发布脚本显示:
第 2489 行 - 创建全文索引目录
第 70374 行 - 创建存储过程 - 此处失败
第 80491 行 - 在表格上创建全文
所以存储过程是在它所依赖的全文索引之前创建的。
我努力了:
- 在“附加 SqlPackage.exe 参数”中添加/p:IncludeTransactionalScripts=True(据我所知,这没有区别)
- 在执行任何其他操作之前手动添加全文索引的预部署脚本。这也失败了。由于它需要添加索引的表在部署前阶段还没有存在。
临时工作:
值得注意的是,我有一个临时工作。在那里,我让“Azure SQL 数据库部署”任务运行了两次。第一次抛出错误,但选择了“继续出错”,然后第二次成功。这感觉真的很糟糕而且很糟糕。
azure-devops - Azure DevOps 构建管道中的多个作业未能通过 SonarQube 分析和 MsBuild
在 Azure DevOps 构建管道中,我想在 Azure 托管代理中运行 MsBuild 任务,并在自托管代理中运行声纳分析任务。
我知道我需要将工件从一个工作传递到另一个工作。为此,我尝试使用发布和下载管道工件任务。
- 首先,我在自托管代理上准备 SonarQube 分析
- 然后我发布
.sonarqube
文件夹 - 在 Microsoft 托管代理上,我将之前发布的 SonarQube 元数据下载到作业中
- 我运行 MsBuild 和测试任务
- 我发布测试结果
- 回到自托管代理,我下载 SonarQube 元数据和测试结果
- 我运行 SonarQube 分析
在 SonarQube 分析任务执行期间显示以下错误消息。
这是我如何进行的
关于自托管代理工作“PrepareSonarqube”
- 准备声纳分析
- 发布管道工件
$(Pipeline.Workspace)/.sonarqube
文件夹
在 Microsoft 托管代理作业“构建”上
- Msbuild 和测试任务
- 发布管道工件“TestResults”文件夹
关于自托管代理工作“SonarQube 分析”
- 下载管道工件“.sonarqube”文件夹
- 下载管道工件“TestResults”
ssis - SSIS 项目无法在自托管代理上构建
我已经看到有关 SSIS 项目构建失败的其他问题记录,但没有适合我的情况。
我正在尝试在自托管代理上构建 SSIS 项目 (.dtproj)。
该项目在 Visual Studio 2019 和 Azure Pipelines 中构建良好,但是当我尝试使用自托管代理(通过 Azure DevOps 中的构建管道中的命令行任务)构建它时,我收到以下错误:
[调试]步骤的评估条件:'构建 SSIS 包'
[调试]评估:成功()
[调试]评估成功:
[调试]=>真
[调试]结果:真开始:构建 SSIS 包
====== ==================================================== ================ 任务:命令行
描述:在 Linux 和 macOS 上使用 Bash 以及在 Windows 上使用 cmd.exe 运行命令行脚本
版本:2.151.2
作者:Microsoft Corporation==================================================== ======================= [debug]VstsTaskSdk 0.9.0 commit 6c48b16164b9a1c9548776ad2062dad5cd543352 [debug]进入 C:\My Project\agent_work_tasks\CmdLine_d9bafed4-0b18-4f58- 968d-86655b4d2ce9\2.151.2\cmdline.ps1。
[调试]从 C:\My Project\agent_work_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.151.2\task.json 加载资源字符串
[调试]加载了 6 个字符串。
[debug]SYSTEM_CULTURE: 'en-US'
[debug]从 C:\My Project\agent_work_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.151.2\Strings\resources.resjson\en-US\ 加载资源字符串resources.resjson
[debug]加载了 6 个字符串。
[debug]INPUT_FAILONSTDERR: 'false'
[debug] 转换为 bool: False
[debug]INPUT_SCRIPT: 'echo Building SsisProject...
[debug]
[debug]"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.com" C:\My Project\ agent_work\1\s\MySolution.sln /build Development /project C:\My Project\agent_work\1\s\ETL\Integration\MySsisProject\MySsisProject.dtproj' [debug]INPUT_WORKINGDIRECTORY: 'C:\My Project\agent_work\ 1\s'
[debug]断言容器路径存在:'C:\My Project\agent_work\1\s'
生成脚本。
[debug]AGENT_VERSION: '2.155.1'
[debug]AGENT_TEMPDIRECTORY: 'C:\My Project\agent_work_temp'
[debug]断言容器路径存在:'C:\My Project\agent_work_temp'
[debug]断言叶路径存在:' C:
=========================== 开始命令输出===================== ===
[debug]进入 Invoke-VstsTool。
[调试] 参数:'/D /E:ON /V:OFF /S /C "CALL "C:\My Project\agent_work_temp\dde3e815-8cea-4bea-ab26-77e9bb52d973.cmd""'
[调试] 文件名: 'C:\WINDOWS\system32\cmd.exe'
[debug] WorkingDirectory: 'C:\My Project\agent_work\1\s' "C:\WINDOWS\system32\cmd.exe" /D /E:ON /V :OFF /S /C "CALL "C:\My Project\agent_work_temp\dde3e815-8cea-4bea-ab26-77e9bb52d973.cmd""
构建 SsisProject...Microsoft Visual Studio 2019 版本 16.0.29306.81。版权所有 (C) Microsoft Corp. 保留所有权利。
在命令行中指定了以下文件:
C:\我的项目\agent_work\1\s\MySolution.sln
我的项目\agent_work\1\s\ETL\Integration\MySsisProject\MySsisProject.dtproj[调试]退出代码:1
[调试]离开Invoke-VstsTool。
[错误] Cmd.exe 以代码“1”退出。
[调试]已处理:##vso[task.logissue type=error]Cmd.exe 以代码“1”退出。
[调试]已处理:##vso[task.complete 结果=失败]检测到错误
[调试]离开 C:\My Project\agent_work_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.151.2\cmdline.ps1。
uwp - Azure DevOps 2019 服务器上的 UWP CI 构建失败
我在内部托管的 AzureDevOps 2019 服务器上配置了 UWP CI,但它失败并出现以下错误。我已将此作为指南。有人可以指导我走向成功吗?
配置后YAML如下:
资源:- repo:自我队列:名称:默认要求:- msbuild - visualstudio
您的构建管道引用了一个名为“Parameters.solution”的未定义变量。为此 YAML 文件创建或编辑构建管道,在“变量”选项卡上定义变量。请参阅https://go.microsoft.com/fwlink/?linkid=865972 您的构建管道引用了一个名为“Parameters.secureFile”的未定义变量。为此 YAML 文件创建或编辑构建管道,在“变量”选项卡上定义变量。请参阅https://go.microsoft.com/fwlink/?linkid=865972 您的构建管道引用了一个名为“buildPlatform”的未定义变量。为此 YAML 文件创建或编辑构建管道,在“变量”选项卡上定义变量。请参阅https://go.microsoft.com/fwlink/?linkid=865972 您的构建管道引用了一个名为“cert.secureFilePath”的未定义变量。为此 YAML 文件创建或编辑构建管道,在“变量”选项卡上定义变量。请参阅https://go.microsoft.com/fwlink/?linkid=865972 您的构建管道引用“BuildConfiguration”变量,您已选择该变量可在排队时设置。为此 YAML 文件创建或编辑构建管道,在“变量”选项卡上定义变量,然后选择选项以使其在排队时可设置。请参阅https://go.microsoft.com/fwlink/?linkid=865971 变量:appxPackageDir: '$(build.artifactStagingDirectory)\AppxPackages\' 步骤: - 任务:NuGetToolInstaller@0 displayName: 'Use NuGet 4.4.1' 输入:版本规范:4.4.1
任务:NuGetCommand@2 displayName:'NuGet restore ***.sln' 输入:restoreSolution:'$(Parameters.solution)'
任务:DownloadSecureFile@1 displayName:'下载安全文件'输入:secureFile:'$(Parameters.secureFile)'
任务:VSBuild@1 displayName:'构建解决方案 Main/BoardPACWinApp.sln' 输入:解决方案:Main/BoardPACWinApp.sln vsVersion:16.0
msbuildArgs: '/p:AppxBundlePlatforms="$(buildPlatform)" /p:AppxPackageDir="$(appxPackageDir)" /p:AppxBundle=Always /p:UapAppxPackageBuildMode=StoreUpload /p:AppxPackageSigningEnabled=true /p:PackageCertificateThumbprint="" /p:PackageCertificateKeyFile="$(cert.secureFilePath)"' 平台:x64 配置:'$(BuildConfiguration)' 清洁:true msbuildArchitecture:x64
任务:PublishBuildArtifacts@1 displayName:'发布工件:drop' 输入:PathtoPublish:'$(Build.ArtifactStagingDirectory)\AppxPackages' 启用:false
任务:AppCenterDistribute@0 displayName:'部署到 Visual Studio App Center' 输入:symbolIncludeParentDirectory:false 启用:false
对于此设置,我使用了带有测试证书 (BoardPACWinApp_TemporaryKey.pfx) 的 VS 2019 16.3 构建工具,没有密码。请注意,我已经在构建服务器(Windows Server 2019(OS Build 17763.437))上安装了 VS 2019,只是为了确保构建成功并且确实如此。但是当我在 DevOps 构建代理上尝试同样的事情时,它会抛出错误。
MSBuild 参数:
[命令]"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64\msbuild.exe" "C:\agent_work\4\s\Main\BoardPACWinApp.sln" / nologo /nr:false /dl:CentralLogger,"C:\agent_work_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.146.0\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll";"RootDetailId= 1f510b32-fa94-449c-ba47-94b46a5869d0|SolutionDir=C:\agent_work\4\s\Main"*ForwardingLogger,"C:\agent_work_tasks\VSBuild_71a9a2d3-a98a-4caa-96ab-affca411ecda\1.146.0\ps_modules\MSBuildHelpers\ Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll" /p:AppxBundlePlatforms="x64" /p:AppxPackageDir="C:\agent_work\4\a\AppxPackages\" /p:AppxBundle=Always /p:UapAppxPackageBuildMode=StoreUpload /p:AppxPackageSigningEnabled=true /p:PackageCertificateThumbprint="" /p:PackageCertificateKeyFile="C:\agent_work_temp\BoardPACWinApp_TemporaryKey.pfx" /p:platform="x64" /p:configuration="release" /p:VisualStudioVersion="16.0" / p:_MSDeployUserAgent="TFS_22ec7900-72ed-4ebd-b5a6-d4ba51a210dd_build_16_0"
错误:
[错误]C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VisualStudio\v16.0\AppxPackage\Microsoft.AppXPackage.Targets(1300,5):错误 MSB3816:加载程序集“C :\Windows\ServiceProfiles\NetworkService.nuget\packages\runtime.win7.system.private.uri\4.3.0\runtimes\aot\lib\netcore50\System.Private.Uri.dll”失败。System.IO.FileNotFoundException:无法加载文件或程序集“System.Private.CoreLib,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”或其依赖项之一。该系统找不到指定的文件。
[错误]C:\Windows\ServiceProfiles\NetworkService.nuget\packages\runtime.win7.system.private.uri\4.3.0\runtimes\aot\lib\netcore50\System.Private.Uri.dll(0,0) : 错误 MSB3103:Resx 文件无效。字符串引用未设置为字符串的实例。参数名称:后缀
我的应用程序的 csproj:
如果你想让我调整我的 CI 设置,请告诉我我会做并发布我遇到的错误。谢谢你。