octool — building Opencast with style
What is it?
It’s a tool to help you build Opencast. If you don’t know what Opencast is, please do not read on.
What’s the problem building Opencast, you say? It’s nothing major, really, but…
- it has a lot of stuff going to standard output and standard error.
- you have to remember certain settings, like “how do I turn off tests again?”
- building something “relative to a certain git version” is not possible“
and a few other things that just annoyed me after a while, so I wrote this tool.
Installation
Out of sheer lazyness (pun intended), I currently depend wholly on the Nix package manager to build it. With it, however, building it is trivial:
nix-build
Without it…well, it’s not possible.
Usage
Your working directory has to be the Opencast root directory. Then just call it, possibly with --help to discover its options. They should be self-explanatory:
Global
Usage: octool COMMAND Available options: -h,--help Show this help text Available commands: create-ca create a new capture agent show-last-log show the last (re-)build log rebuild rebuild parts of (or all of) Opencast
create-ca
Usage: octool create-ca --create-ca ARG
create a new capture agent
Available options:
--create-ca ARG create a capture agent on the locally running
instance
-h,--help Show this help text
show-last-log
Usage: octool show-last-log show the last (re-)build log Available options: -h,--help Show this help text
rebuild
Usage: octool rebuild [--relative-to ARG] [--clean] [--modules ARG] [--stdout]
[--yes] [--no] [--no-checkstyle] [--no-tests]
[--target-assembly ARG]
rebuild parts of (or all of) Opencast
Available options:
--relative-to ARG rebuild only modules changed since the version
specified
--clean clean before build
--modules ARG rebuild this specific modules (and dependents
thereof)
--stdout output stdout, too
--yes say "yes" to everything
--no say "no" to everything
--no-checkstyle disable checkstyle
--no-tests disable tests
--target-assembly ARG use the specified assembly instead of develop
-h,--help Show this help text