2011-03-17 7 views

cevap

8

Copy Artifact eklentisi bunu yapabiliyor gibi görünüyor.

başka bir yaklaşım kullanabilirsiniz işin yapılandırma sayfasında yapılandırma araçları "Çevre İnşa" olabilir

http://server/jobs/job1/[build #]/artifacts/ 
+0

Basit HTTP'yi, işin indirme URL'sine karşı, yapay bir işi alt işlere çekmek için yoğun bir şekilde kullanıyoruz. –

+0

Kopya artifact eklentisi ile ilgili sorun, başka bir yere ihtiyaç duyacağınız şeyleri bilmeniz gerektiğidir. Bunu unutup tüm yapıtları varsayılan olarak kopyaladığımızda, yapı başına yaklaşık 40-50 MB olan bu, disk kullanımını çift hızda artıracaktır. Kurulumla ilgili kimlik doğrulaması gerektirdiğinden, URL yoluyla almak mümkün değildir. –

+0

@Konstantin Bu URL'lerin kimlik doğrulama gerektirmediğini tahmin ediyorum, değil mi? –

1

aracılığıyla objeyi almak için olabilir. M2 Ekstra Oluşturma Adımlarını Yapılandır kutusunu işaretleyin ve istediğiniz nesneyi bir şeyleri işleyen bir Yürütme Kabuğu ekleyin.

0

Biz benzer bir ihtiyacı var ve harika aşağıdaki sistemini kullanın: Bu hepsi belirli bir klasörde depolanır beri kullandığımız ArtifactJobName dan onun içinde yapay adla önceden VARIABLE_NAME yaratır

import hudson.model.* 

def currentBuild = Thread.currentThread().executable; 
currentBuild.addAction(new ParametersAction(new StringParameterValue('LAST_BUILD_STATUS', 'FAILURE'))); 
def buildJob = Hudson.instance.getJob("ArtifactJobName"); 
def artifacts = buildJob.getLastBuild().getArtifacts(); 
if (buildJob.getLastBuild().getResult() == Result.SUCCESS && artifacts != null && artifacts.size() > 0) { 
    currentBuild.addAction(new ParametersAction(new StringParameterValue('VARIABLE_NAME', artifacts[0].getFileName()))); 
    currentBuild.addAction(new ParametersAction(new StringParameterValue('LAST_BUILD_STATUS', 'SUCCESS'))); 
} 

. Birden fazla eseriniz varsa ne olacağından emin değilim, ama onları artifakts dizisinden alabiliyorsunuz.

Başka bir ArtifactJobName şu anda oluşturuluyorsa ve null ile dizi alıyorsanız, sorunu önlemek için getLastSuccessfulBuild kullanabilirsiniz.