This project is not covered by Drupal’s security advisory policy.
The purpose of this module is to ensure any content that is required by configuration exists when that configuration is loaded.
Deploying content and configuration changes together is hard
It can be hard to coordinate the deployment of both content and configuration changes together.
A typical scenario:
1. A site's source code - along with its exported configuration - is stored in version control.
2. A developer wants to add a custom block to a page. They do this locally, export the configuration and commit the changes.
3. The configuration refers to a block with a UUID. This block only exists on the developer's instance.
4. The new configuration is deployed, but the block needs to be created separately with that same UUID.
This module aims to solve that.
How does this module work?
Go to Administration, System, Required content. For each content dependency, you can dictate what should happen if that dependency is missing. You can specify whether to create a missing entity automatically or not, and any properties a newly created entity should have.

How does this module differ from default content?
The Default Content module has a different use case: it gives module/profile authors a way to ship with default content as well as configuration.
This module can be thought of as providing some rules to dictate what happens if you import configuration that depends on missing content.
How ready is this module?
This module is in the early stages of development. You probably don't want to rely on it in production just yet. That said, you can remove this module at any time without any adverse effects.
Feedback is very welcome!
Please note that until there is a stable 1.0 release there will be no upgrade path.
Project information
- Project categories: Content editing experience, Developer tools
- Created by erik.erskine on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
