2012-08-02 21 views
5

È possibile creare una nuova configurazione di build per un progetto esistente tramite REST api (metodo POST) in Teamcity?
Se sì, come creare? (alcune linee guida)Creazione della configurazione di build tramite REST in Teamcity

Grazie

+0

Ehi, hai riuscito a fare questo? Se sì, potresti per favore mostrare e spiegare un esempio? – carlspring

+0

Ciao .. tutto ciò che viene dato come risposta da Arpit ha tutte le richieste di Riposo ... puoi farvi riferimento. – Jeevi

risposta

-4

Beh, si può fare riferimento a this per cominciare:

+4

Se effettivamente lo si guarda, si vedrà che non c'è modo di menzionare come creare una configurazione di build tramite l'API REST. – carlspring

2

No, non è implementato in l'API REST. Date un'occhiata a this

Non c'è modo di creare una configurazione di build. È possibile aggiungere passaggi di build e configurarli, ma non sembra affatto essere implementato nell'API. Stavo davvero litigando con me stesso ieri sera. Se trovi un modo per farlo, faccelo sapere.

Inoltre, si potrebbe dare un'occhiata a questi notes che ho messo insieme riguardo all'API REST Teamcity. (Non che stiano rispondendo a questa domanda, ma alcuni potrebbero essere abbastanza utili).

3

È ora possibile in 8.x REST. Puoi fare qualcosa come:

POST plain text (name) to http://teamcity:8111/httpAuth/app/rest/projects/<projectLocator>/buildTypes 

Sopra è copiato da 8.x REST. Controlla 8.x REST per maggiori dettagli.

4

È sicuramente possibile su 8.x, non è necessario preoccuparsi delle versioni precedenti.

Ecco davvero un semplice frammento di pitone che copiare una configurazione di generazione esistente in un determinato progetto utilizzando come guida http://confluence.jetbrains.com/display/TCD8/REST+API#RESTAPI-BuildConfigurationAndTemplateSettings.

import requests 

xml = """<newBuildTypeDescription name='NewBuildConfigName' 
      sourceBuildTypeLocator='ExistingBuildConfigNameThatYouWantToCopy' 
      copyAllAssociatedSettings='true' shareVCSRoots='false'/> 
     """ 
headers = {'Content-Type': 'application/xml'} # set what your server accepts 

print requests.post('http://YOURTEAMCITYWEBADDRESS:YOURTEAMCITYPORT/httpAuth/app/rest/projects/id:PROJECTIDWHERENEWBUILDCONFIGSHOULDBECREATED/buildTypes', data=xml, headers=headers, auth=('TeamCityUserName','TeamCityPassword')).text 
+0

Funziona nella versione 8 e 9. L'ho provato – rixmath

Problemi correlati