Skip to content

Move Design Management Point of Interest Discussions to Core/Foss

Overview

As part of an effort to open source some currently paid features and move them to our free tier the Point of Interest Discussions in Design Management has been identified as a feature worth moving down.

Proposal

All of the current features for Designs on issues should be moved down to Core.

Eng team to list steps required:

Documentation

Documentation for this feature should be updated to reflect that this is no longer in a paid tier.

MR Breakdown

Backend

@alexkalderimis:

Mostly a case of moving files out of EE, but there are a lot of them, so this might want to be broken down into chunks.

  • 1 MR for Models
  • 1 MR for Services
  • 1 MR for GraphQL

@toupeira: Mostly a case of moving files out of EE, but there are a lot of them, so this might want to be broken down into chunks

  • 1 MR to Port models, permissions
  • 1 MR to Port GraphQL types and mutations
  • 1 MR to Port controllers

@.luke:

  • There would be one tweak to License and to Project#design_management_enabled? and tweaks to associated tests but very minor.
  • The rest of the work is a giant code move and removing the namespacing of every design management backend Ruby class.

Frontend

@tomquirk:

  1. (!31058 (merged)) Move all JS files
    • Move design management Vue app code from ee/app/assets/javascripts/design_management/ => app/assets/javascripts/design_management/
    • Move design management specs from ee/spec/frontend/design_management/ => spec/frontend/design_management/
  2. (!31306 (merged)) Import and initialize the Vue app from within app/assets/javascripts/pages/projects/issues/show.js (and remove the initialization from ee/app/assets/javascripts/pages/projects/issues/show.js)
    • check first for .js-design-management before mounting (this won't exist yet, so at this point, design management still won't be visible in FOSS)
  3. (!31309 (merged)) Add Designs tab to FOSS (this makes Design Management actually useable in the UI)
    • Shift Discussions tab and Designs tab HAML (ee/app/views/projects/issues/_discussion.html.haml) to a file under app/views/projects/issues/
    • Update app/views/projects/issues/show.html.haml to render this new template from above ^
  4. (!31309 (merged)) Move Ruby feature specs to FOSS

Testing Activity

@.luke:

  • Existing tests will pass after being moved.
  • Project#design_management_enabled? test will change.
  • Tests will no longer need to stub the license.

Availability & Testing

@tmslvnkc:

Edited by Tom Quirk