Кто-нибудь знает, как я могу создать или удалить конфигурацию сборки в TeamCity, используя только Powershell? Я пытаюсь автоматизировать весь процесс установки проекта; посмотрели на REST API, но, похоже, в основном доступны только для чтения.Создание конфигурации сборки в TeamCity с использованием Powershell
2
A
ответ
0
Вы посмотрели psake? Это инструмент автоматизации сборки, и кто-то интегрировал некоторую поддержку TeamCity (в teamcity.ps1).
2
Нет возможности автоматизировать создание конфигурации сборки. Смотреть/голосовать за соответствующий запрос функции JetBrains tracker: http://youtrack.jetbrains.net/issue/TW-7999.
1
Teamcity 8.x REST предоставляет возможность создания конфигурации сборки. Вы можете использовать что-то вроде ниже для использования в REST API.
function Create-Build{
param
(
[Parameter(Mandatory=$true)]
[string]
$buildName,
[Parameter(Mandatory=$true)]
[string]
$parentProjectId
)
# Create Teamcity URL
$url = "http://teamcity:8111/httpAuth/app/rest/projects/$parentProjectId/buildTypes"
$webRequest = [System.Net.WebRequest]::Create($url)
$webRequest.ContentType = "text/plain"
$PostStr = [System.Text.Encoding]::UTF8.GetBytes($buildName)
$webrequest.ContentLength = $PostStr.Length
$webRequest.Method = "POST"
$webRequest.Accept = "*/*"
$webRequest.Credentials = new-object system.net.networkcredential("teamcityuser", "password")
$requestStream = $webRequest.GetRequestStream()
$requestStream.Write($PostStr, 0,$PostStr.length)
$requestStream.Close()
[System.Net.WebResponse] $resp = $webRequest.GetResponse();
$rs = $resp.GetResponseStream();
[System.IO.StreamReader] $sr = New-Object System.IO.StreamReader -argumentList $rs;
[string] $results = $sr.ReadToEnd();
$results
}
# Call ps function to create build configuration
Create-Build -buildName "CopiedBuild" -parentProjectId "TestProject"
Я посмотрел на psake. К сожалению, его интеграция с TeamCity - это только чтение или обновление существующих типов. Я ищу, чтобы создать новый тип сборки (конфигурации) каким-то образом без использования пользовательского интерфейса TeamCity. – Rolstad