Currently Swagger UI source code is included in OpenLMIS git repos, eg https://github.com/OpenLMIS/openlmis-requisition/tree/master/src/main/webapp. The goal of this ticket is to remove the Swagger UI source code from OpenLMIS repos. Instead, we can replace it with a build step that pulls in Swagger as a dependency. It would download and install the correct Swagger version below the /build/ folder during a build step.
Why? We don't want other open source projects' source code to be in our repo. We aren't going to maintain or write that Swagger UI code; we want to simply use it as a dependency at build time. That way we can specify a newer version of Swagger in the future, so it's easier to manage it as a dependency. It's also better to not clutter up our repo and our commit history with Swagger's files and commits.
TBD To Do before work begins: Josh also had an idea about moving the location where we host Swagger out of each service repository and into the Reference UI repository, perhaps. Before starting work on this ticket, we need to consider whether that is part of this ticket or not.
Swagger source code is gone from all the openlmis v3 github repositories (it will still be part of the history, but not part of the current version on master branch).
Swagger is added to the build as a dependency.
Test to make sure all the uses of Swagger/Swagger UI still work properly, including at test.openlmis.org/... and uat.openlmis.org/....