ОБНОВЛЕНИЕ: Вот содержимое azure_pipelines.yml:
resources:
repositories:
- repository: pf
type: git
name: CVX-DevOps/PipelineFramework
ref: refs/tags/3.6.6
trigger: none
stages:
- template: pipeline.yml@pf
parameters:
project:
- name: "SJVFieldVVAPI" # Must be unique within the list of projects
type: "msbuild" # Used with Publish/Deploy. Options: adla, dacpac, dotnet, egg, maven, msbuild, node, nuget, python, sap, ssis
path: "API" # Project Path
file: "API.csproj" # Project file
toolset: "msbuild" # Used with Build/Package. Options: adla, dotnet, maven, msbuild, node, python, sap, ssis
playbook: "api-main.yml"
sonarqube:
name: scan
scan: true
sqExclusions: ""
additionalProperties: "" #|
# sonar.branch.name=master
# sonar.branch.target=master
fortify:
fortifyApp: "GUS-SJV-SJVBU_Verificaiton_and_Validation"
fortifyVersion: "SAST-Main"
sast: true
dast: false
buildConfiguration: $(BuildConfiguration) #release, debug
buildPlatform: $(BuildPlatform) #any cpu, x86, x64
- name: "SJVFieldVVWebApp" # Must be unique within the list of projects
type: "msbuild" # Used with Publish/Deploy. Options: adla, dacpac, dotnet, egg, maven, msbuild, node, nuget, python, sap, ssis
path: "Web" # Project Path
file: "Web.csproj" # Project file
toolset: "msbuild" # Used with Build/Package. Options: adla, dotnet, maven, msbuild, node, python, sap, ssis
playbook: "webapp-main.yml"
sonarqube:
name: scan
scan: true
sqExclusions: ""
additionalProperties: "" #|
# sonar.branch.name=master
# sonar.branch.target=master
fortify:
fortifyApp: "GUS-SJV-SJVBU_Verificaiton_and_Validation"
fortifyVersion: "SAST-Main"
sast: true
dast: false
buildConfiguration: $(BuildConfiguration) #release, debug
buildPlatform: $(BuildPlatform) #any cpu, x86, x64
Я пытаюсь запустить конвейер ADO для. NET Framework 4.7 приложения, которое подверглось преобразованию конвейера V2 в V3. Я получаю следующее сообщение об ошибке, и сборка даже не пытается запустить:
__built-in-schema.yml: Maximum object depth exceeded
__built-in-schema.yml (Line: 2012, Col: 24): Expected a mapping
__built-in-schema.yml: Maximum object depth exceeded
/components/common/utils/nuget-restore.yml@pf: Maximum object depth exceeded
/components/scan/sast/fortify/toolset/msbuild.yml@pf: Maximum object depth exceeded
/components/scan/sast/fortify/fortify.yml@pf: Maximum object depth exceeded
/components/scan/sast/scan-sast.yml@pf: Maximum object depth exceeded
/pipeline-app.yml@pf: Maximum object depth exceeded
/pipeline.yml@pf: Maximum object depth exceeded
Это использует набор инструментов msbuild. У меня есть проект API и проект веб-приложения в решении, поэтому, если я удалил любой из них, а затем запустил конвейер, он проходит этот этап, но зависает от другой ошибки. (На самом деле не обязательно go подробно описывать эту ошибку, потому что это напрямую связано с тем, что я удалил другой проект).
С набором инструментов do tnet он запускается, но затем жалуется на отсутствует ссылка:
> D:\a\1\s\API\API.csproj(350,3): error MSB4019: The imported project "C:\Program Files\dotnet\sdk\3.1.101\Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files\dotnet\sdk\3.1.101\Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" is correct, and that the file exists on disk.
0 Warning(s)
Я пытался закомментировать ссылку на Microsoft.WebApplication.targets в файлах .csproj для приложения, но он просто добавляет их обратно, когда я запускаю сборку локально или через конвейер.
Я также пытался изменить пул сборки на VS 2017 и на хостинге Windows 2019 с VS2019, полагая, что цели VS будут доступны в этих пулах, но не повезло.
Я также пытался установить MSBuild.Microsoft.VisualStudio.Web.targets через NuGet, но в итоге получил те же результаты.
Что мне здесь не хватает?