The Apache StreamPipes is an internal developer plugin which eases the generation of documentation for adapters and pipeline elements.
The plugin generates documentation files which can be integrated into the UI.
The streampipes-maven-plugin can either be started from the command line or embedded into a project's pom.
The plugin must be started from a module which contains an Init class which inherits StreamPipesExtensionsServiceBase. By default, the goal runs in the package phase.
# Switch to a directory containing StreamPipes extensions and an Init class, e.g., extensions-all-jvm mvn streampipes:extract-docs -DinitClass=org.apache.streampipes.extensions.all.jvm.AllExtensionsInit
<plugin> <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-maven-plugin</artifactId> <version>0.95.0</version> <dependencies> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client-java</artifactId> <version>5.0.2</version> </dependency> </dependencies> <configuration> <initClass>org.apache.streampipes.extensions.all.jvm.AllExtensionsInit</initClass> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>extract-docs</goal> </goals> </execution> </executions> </plugin>
version with the current development version.initClass with the module's init class.The plugin creates a new folder docs in the module's target directory.
The folder includes:
img folder which has a subdirectory for each extension (named by the appId) containing the icon.pe folder which has a subdirectory for each extension (named by the appId) containing the documentation.md file, which has been rewritten to match the requirements of the Docusaurus Markdown parser.sidebar.json file containing the sidebar, which is downloaded from the streampipes-website repo on branch dev and updated with the current set of extensions.