This project is an example implementation of a ToolForge tool in Java. It uses the ToolForge Maven plugin to generate its argument parser from its manifest and the toolforge4j library for QOL. It also uses the excellent Fabric8 Docker Maven plugin to build its Docker container for pushing into ToolForge.
This "Hello Toolforge" template is released FREE TO USE under the Apache 2.0 License for building ToolForge tools. Tool developers may choose their own licenses for their tools, including closed source.
Simply running the following command will generate the required Docker image:
mvn clean compile install
Note that this example also includes GitHub actions for CI/CD.
To adapt this example into a real tool, the user should:
- Create a ToolForge account and create a new container. Call it whatever you like! Note the container's container location and ID.
- Update the POM to reflect the tool's real GAV, SCM, ToolForge tool path, target package, main class, and so on.
- Update the Dockerfile to reflect the container's name and environment.
- Update the manifest to reflect the tool's inputs, outputs, and parameters.
- Write the code to implement the tool.
- Build, push, and run in ToolForge!