Согласно официальной документации на https://docs.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops-2019 Azure DevOps Server 2019 on-prem поддерживает все.
Пока я не могу заставить его работать с простым шаблоном yaml с параметры.
Вот мой шаблон yaml (с именем prepare-sonar-qube.yml):
parameters:
- name: projectKey
type: string
- name: projectName
type: string
default: ${{ parameters.projectKey }}
- name: useDotCover
type: boolean
default: false
steps:
- template: install-java.yml
- task: SonarQubePrepare@4
displayName: 'Prepare SQ Analysis'
inputs:
SonarQube: 'SonarQube'
scannerMode: 'MSBuild'
projectKey: parameters.projectKey
projectName: parameters.projectName
${{ if parameters.useDotCover }}:
extraProperties: |
sonar.cs.dotcover.reportsPaths=$(Common.TestResultsDirectory)\coverage\*.CoverageResult.html
sonar.inclusions=**/*.cs
${{ if !parameters.useDotCover }}:
extraProperties: |
sonar.cs.opencover.reportsPaths=$(Common.TestResultsDirectory)\coverage\*.CoverageResult.xml
sonar.inclusions=**/*.cs
Вот azure -pipelines.yml:
trigger:
- master
name: 1.0.$(Date:yy)$(DayOfYear)$(Rev:.r)
jobs:
- job: Build
pool:
demands: DotNetFramework
workspace:
clean: all
variables:
- template: variables.yml
steps:
- template: prepare-sonar-qube.yml
parameters:
projectKey: logs2db
...
При запуске сборки я получаю следующее сообщение об ошибке:
/prepare-sonar-qube.yml (Line: 2, Col: 1): A sequence was not expected
Так что я делаю не так? (Помимо того, что он был лояльным клиентом TFS, который застрял с устаревшим Azure DevOps Server 2019, который на данный момент не выглядит go нигде в сравнении с постоянно развивающимися Azure DevOps Services) *