I have a non-og related migration on a D7 project. The site uses og for different purposes - however its migration classes prevents running any migration.

I checked the code and my current finding is the following. OG has several migration classes (includes/migrate/7X00) where the dependencies are auto generated:

    // eg.: og/includes/migrate/7000/og_content.inc:
    foreach (node_type_get_names() as $bundle => $value) {
      // Dependent on a dynamic migration.
      $machine_name = 'OgMigrateGroup' . ucfirst($bundle);
      if (MigrationBase::getInstance($machine_name, 'OgMigrateGroup', array('bundle' => $bundle))) {
        $this->dependencies[] = $machine_name;
      }
    }

These dependency migration classes doesn't exist. Because of the lack of these classes the migration dependency cannot be resolved - which blocks any kind of migrate operation - even if I don't do any og migration.

What's the expected workflow for this? I couldn't find any place where I can disable og's migration classes. Please, let me know how could we resolve this.

Thank you!

Comments

itarato’s picture

Still debugging. One thing I've found - those missing migrations are registered against OgMigrateGroup class. However it's not called, because there is no og table in the db. It seems in this case no og migration classes should be registered at all - but 'drush mar' will register those classes anyways, because it's defined in the info file.