通过REST API和PowerShell在TeamCity中添加触发器以构建配置

通过REST API和PowerShell在TeamCity中添加触发器以构建配置,rest,powershell,automation,teamcity,build-triggers,Rest,Powershell,Automation,Teamcity,Build Triggers,我正试图通过PowerShell和TeamCity 8 REST API以自动方式向构建配置添加构建触发器 使用以下问题作为参考,似乎我试图做的是可能的: 但是,每当我尝试使用以下代码将触发器添加到构建时,我都会得到一个(405)Method Not Allowed错误: $triggerXML= "<trigger id=`"TriggerID`" type=`"buildDependencyTrigger`"> <properties&g

我正试图通过PowerShell和TeamCity 8 REST API以自动方式向构建配置添加构建触发器

使用以下问题作为参考,似乎我试图做的是可能的:

但是,每当我尝试使用以下代码将触发器添加到构建时,我都会得到一个
(405)Method Not Allowed
错误:

$triggerXML= "<trigger id=`"TriggerID`" type=`"buildDependencyTrigger`">
                  <properties>
                      <property name=`"afterSuccessfulBuildOnly`" value=`"true`"/>
                      <property name=`"dependsOn`" value=`"BuildID`"/>
                  </properties>
              </trigger>"

$webclient.UploadString('http://teamcity:8111/httpAuth/app/rest/buildTypes/BuildID', "POST", $triggerXML)
$triggerXML=”
"
$webclient.UploadString('http://teamcity:8111/httpAuth/app/rest/buildTypes/BuildID“,”POST“,$triggerXML)

有人使用PowerShell成功地实现了这一点吗?

不是那个API,但我有自动化TeamCity的脚本

以下是我使用的代码片段:

$TeamCityHostAndPort = "myteamcityserver:8111"

# authenticate with NTLM
$LoginUrl = "http://$TeamCityHostAndPort/ntlmLogin.html"
Invoke-WebRequest -Uri $LoginUrl -UseDefaultCredentials -SessionVariable TeamCitySession | Out-Null

#start backup
$StartBackupUrl = "http://$TeamCityHostAndPort/httpAuth/app/rest/server/backup?includeConfigs=true&includeDatabase=true&includeBuildLogs=true&fileName=TeamCity_Backup_"
$filename = Invoke-RestMethod -WebSession $TeamCitySession -Method Post -Uri $StartBackupUrl
请注意第一个身份验证调用(我禁用了内置用户并坚持使用Windows auth)和传递给后续调用的身份验证会话。
Invoke RestMethod
是Powershell v4。

该代码段看起来像是自动创建TeamCity的备份。我正在寻找一个构建触发器分配的自动化,我有,同样的结果。如果它没有实现,我不会感到惊讶,这只是因为我能够找到一个人(在我的问题中提到)声称用另一种语言做了我想做的事情。如果它是用C#完成的,那么它也可以在PowerShell中完成。在获得正确的身份验证之前,我绞尽脑汁——这就是为什么即使代码是不同的API,我也会将其放入代码中。也就是说,我会耐心地对TeamCitySharp行为进行逆向工程,在