jreleaser
jreleaser copied to clipboard
[assemble] Allow creating archives without an enclosing folder
Describe the solution you'd like Thanks a lot for building this amazing project!
When packaging archives, JReleaser adds the selected fileSets into an enclosing folder. It would be great if there was an option to disable that behaviour and add them directly into the archive.
Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.
Additional context I have a few tools that assume presence of binaries in the top level, so having this option would be useful!
For my sample project jreleaser-poc, This is how the contents of the archive looks like at the moment:
❯ wget https://github.com/manojkarthick/jreleaser-poc/releases/download/v0.2.1/jreleaser-poc-0.2.1-aarch64-apple-darwin.tar.gz -O jreleaser-poc-0.2.1-aarch64-apple-darwin.tar.gz
❯ tar -xzvf jreleaser-poc-0.2.1-aarch64-apple-darwin.tar.gz
x jreleaser-poc-0.2.1-aarch64-apple-darwin/LICENSE
x jreleaser-poc-0.2.1-aarch64-apple-darwin/jreleaser-poc
I would like the contents to be this instead:
❯ tar -xzvf jreleaser-poc-0.2.1-aarch64-apple-darwin.tar.gz
x LICENSE
x jreleaser-poc
OK, but be aware that many of the package managers supported by JReleaser expect a root entry as provided by the default behavior of the archive assembler.
For this reason the default value for the new property will be set to false.
Ah ok, that makes sense. It’s not very important - I can always update the tools to support this format, just thought I’d file a feature request in case its possible to implement. Thank you!
It's possible to implement, the underlying infrastructure already exists, but enabling the feature might leave package managers in a bind.
If you use JReleaser for assemble & release? No harm done. But the moment you use the assembled archives for packagers things might break.