GitLab Cells Development Guidelines

For background of GitLab Cells, refer to the blueprint.

Essential and additional workflows

To make the application work within the GitLab Cells architecture, we need to fix various workflows.

Here is the suggested approach:

  1. Pick a workflow to fix.
  2. For each table affected for the chosen workflow, choose the approriate GitLab schema.
  3. Identify all cross-joins, cross-transactions, and cross-database foreign keys for these tables. See the multiple databases guide on how to identify, and allowlist these items.
  4. Fix the cross-joins and cross-database foreign keys necessary for the workflow to work with GitLab Cells. See the multiple databases guide on how to fix these items.
  5. For the cross-joins, cross-transactions, and cross-database foreign keys that were not fixed, open and schedule issues to fix later.
  6. Confirm the fixes work by completing the workflow successfully in a local GDK running multiple cells.

Refer to following epics for examples: