Hi Martin, Let me apologize for the response delay. And thanks for pinging me via a direct message. I was snowed under GSoC activities and missed the notice. If there is no response within 2 days, please do not hesitate to ping me again.
Please find my feedback below... How does the current extraction of .tar.gz/.zip files handle this issue? As > far as I know the extraction is done in hudson.tools.FilePath, but not sure > how it handles different endianness. You are right, the extraction happens in FilePath. In the Jenkins project we rely on the implementation in org.apache.commons.compress.archivers. It supports endian bits at least for unarchive operations. *2.* Does the extractor code need to find out what kind of endian, big or > little, that is being used and then extract the tool differently depending > on the endianness? Or is this handled automatically somehow? Yes and no, we rely on the library. So for the Jenkins project it's "automatic" *3.* Should I consider a different format entirely, considering that 7z > doesn't store user/group or permission bits etc? (See [3.1] below) > If yes, is RAR a better alternative perhaps? RAR has its own issues. For your case I'd recommend to stick to a particular format and to implement it. Not every tool needs permission bits. The advantage is that there is a big number of Windows tools being delivered by RAR. Hence such installer provides much more added alue than 7zip. I would also like to mention that Jenkins' FilePath implementation supports files with size >8Gb (starting from 1.627) via LONGFILE_GNU extension. The most of the bits have been implemented here: https://github.com/jenkinsci/jenkins/commit/b6c7b83e7ba1a7538382d220d044626f2b2e65be . I would expect the tar installer to work on big files, but it does not decrease the potential added value of adding new installers , especially in the case of RAR files. Hopefully it helps, Oleg 2016-04-16 16:10 GMT+02:00 Martin Hjelmqvist <[email protected]> : > Hello, Oleg! > > Hope everything's good with you. > > I have a few questions about this project I'm working on (adding support > for 7z-files) I was hoping you could answer. > > So, using the format 7z *might* cause a problem due to the endianness of > the format. > > *1.* How does the current extraction of .tar.gz/.zip files handle this > issue? As far as I know the extraction is done in hudson.tools.FilePath, > but not sure how it handles different endianness. > > *2.* Does the extractor code need to find out what kind of endian, big or > little, that is being used and then extract the tool differently depending > on the endianness? Or is this handled automatically somehow? > > *3.* Should I consider a different format entirely, considering that 7z > doesn't store user/group or permission bits etc? (See [3.1] below) > If yes, is RAR a better alternative perhaps? > > > *[3.1] SevenZ javadoc* > "The format is very Windows/Intel specific, so it uses little-endian byte > order, doesn't store user/group or permission bits, and represents times > using NTFS timestamps (100 nanosecond units since 1 January 1601). Hence > the official tools*recommend against using it for backup purposes on *nix*, > and recommend .tar.7z or .tar.lzma or .tar.xz instead." > > > Best regards, > Martin Hjelmqvist > вторник, 12 апреля 2016 г., 14:54:58 UTC+2 пользователь Martin Hjelmqvist написал: > > Hello again. > > Been away for a while, but I'm back at it again. > Got a couple of questions also. > > So, using the format 7z *might* cause a problem due to the endianness of > the format. > > *1.* How does the current extraction of tar.gz/zip files handle this > issue? As far as I know the extraction is done in hudson.tools.FilePath, > but not sure how it handles different endianness. > > *2.* Does the extractor code need to find out what kind of endian, big or > little, that is being used and then extract the tool differently depending > on the endianness? Or is this handled automatically somehow? > > *3.* Should I consider a different format entirely, considering that 7z > doesn't store user/group or permission bits etc? (See [3.1] below) > If yes, Is RAR a better alternative? > > > *[3.1] SevenZ* > "The format is very Windows/Intel specific, so it uses little-endian byte > order, doesn't store user/group or permission bits, and represents times > using NTFS timestamps (100 nanosecond units since 1 January 1601). Hence > the official tools*recommend against using it for backup purposes on *nix*, > and recommend .tar.7z or .tar.lzma or .tar.xz instead." > > > Best regards, > Martin Hjelmqvist > > -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/afe5d75c-6159-4582-901e-f8d6e78b2933%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
