Problem/Motivation

Deployment of config would make the workspaces module even more useful. As config as it is now isn't "revisionable" nor "publishable", this isn't possible currently.

Steps to reproduce

This can't currently be replicated out of the box as it's not possible to submit configuration forms of any kind inside a workspace. With the patch it can be tested as follows

@todo add steps for testing

Proposed resolution

  • Create a content entity (publishable + revisionable) that stores config when one changes config inside a workspace
  • When a workspace is published, merge the changed config into the one active on the live workspace/the site
  • Allow config entities to be edited inside workspaces, for now by marking them as "internal" entity types which let's them pass through EntityOperations::shouldSkipPreOperations()
  • Allow config forms to be submitted inside workspace by using the patch in #3208390: Add an API for allowing modules to mark their forms as workspace-safe and implementing a corresponding event subscriber
  • Decorate the database config storage in order to write config into content entities when inside a workspace
  • What else?

Remaining tasks

User interface changes

API changes

Data model changes

Issue fork wse-3250082

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

s_leu created an issue. See original summary.

s_leu’s picture

Status: Active » Needs review

amateescu made their first commit to this issue’s fork.

amateescu’s picture

Status: Needs review » Fixed

Merged into 1.0.x, thanks for this huge effort!

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.

amateescu’s picture

Component: Code » Workspace Config