the current plugin (founded in about 2014) is only capable of "ZIP" formatted archives.

      in the meantime a lot more advanced options have been created.

      these are namely: bz, bz2, gzip, 7z/xz, zipx - and others.

      i personally feel like ZIP as it is used now does not even allow symlinks - so e.g. when storing library folders this is likely to store groups of large but many-fold identical files.
      other than that i am not that sure if ZIP preserves (or is capable of preserving) all unix provided file system attributes correctly.

          [JENKINS-59296] support more modern archive formats

          The ZIP format allows symlinks; see "UNIX Extra Field (0x000d)" in https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT. If you need to store fancier file system attributes, I think it would be best to create the archive file on an agent and store it as a single artifact; that way, you'd be able to copy it out of Jenkins with no risk of losing the attributes.

          Kalle Niemitalo added a comment - The ZIP format allows symlinks; see "UNIX Extra Field (0x000d)" in https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT . If you need to store fancier file system attributes, I think it would be best to create the archive file on an agent and store it as a single artifact; that way, you'd be able to copy it out of Jenkins with no risk of losing the attributes.

          the other aspect would be archive size.

          Alexander Stohr added a comment - the other aspect would be archive size.

          I think it is important to be able to download an individual artifact from Jenkins without requiring the Jenkins controller to decompress any other artifacts. The zip format allows that but tar.gz or tar.bz2 would not. How about the other formats that you listed?

          For deduplication of identical files, I imagine the plugin could still use the zip file format if it stored content hashes as file names and maintained a separate manifest that lists the original names. However, this would make it more difficult to bypass the Jenkins controller and examine the archive.zip directly from the file system. In that respect, an archive format that natively deduplicates files would be better.

          The main difficulty in adding such features to the plugin seems to be that somebody would have to do the work.

          Kalle Niemitalo added a comment - I think it is important to be able to download an individual artifact from Jenkins without requiring the Jenkins controller to decompress any other artifacts. The zip format allows that but tar.gz or tar.bz2 would not. How about the other formats that you listed? For deduplication of identical files, I imagine the plugin could still use the zip file format if it stored content hashes as file names and maintained a separate manifest that lists the original names. However, this would make it more difficult to bypass the Jenkins controller and examine the archive.zip directly from the file system. In that respect, an archive format that natively deduplicates files would be better. The main difficulty in adding such features to the plugin seems to be that somebody would have to do the work.

            olivergondza Oliver Gondža
            alexanderstohr Alexander Stohr
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: