Хорошо, сначала я понимаю, что «артефакты» - это то, что нужно использовать при развертывании готовых к использованию приложений, а не только двоичных файлов.
Пропустили развертывание артефактов и просто добавили новый этап сборки 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%"