Since Drupal 8 is days away from release, I've started experimenting with rebuilding my personal site on it. The one feature I am really looking forward to is configuration management in code.
Unfortunately, my taxonomy terms are not exported by the config module. From what I've found googling on the subject, neither are menu items.
Which leaves me stumped. The natural way to set a sites structure (or information architecture) is a combination of content types, taxonomy vocabularies and their terms, and a set of menus. Or, at least, that seems to be the natural way to me.
While googling, I could not find any discussion on this subject.
So, how do I export the taxonomy terms and menu items that define my sites structure?
Edit to add some details:
Assume the site is a magazine. It has Fiction, World Events, Technical, and Letters sections. There will always be a /fiction, a /world-events, a /technical, and a /letters menu items. There are several kinds of content types, each can go into various sections.
So I create a vocabulary for the sections.
- world events
A taxonomy reference field is added to each content type.
Thus, when content is created it is tagged with the appropriate section terms.
If the site deploys without one of those sections, it is broken. Thus the menu items, and taxonomy terms should be considered configuration. Not content.
From what I've read, the main problem is that terms and menu items can collide if you try to move them between instances. Terms have a incrementing tid. Menu items also have an incrementing id. Though I do see the taxonomy_term_data and menu_link_content tables which seem to map uuid's with term and menu item ids. So, couldn't that be used to make exporting them feasible?
Also, isn't one of the main uses cases for taxonomies defining a site's structure?
I guess what I'm stuck on is that some menu items and some taxonomy terms really should be considered as configuration, not data. As in, if I were coding this instead of using Drupal, I'd hard code them. Thus, they should be exportable so that they can be committed to version control.
And that's why I'm asking "How do I export my site structure?"