Параметр Дженкинса Релиз против Постановки - PullRequest
0 голосов
/ 17 января 2019

Я создал в Дженкинсе работу по фристайлу, которую только что создал (последняя версия).

Я добавил параметры к нему. Одним из них является выбор параметров для ReleaseType с параметрами Staging и Release.

Одним из этапов сборки является выполнение удаленной команды на сервере при загрузке сайта. Он использует шаг сборки пакетной команды «Выполнение Windows».

Вот командная строка (с общими элементами):

sexec myuser@mysite.com -pw=mypassword -cmd="PowerShell -Command ""C:\batch\bvCopyFast.ps1 C:\inetpub\mysite${ReleaseType}\siteLoad C:\inetpub\mysite${ReleaseType}\site""

В основном я выполняю команду powershell, которая использует Robocopy для копирования файлов из папки загрузки в фактическую папку выпуска для сайта.

Как видите, мне нужно заменить $ {ReleaseType} на фактическое значение. Проблема в том, что когда он выполняется, он не выполняет подстановку. Я просто использую это буквальное значение в команде, и это не работает.

1 Ответ

0 голосов
/ 17 января 2019

Если вы используете параметр -Command, это означает, что вы собираетесь писать необработанный код PowerShell между кавычками, которые следуют (позвольте вам вызывать скрипт как есть).

PowerShell -Command "Get-Date; pause;"

Для вызова файла скрипта PowerShell вы должны использовать:

PowerShell -File "Your-Script.ps1 -Parameter1 Argument1 -Parameter2 Argument2"

https://docs.microsoft.com/en-us/powershell/scripting/components/console/powershell.exe-command-line-help?view=powershell-6

Я написал бы сценарий PowerShell, который принял бы ваш корневой путь и releaseType в качестве аргументов и выполнил бы это.

Param($rootPath,$releaseType)
{
   robocopy "$($rootPath)\$($releaseType)\siteLoad" "$($rootPath)\$($releaseType)\site"  
}

Я никогда не использовал Jenkins, поэтому я надеюсь, что это сработает так, как я ожидаю!

sexec myuser@mysite.com -pw=mypassword -cmd=""PowerShell -File 'C:\batch\newScript.ps1' -RootPath 'c:\inetpub\mysite' -ReleaseType {ReleaseType}""
...