[
https://issues.jenkins-ci.org/browse/JENKINS-13740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Frank Merrow updated JENKINS-13740:
-----------------------------------
Description:
At a recent Cloud Bees class KK could not answer this question and suggested
creating a Ticket . . .
So the issue is this, we have multiple Jenkins Instances (8 so far and
growing), but with many common elements . . . in particular, many common pieces
of Groovy. For this question, the "type" of Groovy is not relevant; I don't
care if it is the post build plug in, Scriptler or Jenkins built in script
console . . . none of them seem to work the way I would expect.
As it stands now, what we have are all these custom Groovy scripts sprinkled
among all our systems . . . We have to carry these peices of Groovy around by
hand from Jenkins to Jenkins . . . an update on one system requires an update
on 7 others . . . annoying and error prone. What we would like to do is to
have a Groovy class script repository and instead of carrying the custom groovy
from system to system, we like to make all the Groovy scripts look like this
instead:
obj = new DoSomethingClass()
obj.DoIt()
Now if something needs to be changed, instead of fixed 8 to 12 Jenkins
instances, I fix the DOSomethingClass.groovy in Perforce and sync the update on
each system . . . 100% accurate and doable via automation.
This works easily in Groovy itself using either Groovy command line or Groovy
Console. However, as soon as I tried to get at that class from any
Jenkins/Groovy . . . I cannot get it to find that class. I've tried adjusting
CLASSPASS and/or using the -cp switch on the JVM . . . either seem to help . .
. Jenkins/Groovy just won't seems to search for things or at least won't search
for them at a place I tell it to . . .
If you have a way to make this happen . . . I'd love to hear it . . . even if I
could not add a new location to the places Groovy searches for Classes . . .
even knowing there was "someplace" Jenkins would search would be a big help . .
. like $JENKINS_HOME/Groovy or someplace I could put classes so I can update
all instances without having to go to the GUI on each Jenkins instance to make
the update.
Frank
was:
At a recently Cloud Bees class KK could not answer this question and suggested
creating a Ticket . . .
So the issue is this, we have multiple Jenkins Instances (8 so far and
growing), but with many common elements . . . in particular, many common pieces
of Groovy. For this question, the "type" of Groovy is not relevant; I don't
care if it is the post build plug in, Scriptler or Jenkins built in script
console . . . none of them seem to work the way I would expect.
As it stands now, what we have are all these custom Groovy scripts sprinkled
among all our systems . . . We have to carry these peices of Groovy around by
hand from Jenkins to Jenkins . . . an update on one system requires an update
on 7 others . . . annoying and error prone. What we would like to do is to
have a Groovy class script repository and instead of carrying the custom groovy
from system to system, we like to make all the Groovy scripts look like this
instead:
obj = new DoSomethingClass()
obj.DoIt()
Now if something needs to be changed, instead of fixed 8 to 12 Jenkins
instances, I fix the DOSomethingClass.groovy in Perforce and sync the update on
each system . . . 100% accurate and doable via automation.
This works easily in Groovy itself using either Groovy command line or Groovy
Console. However, as soon as I tried to get at that class from any
Jenkins/Groovy . . . I cannot get it to find that class. I've tried adjusting
CLASSPASS and/or using the -cp switch on the JVM . . . either seem to help . .
. Jenkins/Groovy just won't seems to search for things or at least won't search
for them at a place I tell it to . . .
If you have a way to make this happen . . . I'd love to hear it . . . even if I
could not add a new location to the places Groovy searches for Classes . . .
even knowing there was "someplace" Jenkins would search would be a big help . .
. like $JENKINS_HOME/Groovy or someplace I could put classes so I can update
all instances without having to go to the GUI on each Jenkins instance to make
the update.
Frank
> How do we get Groovy to honor some sort of "class path" for finding Groovy
> classes
> ----------------------------------------------------------------------------------
>
> Key: JENKINS-13740
> URL: https://issues.jenkins-ci.org/browse/JENKINS-13740
> Project: Jenkins
> Issue Type: Improvement
> Components: groovy
> Affects Versions: current
> Environment: Multiple Jenkins under Windows
> Reporter: Frank Merrow
> Assignee: vjuranek
>
> At a recent Cloud Bees class KK could not answer this question and suggested
> creating a Ticket . . .
> So the issue is this, we have multiple Jenkins Instances (8 so far and
> growing), but with many common elements . . . in particular, many common
> pieces of Groovy. For this question, the "type" of Groovy is not relevant; I
> don't care if it is the post build plug in, Scriptler or Jenkins built in
> script console . . . none of them seem to work the way I would expect.
> As it stands now, what we have are all these custom Groovy scripts sprinkled
> among all our systems . . . We have to carry these peices of Groovy around by
> hand from Jenkins to Jenkins . . . an update on one system requires an update
> on 7 others . . . annoying and error prone. What we would like to do is to
> have a Groovy class script repository and instead of carrying the custom
> groovy from system to system, we like to make all the Groovy scripts look
> like this instead:
> obj = new DoSomethingClass()
> obj.DoIt()
> Now if something needs to be changed, instead of fixed 8 to 12 Jenkins
> instances, I fix the DOSomethingClass.groovy in Perforce and sync the update
> on each system . . . 100% accurate and doable via automation.
> This works easily in Groovy itself using either Groovy command line or Groovy
> Console. However, as soon as I tried to get at that class from any
> Jenkins/Groovy . . . I cannot get it to find that class. I've tried
> adjusting CLASSPASS and/or using the -cp switch on the JVM . . . either seem
> to help . . . Jenkins/Groovy just won't seems to search for things or at
> least won't search for them at a place I tell it to . . .
> If you have a way to make this happen . . . I'd love to hear it . . . even if
> I could not add a new location to the places Groovy searches for Classes . .
> . even knowing there was "someplace" Jenkins would search would be a big help
> . . . like $JENKINS_HOME/Groovy or someplace I could put classes so I can
> update all instances without having to go to the GUI on each Jenkins instance
> to make the update.
> Frank
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira