From 9da1ae7b07e1853e839ccd6ce79a28a71aad5ee2 Mon Sep 17 00:00:00 2001
From: git <git@2770225.no-reply.drupal.org>
Date: Thu, 30 Jun 2016 19:00:26 -0500
Subject: [PATCH] Issue #2574903 by gl2748: Examples should uninstall
 configuration

---
 .../install/migrate_plus.migration.beer_comment.yml      | 4 ++++
 .../config/install/migrate_plus.migration.beer_node.yml  | 4 ++++
 .../config/install/migrate_plus.migration.beer_term.yml  | 9 +++++++++
 .../config/install/migrate_plus.migration.beer_user.yml  | 8 ++++++++
 .../config/install/migrate_plus.migration_group.beer.yml | 8 ++++++++
 .../install/migrate_plus.migration.wine_role_json.yml    | 4 ++++
 .../install/migrate_plus.migration.wine_role_xml.yml     | 4 ++++
 .../config/install/migrate_plus.migration.wine_terms.yml | 4 ++++
 .../migrate_plus.migration.wine_variety_multi_xml.yml    | 4 ++++
 .../config/install/migrate_plus.migration_group.wine.yml | 4 ++++
 10 files changed, 53 insertions(+)

diff --git a/migrate_example/config/install/migrate_plus.migration.beer_comment.yml b/migrate_example/config/install/migrate_plus.migration.beer_comment.yml
index 991c59b1..e631e9ac 100644
--- a/migrate_example/config/install/migrate_plus.migration.beer_comment.yml
+++ b/migrate_example/config/install/migrate_plus.migration.beer_comment.yml
@@ -39,3 +39,7 @@ migration_dependencies:
   required:
     - beer_node
     - beer_user
+dependencies:
+  enforced:
+    module:
+      - migrate_example
diff --git a/migrate_example/config/install/migrate_plus.migration.beer_node.yml b/migrate_example/config/install/migrate_plus.migration.beer_node.yml
index b8483223..e2a9aefc 100644
--- a/migrate_example/config/install/migrate_plus.migration.beer_node.yml
+++ b/migrate_example/config/install/migrate_plus.migration.beer_node.yml
@@ -47,3 +47,7 @@ migration_dependencies:
   required:
     - beer_term
     - beer_user
+dependencies:
+  enforced:
+    module:
+      - migrate_example
diff --git a/migrate_example/config/install/migrate_plus.migration.beer_term.yml b/migrate_example/config/install/migrate_plus.migration.beer_term.yml
index 32573fa9..a7ca1858 100644
--- a/migrate_example/config/install/migrate_plus.migration.beer_term.yml
+++ b/migrate_example/config/install/migrate_plus.migration.beer_term.yml
@@ -76,3 +76,12 @@ process:
 
 # We'll learn more about dependencies in beer_node - here, we leave them empty.
 migration_dependencies: {}
+
+# By default, configuration entities (like this migration) are not automatically
+# removed when the migration which installed them is uninstalled. To have your
+# migrations uninstalled with your migration module, add an enforced dependency
+# on your module.
+dependencies:
+  enforced:
+    module:
+      - migrate_example
diff --git a/migrate_example/config/install/migrate_plus.migration.beer_user.yml b/migrate_example/config/install/migrate_plus.migration.beer_user.yml
index edd22a57..6efa41fa 100644
--- a/migrate_example/config/install/migrate_plus.migration.beer_user.yml
+++ b/migrate_example/config/install/migrate_plus.migration.beer_user.yml
@@ -98,3 +98,11 @@ process:
 #    migration: beer_node
 
 migration_dependencies: {}
+
+# When a module is creating a custom content type it needs to add an 
+# enforced dependency to itself, otherwise the content type will persist
+# after the module is disabled. See: https://www.drupal.org/node/2629516.
+dependencies:
+  enforced:
+    module:
+      - migrate_example
diff --git a/migrate_example/config/install/migrate_plus.migration_group.beer.yml b/migrate_example/config/install/migrate_plus.migration_group.beer.yml
index fe59c354..7d802d3a 100644
--- a/migrate_example/config/install/migrate_plus.migration_group.beer.yml
+++ b/migrate_example/config/install/migrate_plus.migration_group.beer.yml
@@ -28,3 +28,11 @@ shared_configuration:
     # connection to your external database in settings.php and reference its
     # key here.
     key: default
+
+# As with the migration configuration (see beer_term), we add an enforced
+# dependency so the migration_group configuration will be removed on module
+# uninstall.
+dependencies:
+  enforced:
+    module:
+      - migrate_example
diff --git a/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_json.yml b/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_json.yml
index 0a617fcc..4824eab0 100755
--- a/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_json.yml
+++ b/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_json.yml
@@ -41,3 +41,7 @@ process:
 destination:
   plugin: entity:user_role
 migration_dependencies: {}
+dependencies:
+  enforced:
+    module:
+      - migrate_example_advanced
diff --git a/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_xml.yml b/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_xml.yml
index 427493a1..6b7234c2 100755
--- a/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_xml.yml
+++ b/migrate_example_advanced/config/install/migrate_plus.migration.wine_role_xml.yml
@@ -45,3 +45,7 @@ process:
 destination:
   plugin: entity:user_role
 migration_dependencies: {}
+dependencies:
+  enforced:
+    module:
+      - migrate_example_advanced
diff --git a/migrate_example_advanced/config/install/migrate_plus.migration.wine_terms.yml b/migrate_example_advanced/config/install/migrate_plus.migration.wine_terms.yml
index ab264d86..f11b82f8 100644
--- a/migrate_example_advanced/config/install/migrate_plus.migration.wine_terms.yml
+++ b/migrate_example_advanced/config/install/migrate_plus.migration.wine_terms.yml
@@ -31,3 +31,7 @@ process:
     source: category_parent
   weight: ordering
 migration_dependencies: {}
+dependencies:
+  enforced:
+    module:
+      - migrate_example_advanced
diff --git a/migrate_example_advanced/config/install/migrate_plus.migration.wine_variety_multi_xml.yml b/migrate_example_advanced/config/install/migrate_plus.migration.wine_variety_multi_xml.yml
index e35e8ca9..e26579e7 100755
--- a/migrate_example_advanced/config/install/migrate_plus.migration.wine_variety_multi_xml.yml
+++ b/migrate_example_advanced/config/install/migrate_plus.migration.wine_variety_multi_xml.yml
@@ -63,3 +63,7 @@ destination:
 migration_dependencies:
   required:
     - wine_terms
+dependencies:
+  enforced:
+    module:
+      - migrate_example_advanced
diff --git a/migrate_example_advanced/config/install/migrate_plus.migration_group.wine.yml b/migrate_example_advanced/config/install/migrate_plus.migration_group.wine.yml
index c10dcc04..5a14bf29 100644
--- a/migrate_example_advanced/config/install/migrate_plus.migration_group.wine.yml
+++ b/migrate_example_advanced/config/install/migrate_plus.migration_group.wine.yml
@@ -5,3 +5,7 @@ source_type: Custom tables and XML
 shared_configuration:
   source:
     key: default
+dependencies:
+  enforced:
+    module:
+      - migrate_example_advanced
-- 
GitLab