Change By: Jesse Glick (21/Jan/15 9:02 PM)
Summary: Load  Script  entire script  from SCM  (wave #2)
Description: h3.  Adding classpath Allow the workflow to (visually) configure an {{SCM}}, check it out into a workspace on the Jenkins master, and load a sandboxed Groovy script  from  a defined location in that  workspace ? .
By constructing
_Perhaps_ allow the workspace to be treated as a sourcepath so libraries can be imported.

Optionally include the flow SCM in polling and/or changelog generation.

Abandoned ideas:

# Construct
 {{URL}} with an instance of {{URLStreamHandler}} we can create a URL space that can access files over {{FilePath}} . This would enable primitives like this:

{code}
node {
  git url:'my-shared-script.git'
,  credentialId: '1234-5678-deadbeefdeadbeef'
  
  addClassPath "."

  ...
}
{code}

There's some details that need to be figured out how to
 and somehow  prevent  classloader  the class loader  from continuing to use  workspace after  the workspace  after it  goes out of scope.


h3. "Add classpath from SCMSource" primitive
The idea is similar here except
# Similar but  the  custom  {{URLStreamHandler}} uses {{SCMSource}} to access files without ever checking out anything.

{code}
library type:'git', remote:'my-shared-script.git', credentialId: '1234-5678-deadbeefdeadbeef'
  
...
{code}


h3. Primitive that uses {{SCM}} to checkout stuff into the master
Instead of messing around with {{URLStreamHandler}}, just use ordinary {{SCM}} and checkout code into some hidden locations on the master and adds that local directory as classpath.

Needs to be seen if {{SCM}} checkout have any unwanted side-effect to the project or to the master.

h3. Security Considerations
In all the cases, do not allow class files, jar files to be added directly to the classpath as it'd bypass the sandbox.
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to