In a custom D6->D8 migration module, how does one selectively migrate specific content-types, vocabs and blocks, etc, without receiving the error: 'XXX did not meet requirements. Missing migrations XXX'

I can already selective limit via migrate_prepare_row(), but anytime I do so content related to anything not migrated makes MI throw this error and fail.

Is there any core process plugin that addresses this type of scenario per row?

1 Answer 1


You don't describe precisely how you're doing your custom migration, but the key to missing requirements on migrations you are omitting is to remove the dependencies. The migration that is complaining will have in its configuration something like

    - d6_user
    - d6_node_type
    - d6_node_settings
    - d6_filter_format
    - d6_field_instance_widget_settings
    - d6_field_formatter_settings
    - d6_upload_field_instance

Simply remove references to migrations which you are not running.

  • Appreciate the help, Mike. To explain further, I've used Migrate-upgrade --configure-only to generate the entities and then copied them into an install/config folder in a module I generated via Drupal Console. I am migrating only select content by essentially deleting the related ymls. Then, I'm also trying to customize further by limiting to specific content types, vocabularies, blocks, etc. via prepareRow. Even with prepareRow completely commented out, taxonomy term node references (..._term_node_x) are getting ignored. I'm targeting a clean, fresh DB every time. Sep 28, 2016 at 21:20
  • Ah, term_node - please see drupal.org/node/2653984.
    – Mike Ryan
    Sep 30, 2016 at 13:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.