Merge license compliance and dependency controllers.
Opened as a result of: !18934 (comment 252518386)
Right now we have two license compliance controllers located at:
ee/app/controllers/projects/security/licenses_controller.rb
ee/app/controllers/projects/licenses_controller.rb
For dependency list we also have two controllers located at: ee/app/controllers/projects/dependencies_controller.rb
ee/app/controllers/projects/security/dependencies_controller.rb
One is used to render the rails view that bootstraps the vue app. The other is used to render the json endpoints for license compliance.
Proposed Implementation Plan
Merge License Compliance Controller
Due to !18934 (merged) we would have two URL routes:
/<PROJECT>/-/licenses
/<PROJECT>/-/security/licenses
Since the security
namespace seems excessive, we should opt to merge the controllers and use the respond_to
pattern which rails prescribes to differentiate between a HTML and JSON response type.
respond_to do |format|
format.html { ... }
format.json { ... }
end
1.) Merge the two controllers using respond_to
pattern
2.) Update unit tests/manually test links (rails route helpers), and that the endpoints work.
Merge Dependency List Controllers
1.) Merge the two controllers using respond_to
pattern
2.) Move the dependency controller route to the /-/
scope to mirror the license compliance scope.
3.) Update unit tests/manually test links (rails route helpers), and that the endpoints work.
Other notes:
Should ideally be merged after !18934 (merged) to avoid the chance of merge conflicts.