You define a schema type sequence:
# Schema for the configuration files of the Options module.
label: 'List (integer) settings'
label: 'Allowed values list'
Nowhere, most of configuration is located in database including webform.
With config module, you may find webform configuration in admin (yml) : /admin/config/development/configuration/single/export
First, select webform in configuration type, then the configuration you need to export.
NB : have a look at sources https://github.com/drupalprojects/webform/...
This was custom openid_connect plugin I was working on, so a bit different than a ConfigFormBase normal configuration form, but I hope this methodology applies and is helpful to someone in the future.
I used a schema like so (snippet):
# Schema for the configuration files of the OpenID Connect module.
I was recently struggling how to store data with a nested array of strings,
The only way I could figure out how to validate it was by running functional tests, where it validates the configs when you save a config entity.
I was able to save data like the above data by nesting 'sequences':
One way is to create a small testing module that contains specific config you need for a test, then have the test use it as a dependency. In my case, I put that module itself under the tests directory and marked it as hidden in its info file.
Although a drawback would be keeping these config files up to date when the system changes - but failing tests ...
Ah 🤦♂️. Trying to install my rutherford theme via the web UI gave a The rutherford theme was not found. error message, so it seemed the theme was at fault, not the profile.
I inspected my theme's info file and realised it had a dependency which was not being met. Commenting out the dependency got everything working again!
It's a shame that the php www/...
The most efficient way to move a content type into a custom module is from the command line:
drupal config:export:content:type page \
Configuration Management did not replace Features completely, Features still has its place.
My understanding is that:
Configuration Management should be used to manage your configuration for a specific site/project.
Features should be used to export configuration to custom modules as you develop them if they're going to be re-used on another site.
I solved that problem using Features for Drupal 8 as suggested by @leymannx.
I have exported media, taxonomy and the article content type to one feature that I can now use across multiple sites.
The cool thing is that configuration still lives in the config_sync directory, so other content types that depend on media and taxonomy don't need to be exported ...