Skip to content

Draft: POC: make Epics available to Projects

Imre Farkas requested to merge if-poc-epics_to_projects into master

What does this MR do?

POC for consolidate groups and projects architecture blueprint.

  • Introduces a new model ProjectNamespace and backfills for existing Projects
  • Allows Epic to be associated to ProjectNamespace
  • Changes the list epics for a group API endpoint to consider epics in projects within the group hierarchy

The POC is kept very minimal for now, only to demonstrate the capability to create Epics in Projects, and basic API querying.

Epics on projects can be created via console:

Epic.create!(title: 'Project Epic', namespace: project.project_namespace, author: user)

To query via API and the response:

$ curl 'http://localhost:3000/api/v4/groups/22/epics'-H "PRIVATE_TOKEN: $GITLAB_PAT"
[
  {
    "id":41,
    "group_id":null,
    "project_id":2,
    "parent_id":null,
    "title":"Project Epic",
    ...
  },
  {
    "id":5,
    "group_id":22,
    "project_id":null,
    "parent_id":null,
    "title":"Quia porro facilis autem voluptate quasi et in voluptatem rerum ex.",
    ...
  },
  ...
]

Screenshots (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

Does this MR contain changes to processing or storing of credentials or tokens, authorization and authentication methods or other items described in the security review guidelines? If not, then delete this Security section.

  • 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
Edited by Imre Farkas

Merge request reports