[DISCUSS] How to generate ConfigurableComponent documentation at build time?
As part of NIFI-445, I am trying to find the best way to generate Processor/ControllerService/ReportingTask documentation so that it can be bundled and uploaded to the website. Ideally I'd like this to happen during some phase of the build and get bundled with Javadocs and Asciidocs, but that presents some obstacles I'll outline below.
I would like to write a Maven plugin that would generate Processor/ControllerService/ReportingTask documentation just like the in-app html documentation during some phase of the build, but this approach has a few snags:
1) The Maven plugin would have to be released ahead of the main NiFi build
2) The Maven plugin would depend on the nifi-documentation artifact, which in turn depends on nifi-nar-utils, nifi-api, nifi-properties. Which means:
a) these would have to be pulled out and released separately ahead of the main NiFi build,
b) The Maven plugin would depend on the last version that was released
c) nifi-documentation, nifi-nar-utils, nifi-api, and nifi-properties are in the nifi/lib directory. Mark them as provided in the Maven Plugin, and put nifi/lib in the classpath
I'm not in love with any of these options. Does anyone have any better ideas?
A short term solution is simply to run a built NiFi assembly, and copy work/docs/components directory up to the website. Not automated... but simple.
ONYX Consulting Services