Kevin Doran created NIFIREG-456:
-----------------------------------
Summary: Switch to using maven artifact for bundling Swagger UI
Key: NIFIREG-456
URL: https://issues.apache.org/jira/browse/NIFIREG-456
Project: NiFi Registry
Issue Type: Improvement
Reporter: Kevin Doran
*+Background+*
NiFi Registry bundles a Swagger UI as a convenience for documenting/interacting
with the REST API. The Swagger UI (ALv2) is currently obtained by downloading a
tarball from a github archives location during the build using the
download-maven-plugin (which calls wget):
https://github.com/apache/nifi/blob/main/nifi-registry/nifi-registry-core/nifi-registry-web-api/pom.xml#L132
The files needed for hosting a Swagger UI are then extracted and copied to a
static asset directory in the NiFi Registry web server, and configured to use
the NiFi Registry swagger.json.
The downside of this is that to build NiFi Registry from source, an internet
connection is required. To build offline, or on a network without public
internet access, the -Pno-swagger-ui profile can be used, but this disables
this feature that may be useful.
A better way to obtain this dependency would be from Maven Central, where on a
disconnected network, a nexus mirror could be used for building. The same
Swagger UI files can be obtained via the org.webjars::swagger-ui::<version>
artifact in Maven Central:
https://mvnrepository.com/artifact/org.webjars/swagger-ui
By adding this dependency, and unpacking/repacking the files needed during the
build, it makes the build more flexible as alternative repository locations can
be specified locally.
*This task is to migrate from using the download-maven-plugin pulling from
github archives to using a standard maven dependency and repacking the jar
files to achieve the same result for the bundled Swagger UI.*
Related discussion thread:
https://lists.apache.org/thread.html/r07d6d62663a49ac18cc5cfadc5e549f1a43e7d43ab269fe12dfe1ad0%40%3Cdev.nifi.apache.org%3E
--
This message was sent by Atlassian Jira
(v8.3.4#803005)