I've been working on this for two days and have googled this to death. 
 There are just too many unknowns for me and I need some help.

The original problem I'm having is that I want to deploy two war files from 
a multi-module maven project, and Jenkins is only giving me the option to 
deploy one--I'm deploying to two different tomcat containers.  So I decided 
to trigger two different deployment jobs to get it done instead.  The 
problem became: what is the actual name of the war file, including the 
version?

This isn't easily available.  I found a post on how to acquire the name 
from the generated pom, which wasn't perfectly in line with my set up, but 
useful.  The concept requires that I call a post-build groovy script, that 
must be run as a system script so that I can acquire variables in context 
of the build environment.  So I do this, but the script requires that I add 
to the classpath some third-party jars.  

So long story short, the script will run fine as I'm testing it locally, 
but my build declares a slave node upon which this script must run.  Only 
the master node has this groovy environment set up correctly, and I need 
Jenkins to transfer my deployment to the slave.  I found 
this<http://jenkins.361315.n4.nabble.com/Installing-build-tools-on-slaves-in-clustered-Jenkins-environment-td3636863.html>thread,
 with this reply that I found interesting:

Our shop gets around this by using the "Run SSH command on slave" option to 
> start our slaves, and specifying a shell script that rsyncs a tools 
> directory from the master to the slave before starting the slave process. 
>  The master tools directory contains the JDK plus all the tools we need 
> such as Ant, Maven, Groovy and so on.  This has the added advantage that we 
> can push tool updates out to all the slaves by just updating the master 
> directory and restarting the slaves.


This I think would solve my issue, but I am a rookie Linux user and do not 
know much about his subject.  Some, but not enough.  I would love it if 
someone could explain to me how to get my groovy installation to the slave 
node.  I know there is an option to install automatically, which I've 
attempted, but I don't see anything.  Where does it go if it works?  My 
build slave node home appears to be at 
/Users/Shared/Jenkins/Home/jenkins-slaves/build-slave (build-slave being 
the name I've assigned it).  I'm good right now with simply copying my 
groovy installation onto the slave node, but where should it go?  

I tried tarring the installation, complete with my modifications to 
groovy-starter.conf, which adds the third-party libraries needed by the new 
script.  In the groovy configuration I've configured groovy to install 
automatically, and I chose the extract *.tar.gz option and specified with a 
file-style url the tar file.  It's lame, but that's what I've tried.

Groovy runs during the build, but I'm getting class not found errors 
because my third party jars are not being found.

I hope someone can point me in the right direction.

Thanks,

Scott 

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to