Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sharing build artifacts between jobs in Hudson

I'm trying to set up our build process in hudson.

Job 1 will be a super fast (hopefully) continuous integration build job that will be built frequently.

Job 2, will be responsible for running a comprehensive test suite, at a regular interval or triggered manually.

Job 3 will be responsible for running analysis tools across the codebase (much like Job 2).

I tried using the "Advanced Projects Options > use custom workspace" feature so that code compiled in Job 1 can be used in Job 2 and 3. However, it seems that all build artifacts remain inside that Job 1 workspace. I'm I doing this right? Is there a better way of doing this? I guess I'm looking for something similar to a build pipeline setup...so that things can be shared and the appropriate jobs can be executed in stages.

(I also considered using 'batch tasks'...but it seems like those can't be scheduled? only triggered manually?)

Any suggestions are welcomed. Thanks!

like image 312
Jackson Ha Avatar asked May 06 '09 00:05

Jackson Ha


2 Answers

You might want to try the Copy Artifact plugin:

http://wiki.hudson-ci.org/display/HUDSON/Copy+Artifact+Plugin

Your continuous job can build the necessary artifacts, and your other two jobs can pull them in to do analysis.

like image 58
aku Avatar answered Sep 22 '22 00:09

aku


Hudson has a plugin for just this problem: http://wiki.hudson-ci.org/display/HUDSON/Clone+Workspace+SCM+Plugin (link currently broken)

The corresponding Jenkins page is here: https://wiki.jenkins-ci.org/display/JENKINS/Clone+Workspace+SCM+Plugin

like image 25
seanf Avatar answered Sep 18 '22 00:09

seanf