Изменить BuildNumber с помощью Powershell в Teamcity - PullRequest
0 голосов
/ 02 ноября 2018

Я использую скрипт Powershell для изменения BuildNumber в Teamcity:

$projectFile = Resolve-Path ".\\source\\project\\project.csproj"
$info = (Get-Content $projectFile)
$matches = ([regex]'<Version>(\S*)</\Version>).Matches($info)
$newBuildNumber = $matches[0].Groups[1].Value
Write-Host "##teamcity[buildNumber '${newBuildNumber}']"

Основная идея - использовать номер версии в файле проекта ядра C # net в качестве номера сборки. Когда этот скрипт запущен, я получил следующее сообщение об ошибке.

   Unexpected token 'newBuildNumber' in expression or statement.
   [09:11:44][Step 3/8] At 
   C:\TeamCity\buildAgent\temp\buildTmp\powershell4859822141650403163.ps1:5 cha
   [09:11:44][Step 3/8] r:54
   [09:11:44][Step 3/8] + Write-Host "
   [09:11:44][Step 3/8] "
   [09:11:44][Step 3/8]     + CategoryInfo          : ParserError: 
   (newBuildNumber:String) [], ParentC 
   [09:11:44][Step 3/8]    ontainsErrorRecordException
   [09:11:44][Step 3/8]     + FullyQualifiedErrorId : UnexpectedToken

1 Ответ

0 голосов
/ 02 ноября 2018

Строка регулярного выражения не имеет закрывающей кавычки, а экранированный \V вызывает ошибку.

Изменить на

$matches = ([regex]'<Version>(\S*)</Version>').Matches($info)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...