Rather than having to go into the kiwiproject-changelog repository, build the (shaded) JAR, then run the JAR using java -jar /path/to/kiwiproject-changelog/target/changelog-generator-0.10.0.jar <options>, provide a way to "install" the change log generator.]
The installation script should:
Checkout and build the most recent (production) release
Copy the shaded JAR to the installation directory, perhaps specified as an installation option
Create an executable script, e.g., .generate-kiwi-changelog, in the to the installation directory
Either add the script to the PATH or provide a snippet to add to a bash/zsh/etc profile
Installation options might include:
the install directory (perhaps this should be required)
allow a custom name for the script if someone doesn't like the default name
automatically update the bash/zsh/etc profiler script to add to PATH
The installation should also allow updating when a new version is released, which would replace the JAR in an existing installation. If the JAR is named generically, i.e., without the version number, then only the JAR needs to be updated.
Rather than having to go into the
kiwiproject-changelog
repository, build the (shaded) JAR, then run the JAR usingjava -jar /path/to/kiwiproject-changelog/target/changelog-generator-0.10.0.jar <options>
, provide a way to "install" the change log generator.]The installation script should:
.generate-kiwi-changelog
, in the to the installation directoryPATH
or provide a snippet to add to a bash/zsh/etc profileInstallation options might include:
PATH
The installation should also allow updating when a new version is released, which would replace the JAR in an existing installation. If the JAR is named generically, i.e., without the version number, then only the JAR needs to be updated.
The installation directory might look like:
For initial installation, usage could look like:
Or to create a custom script name:
To perform an update, you would simply run the
install.sh
script again:The script should be smart enough to detect an update, and only update the JAR.
Then, to run the change log generator, the usage should be pretty simple, e.g.,:
Or, using the short names: