mirror of
https://github.com/jenkinsci/jenkins.git
synced 2026-11-14 04:22:16 +00:00
making progress on file system snapshot support
git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@12491 71c3de6d-444a-0410-be80-ed276b4c234a
This commit is contained in:
1 parent
a1735c14cd
commit
d76fad55f8
7 files changed
+219
-12
No files matched your search
@@ -9,6 +9,7 @@ import hudson.model.Job;
|
||||
import hudson.model.TaskListener;
|
||||
import hudson.model.listeners.RunListener;
|
||||
import hudson.util.DescriptorList;
|
||||
import hudson.scm.SCM;
|
||||
|
||||
import java.io.BufferedOutputStream;
|
||||
import java.io.File;
|
||||
@@ -67,8 +68,22 @@ import java.io.OutputStream;
|
||||
* the workspace snapshot of the upstream? Yes, by using {@link RunListener}.
|
||||
* So this becomes like a special SCM type.
|
||||
*
|
||||
* To support promoted builds, we need an abstraction for permalinks.
|
||||
* This is also needed for other UI.
|
||||
* <h2>Design take 2</h2>
|
||||
* <p>
|
||||
* The first piece of this is the custom {@link SCM}, which inherits the
|
||||
* workspace of another job. When this executes, it picks up
|
||||
* {@link WorkspaceSnapshot} from the other job and use it to obtain the workspace.
|
||||
*
|
||||
* <p>
|
||||
* Then there's {@link RunListener}, which creates a snapshot if
|
||||
* someone else is interested in using a snapshot later.
|
||||
*
|
||||
* <h3>TODOs</h3>
|
||||
* <ul>
|
||||
* <li>
|
||||
* Garbage collection of workspace snapshots.
|
||||
*
|
||||
* </ul>
|
||||
*
|
||||
* @author Kohsuke Kawaguchi
|
||||
* @since 1.235
|
||||
|
||||
Reference in new issue
Block a user