Skip to content

Make VSM controllers available at the Group level

Adam Hegyi requested to merge 212226-move-vsm-controller-to-group-level into master

What does this MR do?

This is a "splitted" MR, original MR: !27991 (closed)

Context: We've recently moved VSM (cycle analytics) to the group level from the global analytics namespace, however the controllers were not moved. This MR makes the VSM controllers available at both Analytics:: (kept for backward compatibility, to be deleted in the next milestone) and Group::Analytics:: namespaces.

Backend changes:

  • Move VSM routes to Group level.
  • Prepend :: in the controllers so constants are properly resolved for both Analytics:: and Groups::Analytics namespaces.

Removals:

Not used at all, part of the "old" VSM feature (disabled since 12.8):

  • ee/app/controllers/groups/cycle_analytics_controller.rb
  • ee/app/controllers/groups/cycle_analytics/events_controller.rb and tests
  • ee/spec/frontend/fixtures/analytics.rb old FE fixtures, not in use.

Changes FE:

  • The endpoint has been changed from /analytics/value_stream_management to /groups/:group_id/-/analytics/value_stream_analytics
    • Already reviewed and approved in the previous MR.

Temporary "spec" duplication:

  • Copied the tests from ee/spec/controllers/analytics/cycle_analytics/ to ee/spec/controllers/groups/analytics/cycle_analytics/
    • The old tests and controllers to be cleaned up in the next milestone.
    • I was thinking about introducing shared examples to avoid file duplication, but I think it doesn't worth it since we're going to remove the Analytics::CycleAnalytics controllers in the next milestone.

Backend review steps:

  • See the route changes in ee/config/routes/group.rb
    • Mostly copied from ee/config/routes/analytics.rb
  • See the controller changes, search for controller.rb
    • Inheritance and the prepended ::
  • There are no new _spec files to review.

Screenshots

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team

Closes #212226 (closed)

Edited by Peter Leitzen

Merge request reports