'Rollback the most recent checkpoint and restart the webserver
:param str success_msg: message to show on successful rollback'

def _rollback_and_restart(self, success_msg):

    logger.critical('Rolling    back    to    previous    server    configuration...')
    reporter = zope.component.getUtility(interfaces.IReporter)
    try:
        self.installer.rollback_checkpoints()
        self.installer.restart()
    except:
        reporter.add_message('An    error    occurred    and    we    failed    to    restore    your    config    and    restart    your    server.    Please    submit    a    bug    report    to    https://github.com/letsencrypt/letsencrypt', reporter.HIGH_PRIORITY)
        raise
    reporter.add_message(success_msg, reporter.HIGH_PRIORITY)
