'Enhance configuration.
:param str domain: domain to enhance
:param str enhancement: enhancement type defined in
:const:`~certbot.constants.ENHANCEMENTS`
:param options: options for the enhancement
See :const:`~certbot.constants.ENHANCEMENTS`
documentation for appropriate parameter.
:raises .errors.PluginError: If Enhancement is not supported, or if
there is any other problem with the enhancement.'

def enhance(self, domain, enhancement, options=None):

    try:
        func = self._enhance_func[enhancement]
    except KeyError:
        raise errors.PluginError('Unsupported    enhancement:    {0}'.format(enhancement))
    try:
        func(self.choose_vhost(domain), options)
    except errors.PluginError:
        logger.warning('Failed    %s    for    %s', enhancement, domain)
        raise
