'Calls each successive migration until the config is the same version as SB expects'

def migrate_config(self):

    if (self.config_version > self.expected_config_version):
        sickrage.srCore.srLogger.error((u'Your    config    version    (%i)    has    been    incremented    past    what    this    version    of    supports    (%i).\n                                                                                If    you    have    used    other    forks    or    a    newer    version    of        your    config    file    may    be    unusable    due    to    their    modifications.' % (self.config_version, self.expected_config_version)))
        sys.exit(1)
    self.CONFIG_VERSION = self.config_version
    while (self.config_version < self.expected_config_version):
        next_version = (self.config_version + 1)
        if (next_version in self.migration_names):
            migration_name = (u':    ' + self.migration_names[next_version])
        else:
            migration_name = u''
        sickrage.srCore.srLogger.info(u'Backing    up    config    before    upgrade')
        if (not backupVersionedFile(sickrage.CONFIG_FILE, self.config_version)):
            sickrage.srCore.srLogger.exit(u'Config    backup    failed,    abort    upgrading    config')
            sys.exit(1)
        else:
            sickrage.srCore.srLogger.info(u'Proceeding    with    upgrade')
        sickrage.srCore.srLogger.info(((u'Migrating    config    up    to    version    ' + str(next_version)) + migration_name))
        self.CONFIG_OBJ = getattr(self, (u'_migrate_v' + str(next_version)))()
        self.config_version = next_version
        self.CONFIG_VERSION = self.config_version
    return self.CONFIG_OBJ
