diff --git a/core/modules/migrate/migrate.services.yml b/core/modules/migrate/migrate.services.yml
index 3f2d32d..41c52ff 100644
--- a/core/modules/migrate/migrate.services.yml
+++ b/core/modules/migrate/migrate.services.yml
@@ -5,6 +5,9 @@ services:
       - { name: cache.bin }
     factory: cache_factory:get
     arguments: [migrate]
+  migrate.template_storage:
+    class: Drupal\migrate\MigrateTemplateStorage
+    arguments: ['@config.storage']
   plugin.manager.migrate.source:
     class: Drupal\migrate\Plugin\MigratePluginManager
     arguments: [source, '@container.namespaces', '@cache.discovery', '@module_handler', 'Drupal\migrate\Annotation\MigrateSource']
diff --git a/core/modules/migrate/src/MigrateTemplateStorage.php b/core/modules/migrate/src/MigrateTemplateStorage.php
new file mode 100644
index 0000000..7071105
--- /dev/null
+++ b/core/modules/migrate/src/MigrateTemplateStorage.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\migrate\MigrateTemplateStorage.
+ */
+
+namespace Drupal\migrate;
+
+use Drupal\Component\Discovery\YamlDiscovery;
+use Drupal\Core\Config\ExtensionInstallStorage as BaseExtensionInstallStorage;
+use Drupal\Core\Config\StorageInterface;
+
+/**
+ * Storage to access migration template configuration in enabled extensions.
+ */
+class MigrateTemplateStorage extends BaseExtensionInstallStorage {
+
+  /**
+   * Extension sub-directory containing default configuration for migrations.
+   */
+  const MIGRATION_TEMPLATE_DIRECTORY = 'migration_templates';
+
+  /**
+   * {@inheritdoc}
+   */
+  public function __construct(StorageInterface $config_storage, $directory = self::MIGRATION_TEMPLATE_DIRECTORY, $collection = StorageInterface::DEFAULT_COLLECTION, $include_profile = TRUE) {
+    parent::__construct($config_storage, $directory, $collection, $include_profile);
+  }
+
+  /**
+   * Find all migration templates with the specified tag.
+   *
+   * @param $tag
+   *   The tag to match.
+   *
+   * @return array
+   *   Any templates (parsed YAML config) that matched, keyed by the ID.
+   */
+  public function findTemplatesByTag($tag) {
+    $templates = $this->getAllTemplates();
+    $matched_templates = [];
+    foreach ($templates as $template_name => $template) {
+      if (!empty($template['migration_tags'])) {
+        if (in_array($tag, $template['migration_tags'])) {
+          $matched_templates[$template_name] = $template;
+        }
+      }
+    }
+    return $matched_templates;
+  }
+
+  /**
+   * Retrieves all migration templates belonging to enabled extensions.
+   *
+   * @return array
+   *   Array of parsed templates, keyed by the fully-qualified id.
+   */
+  public function getAllTemplates() {
+    // Retrieve the full list of templates, keyed by fully-qualified name,
+    // with the containing folder as the value.
+    $folders = $this->getAllFolders();
+    $templates = [];
+    foreach ($folders as $full_name => $folder) {
+      // The fully qualified name will be in the form migrate.migration.d6_node.
+      // Break out the provider ('migrate') and name ('migration.d6_node').
+      list($provider, $name) = explode('.', $full_name, 2);
+      // Retrieve and parse the template contents.
+      $discovery = new YamlDiscovery($name, array($provider => $folder));
+      $all = $discovery->findAll();
+      $templates[$full_name] = reset($all);
+    }
+
+    return $templates;
+  }
+
+}
diff --git a/core/modules/migrate/src/Tests/TemplateTest.php b/core/modules/migrate/src/Tests/TemplateTest.php
new file mode 100644
index 0000000..b110f6c
--- /dev/null
+++ b/core/modules/migrate/src/Tests/TemplateTest.php
@@ -0,0 +1,52 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\migrate\Tests\TemplateTest
+ */
+
+namespace Drupal\migrate\Tests;
+
+use Drupal\migrate\MigrationStorage;
+
+/**
+ * Test the migration template functionality.
+ *
+ * @group migrate
+ */
+class TemplateTest extends MigrateTestBase {
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  public static $modules = array('template_test');
+
+  /**
+   * Test different connection types.
+   */
+  public function testTemplates() {
+    $migration_templates = \Drupal::service('migrate.template_storage')->findTemplatesByTag("Template Test");
+    $expected_url = [
+      'id' => 'url_template',
+      'label' => 'Template test - url',
+      'migration_tags' => ['Template Test'],
+      'source' => ['plugin' => 'empty'],
+      'process' => ['src' => 'foobar'],
+      'destination' => ['plugin' => 'url_alias'],
+    ];
+    $expected_node = [
+      'id' => 'node_template',
+      'label' => 'Template test - node',
+      'migration_tags' => ['Template Test'],
+      'source' => ['plugin' => 'empty'],
+      'process' => ['src' => 'barfoo'],
+      'destination' => ['plugin' => 'entity:node'],
+    ];
+    $this->assertIdentical($migration_templates['migrate.migration.url_template'], $expected_url);
+    $this->assertIdentical($migration_templates['migrate.migration.node_template'], $expected_node);
+    $this->assertFalse(isset($migration_templates['migrate.migration.other_template']));
+  }
+
+}
diff --git a/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.node_template.yml b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.node_template.yml
new file mode 100644
index 0000000..6eead8b
--- /dev/null
+++ b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.node_template.yml
@@ -0,0 +1,10 @@
+id: node_template
+label: Template test - node
+migration_tags:
+  - Template Test
+source:
+  plugin: empty
+process:
+  src: barfoo
+destination:
+  plugin: entity:node
diff --git a/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.other_template.yml b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.other_template.yml
new file mode 100644
index 0000000..3d974f0
--- /dev/null
+++ b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.other_template.yml
@@ -0,0 +1,10 @@
+id: other_template
+label: Template with a different tag
+migration_tags:
+  - Different Template Test
+source:
+  plugin: empty
+process:
+  src: raboof
+destination:
+  plugin: entity:user
diff --git a/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.url_template.yml b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.url_template.yml
new file mode 100644
index 0000000..fd82119
--- /dev/null
+++ b/core/modules/migrate/tests/modules/template_test/migration_templates/migrate.migration.url_template.yml
@@ -0,0 +1,10 @@
+id: url_template
+label: Template test - url
+migration_tags:
+  - Template Test
+source:
+  plugin: empty
+process:
+  src: foobar
+destination:
+  plugin: url_alias
diff --git a/core/modules/migrate/tests/modules/template_test/template_test.info.yml b/core/modules/migrate/tests/modules/template_test/template_test.info.yml
new file mode 100644
index 0000000..d396c63
--- /dev/null
+++ b/core/modules/migrate/tests/modules/template_test/template_test.info.yml
@@ -0,0 +1,5 @@
+name: 'Migration template test'
+type: module
+package: Testing
+version: VERSION
+core: 8.x
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_action_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_action_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_action_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_action_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_feed.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_feed.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_feed.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_feed.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_item.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_item.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_item.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_item.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_aggregator_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_aggregator_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_block.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_block.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_block_content_body_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block_content_body_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_block_content_body_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block_content_body_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_block_content_type.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block_content_type.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_block_content_type.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_block_content_type.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_book.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_book.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_book.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_book.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_book_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_book_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_book_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_book_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_cck_field_revision.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_cck_field_revision.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_cck_field_revision.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_cck_field_revision.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_cck_field_values.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_cck_field_values.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_cck_field_values.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_cck_field_values.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_form_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_form_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_form_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_form_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_form_display_subject.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_form_display_subject.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_entity_form_display_subject.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_entity_form_display_subject.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_field_instance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_type.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_type.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_comment_type.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_comment_type.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_contact_category.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_contact_category.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_contact_category.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_contact_category.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_contact_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_contact_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_contact_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_contact_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_custom_block.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_custom_block.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_custom_block.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_custom_block.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_date_formats.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_date_formats.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_date_formats.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_date_formats.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_dblog_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_dblog_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_dblog_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_dblog_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_formatter_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_formatter_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_formatter_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_formatter_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_instance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_instance_widget_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_instance_widget_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_field_instance_widget_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_field_instance_widget_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_file.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_file.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_file.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_file.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_file_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_file_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_file_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_file_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_filter_format.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_filter_format.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_filter_format.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_filter_format.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_forum_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_forum_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_forum_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_forum_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_locale_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_locale_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_locale_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_locale_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu_links.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu_links.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu_links.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu_links.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_menu_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_menu_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_revision.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_revision.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_revision.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_revision.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_promote.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_promote.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_promote.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_promote.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_status.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_status.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_status.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_status.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_sticky.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_sticky.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_setting_sticky.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_setting_sticky.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_type.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_type.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_node_type.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_node_type.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_profile_values.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_profile_values.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_profile_values.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_profile_values.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_search_page.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_search_page.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_search_page.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_search_page.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_search_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_search_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_search_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_search_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_simpletest_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_simpletest_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_simpletest_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_simpletest_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_statistics_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_statistics_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_statistics_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_statistics_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_syslog_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_syslog_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_syslog_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_syslog_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_cron.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_cron.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_cron.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_cron.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_file.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_file.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_file.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_file.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_filter.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_filter.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_filter.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_filter.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_image.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_image.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_image.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_image.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_image_gd.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_image_gd.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_image_gd.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_image_gd.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_logging.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_logging.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_logging.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_logging.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_maintenance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_maintenance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_maintenance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_maintenance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_performance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_performance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_performance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_performance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_rss.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_rss.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_rss.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_rss.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_site.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_site.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_system_site.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_system_site.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_term.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_term.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_term.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_term.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_vocabulary.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_vocabulary.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_taxonomy_vocabulary.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_taxonomy_vocabulary.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_term_node.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_term_node.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_term_node.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_term_node.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_term_node_revision.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_term_node_revision.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_term_node_revision.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_term_node_revision.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_text_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_text_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_text_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_text_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_update_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_update_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_update_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_update_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_entity_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_entity_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_entity_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_entity_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_entity_form_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_entity_form_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_entity_form_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_entity_form_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_upload_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_upload_field_instance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_url_alias.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_url_alias.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_url_alias.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_url_alias.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_contact_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_contact_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_contact_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_contact_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_mail.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_mail.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_mail.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_mail.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_entity_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_entity_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_entity_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_entity_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_entity_form_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_entity_form_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_entity_form_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_entity_form_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_field_instance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_file.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_file.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_picture_file.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_picture_file.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_entity_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_entity_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_entity_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_entity_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_entity_form_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_entity_form_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_entity_form_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_entity_form_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_profile_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_profile_field_instance.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_role.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_role.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_role.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_role.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_settings.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_settings.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_user_settings.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_user_settings.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_view_modes.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_view_modes.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_view_modes.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_view_modes.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_entity_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_entity_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_entity_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_entity_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_entity_form_display.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_entity_form_display.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_entity_form_display.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_entity_form_display.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_field.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_field.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_field.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_field.yml
diff --git a/core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_field_instance.yml b/core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_field_instance.yml
similarity index 100%
rename from core/modules/migrate_drupal/config/optional/migrate.migration.d6_vocabulary_field_instance.yml
rename to core/modules/migrate_drupal/migration_templates/migrate.migration.d6_vocabulary_field_instance.yml
diff --git a/core/modules/migrate_drupal/src/Tests/MigrateDrupalTestBase.php b/core/modules/migrate_drupal/src/Tests/MigrateDrupalTestBase.php
index b8a436f..ab2ccb3 100644
--- a/core/modules/migrate_drupal/src/Tests/MigrateDrupalTestBase.php
+++ b/core/modules/migrate_drupal/src/Tests/MigrateDrupalTestBase.php
@@ -8,6 +8,9 @@
 namespace Drupal\migrate_drupal\Tests;
 
 use Drupal\migrate\Tests\MigrateTestBase;
+use Drupal\migrate\Entity\Migration;
+use Drupal\migrate\MigrationStorage;
+use Drupal\Component\Plugin\Exception\PluginNotFoundException;
 
 /**
  * Base class for Drupal migration tests.
@@ -42,4 +45,26 @@ protected function getDumpDirectory() {
     return __DIR__ . '/Table';
   }
 
+  /**
+   * Turn all the migration templates for the specified drupal version into
+   * real migration entities so we can test them.
+   *
+   * @param $version
+   *  Drupal version as provided in migration_tags - e.g., 'Drupal 6'.
+   */
+  protected function installMigrations($version) {
+    $migration_templates = \Drupal::service('migrate.template_storage')->findTemplatesByTag($version);
+    foreach ($migration_templates as $template_name => $template) {
+      try {
+        $migration = Migration::create($template);
+        $migration->save();
+      }
+      catch (PluginNotFoundException $e) {
+        // Migrations requiring modules not enabled will throw an exception.
+        // Ignoring this exception is equivalent to placing config in the
+        // optional subdirectory - the migrations we require for the test will
+        // be successfully saved.
+      }
+    }
+  }
 }
diff --git a/core/modules/migrate_drupal/src/Tests/MigrateFullDrupalTestBase.php b/core/modules/migrate_drupal/src/Tests/MigrateFullDrupalTestBase.php
index 6b01174..0920ff9 100644
--- a/core/modules/migrate_drupal/src/Tests/MigrateFullDrupalTestBase.php
+++ b/core/modules/migrate_drupal/src/Tests/MigrateFullDrupalTestBase.php
@@ -8,9 +8,6 @@
 namespace Drupal\migrate_drupal\Tests;
 
 use Drupal\Component\Utility\SafeMarkup;
-use Drupal\Core\Config\ExtensionInstallStorage;
-use Drupal\Core\Config\InstallStorage;
-use Drupal\Core\Config\StorageInterface;
 use Drupal\migrate\MigrateExecutable;
 use Drupal\simpletest\TestBase;
 
@@ -58,7 +55,7 @@ public function testDrupal() {
     $this->loadDumps($dumps);
 
     $classes = $this->getTestClassesList();
-    $extension_install_storage = new ExtensionInstallStorage(\Drupal::service('config.storage'), InstallStorage::CONFIG_OPTIONAL_DIRECTORY, StorageInterface::DEFAULT_COLLECTION, TRUE);
+    $template_storage = \Drupal::service('migrate.template_storage');
     foreach ($classes as $class) {
       if (is_subclass_of($class, '\Drupal\migrate\Tests\MigrateDumpAlterInterface')) {
         $class::migrateDumpAlter($this);
@@ -71,7 +68,7 @@ public function testDrupal() {
 
       // Ensure that the default migration has the correct dependencies.
       list($base_name, ) = explode(':', $migration->id(), 2);
-      $default_configuration = $extension_install_storage->read('migrate.migration.' . $base_name);
+      $default_configuration = $template_storage->read('migrate.migration.' . $base_name);
       $default_dependencies = isset($default_configuration['dependencies']) ? $default_configuration['dependencies'] : [];
       $this->assertEqual($default_dependencies, $migration->getDependencies(), SafeMarkup::format('Dependencies in @id match after installing. Default configuration @first is equal to active configuration @second.', array(
         '@id' => $migration->id(),
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
index 697ab2c..b277e3b 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
@@ -198,6 +198,8 @@ protected function setUp() {
       'name' => $this->randomMachineName(),
       'status' => 1,
     ])->enforceIsNew(TRUE)->save();
+
+    $this->installMigrations('Drupal 6');
   }
 
   /**
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6TestBase.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6TestBase.php
index 91727cd..77754cb 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6TestBase.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6TestBase.php
@@ -15,6 +15,14 @@
 abstract class MigrateDrupal6TestBase extends MigrateDrupalTestBase {
 
   /**
+   * {@inheritdoc}
+   */
+  protected function setUp() {
+    parent::setUp();
+    $this->installMigrations('Drupal 6');
+  }
+
+  /**
      * {@inheritdoc}
      */
   protected function getDumpDirectory() {
