Способ предоставить TeamCity продукты для сборки в Perforce? - PullRequest
0 голосов
/ 27 марта 2020

Сборка работает нормально, но последнее, что озадачивает меня ... как передать продукты для сборки обратно в репозиторий P4? Не похоже, что для этого нет предустановленных настроек или шагов / функций сборки?

Мне очень странно, что мне придется написать собственный сценарий для этого ... Это то, что нужно? Как мне сделать мое предопределенное рабочее пространство P4 для отправки двоичных файлов?

1 Ответ

0 голосов
/ 03 апреля 2020

Хорошо, сначала я понимаю, что «артефакты» - это то, что нужно использовать при развертывании готовых к использованию приложений, а не только двоичных файлов.

Пропустили развертывание артефактов и просто добавили новый этап сборки PowerShell. Это еще не идеально, хранить пароль в виде простого текста, но это в основном работает. Не удалось заставить работать, пропуская P4 "вход в систему" в каждой команде. P4 отвечал сообщением «Пароль был неверным или неустановленным».

$user ="MyUser"
$workspace ="MyWorkspace"
$pswd ="MyPassword"

# update workspace root - use human-friendly workspace name instead of TeamCity automatically generated workspace
$p4Client = p4 -c $workspace -u $user -P $pswd -p localhost:1666 client -o $workspace
$p4Client = $p4Client -replace '^Root:.+$', "Root: %teamcity.build.checkoutDir%"
$p4Client | p4 -c $workspace -u $user -P $pswd -p localhost:1666 client -i

# submit build products
p4 -c $workspace -u $user -P $pswd -p localhost:1666 reconcile _a -e -c default "//..."
p4 -c $workspace -u $user -P $pswd -p localhost:1666 submit -d "build %build.number%" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...