'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):
        logger.log_error_and_exit(u'Your    config    version    ({0:d})    has    been    incremented    past    what    this    version    of    SickRage    supports    ({1:d}).\n                                                                If    you    have    used    other    forks    or    a    newer    version    of    SickRage,    your    config    file    may    be    unusable    due    to    their    modifications.'.format(self.config_version, self.expected_config_version))
    sickbeard.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''
        logger.log(u'Backing    up    config    before    upgrade')
        if (not helpers.backupVersionedFile(sickbeard.CONFIG_FILE, self.config_version)):
            logger.log_error_and_exit(u'Config    backup    failed,    abort    upgrading    config')
        else:
            logger.log(u'Proceeding    with    upgrade')
        logger.log(((u'Migrating    config    up    to    version    ' + six.text_type(next_version)) + migration_name))
        getattr(self, (u'_migrate_v' + six.text_type(next_version)))()
        self.config_version = next_version
        sickbeard.CONFIG_VERSION = self.config_version
        logger.log(u'Saving    config    file    to    disk')
        sickbeard.save_config()
