-
New Feature
-
Resolution: Fixed
-
Major
-
None
Currently artifact archiving follows a fixed model: artifacts are defined in ArtifactArchiver (or MavenArtifactArchiver) configuration; they are copied from slave to master using FilePath.copyRecursiveTo; they are stored in ${Run.rootDir}/archive; and they are served by browsing this directory in master.
This system has obvious scalability limitations: channel transfer is not particularly efficient; and storing enormous files in the builds directory can cause disk overruns.
The CloudBees Fast Archiver plugin tries to address the transfer speed issue by using a better algorithm. This helps, but the implementation (replacing the ArtifactArchiver build step) is very awkward, and cannot be made to work properly with Maven projects, fingerprints, etc.
Some installations may anyway not need to copy files at all. The master and slave might share a common network filesystem, or might have a way of efficiently transferring file references (e.g. ZFS send).
Finally, there should be the option to store artifacts in a better way: on a big slow drive, in a compressed archive, etc.
To handle all these requirements we need an extension point that encompasses both transfer and storage of artifacts for each build.
- depends on
-
JENKINS-19752 Download build artifacts as zip generates a corrupted file
-
- Resolved
-
-
JENKINS-20663 file name encoding broken in zip archives
-
- Resolved
-
-
JENKINS-19947 Missing base directory in ZIP from .../artifact/dir/subdir/*zip*/subdir.zip
-
- Resolved
-
- is blocking
-
JENKINS-6229 Compress archived artifacts
-
- Resolved
-
- is related to
-
JENKINS-7813 Archiving artifacts very slow
-
- Resolved
-
-
JENKINS-10502 Add an option to make archiving the artifacts non-fatal if they don't exist
-
- Resolved
-
-
JENKINS-21958 ArtifactManager introduces regression with publishing symbolic links.
-
- Resolved
-
- relates to
-
JENKINS-49635 Permit VirtualFile to serve external file contents
-
- Resolved
-
Code changed in jenkins
User: Jesse Glick
Path:
core/src/main/java/hudson/model/Run.java
core/src/main/java/hudson/tasks/ArtifactArchiver.java
core/src/main/java/jenkins/model/ArtifactManager.java
core/src/main/java/jenkins/model/StandardArtifactManager.java
maven-plugin/src/main/java/hudson/maven/MavenBuild.java
maven-plugin/src/main/java/hudson/maven/MavenBuildProxy.java
maven-plugin/src/main/java/hudson/maven/reporters/MavenArtifact.java
maven-plugin/src/main/java/hudson/maven/reporters/MavenArtifactArchiver.java
maven-plugin/src/main/java/hudson/maven/reporters/MavenArtifactRecord.java
http://jenkins-ci.org/commit/jenkins/e1eea67bb2fa1a356492e91313d84a523f441b34
Log:
JENKINS-17236Initial version of ArtifactManager (no Maven support yet).–
You received this message because you are subscribed to the Google Groups "Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-commits+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.