Skip to content

License Compliance (License List) UI Removal

This issue covers the effort needed to remove the Vue code from

https://gitlab.com/gitlab-org/gitlab/-/licenses

Things to remove:

  1. Rails route to the project licenses -/licenses

  2. Removal of licenses controller at ee/app/controllers/projects/licenses_controller.rb

  3. Removal of Rails haml views for license page at ee/app/views/projects/licenses/index.html.haml

  4. Removal of Sidebar Menu entry at ee/lib/ee/sidebars/projects/menus/security_compliance_menu.rb

  5. Removal of any related specs and E2E tests

  6. Refactor of Vue code at ee/app/assets/javascripts/license_compliance. Needs a deeper dive and workflowrefinement. At some point we used VueX modules to share implementations across multiple pages. It is still shared between the license list page and the Pipeline View -> Licenses tab .

Example of other possible usage we don't want to remove: https://gitlab.com/gitlab-org/frontend/playground/gitlab-mr-widgets-demo/-/pipelines/1102329953/licenses

https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/app/assets/javascripts/ci/pipeline_details/tabs/pipeline_tabs.vue#L108-131

https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/app/assets/javascripts/ci/pipeline_details/routes.js#L14

Proposal (Achieve removal in two phases)

Phase 1 (user facing)

To satisfy the %17.0 removal we should do the quick and easy

  1. Rails route to the project licenses -/licenses
  2. Removal of licenses controller at ee/app/controllers/projects/licenses_controller.rb
  3. Removal of Rails haml views for license page at ee/app/views/projects/licenses/index.html.haml
  4. Removal of Sidebar Menu entry at ee/lib/ee/sidebars/projects/menus/security_compliance_menu.rb
  5. Removal of any related specs and E2E tests
  6. Leave existing Vue app code in place since it's used in the Pipeline -> Licenses tab.

Phase 2 (can be done anytime after %17.0 non-user facing)

  1. Refactor of Vue code at ee/app/assets/javascripts/license_compliance. This would be non-user facing tech debt and more involved. Involves removing from shared directories, removing unused VueX modules.
Edited by David Pisek