Recently, we moved a project using a custom fat jar task to application plugin, and in the process, I discovered that it is lacking the following configuration options.
The distribution is created as below
Unless customized, the application name varies and thus, when extracted, so does the root directory. This is an issue for building a Docker image, because either the name has to be fixed in the
build.gradle and referenced in the
Dockerfile, which makes them tightly coupled, or the root directory has to be dynamically found using some Linux foo, which is unnecessary. It’ll be nice to have a simple option to omit the root directory in the archive .
The startup script name can’t be customized without writing a bunch of code. One option that I’m using now is the following
applicationName = “startup”
However, this is undesirable. First of all, I just want the script to have a particular name, I don’t really want to change the semantics of application name. Second of all, doing as above creates a script named
startup; I’d have liked to name it