Skip to content

Allow associating VSA objects to ProjectNamespace

What does this MR do and why?

This MR is a preparation to make the Group-level Value Stream Analytics feature available on the Project-level using the Namespaces::ProjectNamespace (workspace) concept. Epic: &9295 (closed)

We have 3 VSA models that are associated with a group (belong_to):

  • Analytics::CycleAnalytics::GroupStage
  • Analytics::CycleAnalytics::GroupValueStream
  • Analytics::CycleAnalytics::Aggregation

Before this MR, the group association only accepted Group classes. After this change, Group and Namespaces::ProjectNamespace classes are accepted via an association called parent.

The changes are mostly coming from the fact that the group association was replaced by the parent association.

Note: the two classes (out of three) mentioned above will be renamed in a separate MR:

  • Analytics::CycleAnalytics::GroupStage => Analytics::CycleAnalytics::Stage
  • Analytics::CycleAnalytics::GroupValueStream => Analytics::CycleAnalytics::ValueStream

Reasoning: it's easier to review the group->parent transition without renamed files.

How to set up and validate locally

No end-user impact yet.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #382494 (closed)

Edited by Adam Hegyi

Merge request reports