2011-01-20 15 views

cevap

27

URL, tamamlanma yüzdesi dahil olmak üzere, ne istediğinizi döndürür. http://teamcityserver/httpAuth/app/rest/builds?locator=running:true

<builds count="1"> 
    <build id="10" number="8" running="true" percentageComplete="24" status="SUCCESS" buildTypeId="bt3" startDate="20110714T210916+1200" href="/httpAuth/app/rest/builds/id:10" webUrl="http://phillipn02:29000/viewLog.html?buildId=10&buildTypeId=bt3"/> 
</builds> 

Kaynak: http://devnet.jetbrains.net/message/5291132#5291132.REST API documentation adresindeki ilgili satır "http: // teamcity: 8111/httpAuth/app/rest/builds /? Locator = -" build locator "tarafından oluşturulmasını sağlayan". "Kullanım" bölümünde.

Bu, TeamCity 6.5 sürümüyle çalışır; Ben önceki sürümleri üzerinde denemedim, ama sürüme geri çalışacaktır şüpheli 5.

+3

Buna cevap vermek için zaman ayırdığınız için teşekkür ederiz. Bu benim için Google'da ilk sonuç olarak geldi ve sorgumu yanıtladı. Harikasın. –

+2

Yukarıda, yalnızca "defaultBranch" (TeamCity 9.x) kullanan yapıları geri dönecektir. Bu konumlandırıcı tüm çalışan sürümleri döndürür: 'locator = running: true, branch: default: any' – C0D3LIC1OU5

4

"koşma: doğru/yanlış/herhangi bir" inşa bulucu için inşa boyutlarından biri olarak. (Düzeltme: TeamCity 6.0 eklenmiştir) TeamCity REST API belgeleri size URL oluşturabilir yollardan bazıları bazı örnekler verecek

http://confluence.jetbrains.net/display/TW/REST+API+Plugin

. Bu sayfadaki Oluşturucu Bulucu bölümü, sonuçlarınızı hassaslaştırmak için sahip olduğunuz farklı seçenekleri listeler (bunlardan biri çalışıyor). Ancak, REST API'sini kullanarak çalışan/geçen süre boyunca çalışan hakkında bilgi almanın bir yolunu bilmiyorum. Bunun mümkün olup olmadığından emin değilim. Bunu yapmanın bir yolunu bulsaydın, nasıl okumayı çok isterdim!

İyi şanslar!

+1

Hmm. Koşmayı kullanmayı denedim: true, ancak içerdiğim zamanki gibi aynı listeyi geri getiriyor. Biraz daha fazla kazmak, REST API'sinin sadece temelde statik veya tarihi verilerle uğraştığını ve şu andaki çalışan yapıları gibi mevcut durumla ilgilenmediğini görüyor - hiç bir şey göremiyor gibi görünüyor. Belki de TC'nin daha sonraki bir sürümünde desteklenir (5.1.5 üzerinde çalışıyorum) – citizenmatt

+0

Aslında, REST API'sini ve /win32/userStatus.html'yi karıştırmak en iyisi olabilir - /ajax.html?getRunningBuilds=1 kullanır ve /eventTracker.html. Oh, güzel, kolay bir arayüz için ümit etmiştim ... – citizenmatt

+0

Bu, koşu yapı boyutuyla ilgili çok ilginç, Matt. Daha önce hiç koşmaya gerek duymadım: Doğru önce; REST API'sı ile başka şeyler yaparken sadece biraz zihinsel bir not tuttum. Biraz oynadıktan sonra, benim için de uygun yapıları filtrelemenin mümkün olmadığını fark ettim. Geçmiş verileri referans alarak REST'e baktığınızda, amaçlanan kullanımın karşılığını karıştırdınız mı: doğru mu? Ne yazık ki, REST API'sı ile karıştırmaya ihtiyaç duyduğunuzda haklısınız. – brandogs

0

Küçük bir kazma işlemi yaptım ve a post on JetBrain's site çalışmayı desteklediğini belirttim: true aslında TC6 için eklenmiştir. TeamCity 5.X REST documentation sadece TC5'te nelerin desteklendiğini ve TC6'da yeni olanı belirtmeyen farklı bir sayfaya bağlanır.

DÜZENLEME: Hey Matt, REST documentation specific to TC 5.X hakkında bir soru sordum. Kullandığım TeamCity sürümü için REST ile neler yapabileceğimi tam olarak bilmek çok yararlı olur ve sizi de ilgilendireceğini düşündüm!

0

Bir varyant kullanımını değil api var -

[http: //teamcity/ajax.html getRunningBuilds = 1]

Bu yüzden iyi bir değişken değil, ama benim için çok iyi!

0

Ben senin soru fazla beş yaşında olduğunun farkındayım, ancak şu anda çalışmakta olan kurar olduğunu öğrenmek için

istediğini ve nasıl (tahmini süre vs geçen süre)

farkla aracılığıyla

accepted answer'da önerilen yöntem, yalnızca percentageComplete özniteliğini verir; bu, API'ye başka bir çağrı yapmak zorunda kalmadan kullanışsızdır.


O .: ör {buildFields}builds nesnenin özellikleridir

serverUrl/httpAuth/app/rest/builds/?locator=running:true&fields=count,build({buildFields}) 

url fields request parameter sağlayarak elde edilebilir. Bunun için kullanıyorum:

id,buildTypeId,number,status,branchName,startDate,queuedDate,href,running-info 

tam url sonra tam size yüzdesini vermek ve geçen edecek

<builds count="1"> 
    <build id="128990" buildTypeId="{build type ID}" number="256" status="SUCCESS" branchName="{branch name}" href="/httpAuth/app/rest/builds/id:128990"> 
     <running-info percentageComplete="6" elapsedSeconds="52" estimatedTotalSeconds="924" currentStageText="{status}" outdated="false" probablyHanging="false"/> 
     <queuedDate>20160421T102558+0100</queuedDate> 
     <startDate>20160421T105709+0100</startDate> 
    </build> 
</builds> 

gibi bir şey/tahmini toplam kez döndürür

serverUrl/httpAuth/app/rest/builds/?locator=running:true&fields=count,build(id,buildTypeId,number,status,branchName,startDate,queuedDate,href,running-info) 

olduğunu running-info öğesinde.

Not: TeamCity 9 kullanıyorum; alanlar, TeamCity 5.x-7.x dokümantasyonunda appears to be present parametresini talep eder, ancak çıktı aynı olmayabilir.