1

我正在尝试使用 REST API 为 TeamCity 8.0 中的项目创建构建配置。但是,我不想创建新配置,而是想从现有的构建配置模板中复制。基本上,我希望在 TeamCity Web 界面中出现选项之前实现:

TeamCity 构建配置 - 从模板创建

TeamCity REST API 文档并不详尽,也没有提供有关如何通过 REST API 使用现有模板创建构建配置的任何详细信息。关于如何使用 REST API 完成此操作的任何输入?

4

1 回答 1

1

我相信 TC 8.x 和 TC 9.x REST API 非常相似。此示例是为 TC 9.x 编写的。

我不知道你是否已经解决了这个问题,但是(为了记录)你必须按照“使用所有设置创建新的构建配置”所说的去做。基本上,您必须创建一个格式如下的 XML:

<buildType id="YourBuildID" name="YourBuildName" projectId="TheProjectIDThatOwnsThis" >
    <project id="TheProjectIDThatOwnsThis" name="TheProjectName" parentProjectId="TheProjectParent" href="TheProjectHREFValue" webUrl="TheWebURLOfTheProejct"
    />
    <template id="TemplateID" name="TemplateName" templateFlag="true" projectName="ProjectThatHasTheTemplate" projectId="ProjectThatHasTheTemplate" href="TemplateHRef" />
    <vcs-root-entries>
        <!--vcs-root-entry elements are not necessary-->
    </vcs-root-entries>
    <settings>          
    </settings>
    <parameters> 
    </parameters>
    <steps>
    </steps>
    <features>
    </features>
    <triggers>
    </triggers>
    <snapshot-dependencies/>
    <artifact-dependencies/>
    <agent-requirements/>
    <builds href="BuildConfigurationHREF" />
</buildType>

并对此 URL 进行 POST:http://TCServerName:Port/httpAuth/app/rest/buildTypes

那是 TeamCity 所期望的 XML,因此您将使用哪种编程语言来创建它取决于您。我已经使用 C#/LINQ to XML 完成了这项工作,并且工作得很好。

希望这可以帮助。

于 2015-09-17T18:07:50.793 回答