def _csr_obtain_cert(config, le_client):
 (csr, typ) = config.actual_csr
 (certr, chain) = le_client.obtain_certificate_from_csr(config.domains, csr, typ)
 if config.dry_run:
  logger.debug('Dry run: skipping saving certificate to %s', config.cert_path)
 else:
  (cert_path, _, cert_fullchain) = le_client.save_certificate(certr, chain, config.cert_path, config.chain_path, config.fullchain_path)
  _report_new_cert(config, cert_path, cert_fullchain)

def _csr_obtain_cert ( config , le_client ) : ( csr , typ ) = config . actual_csr ( certr , chain ) = le_client . obtain_certificate_from_csr ( config . domains , csr , typ ) if config . dry_run : logger . debug ( 'Dry run: skipping saving certificate to %s' , config . cert_path ) else : ( cert_path , _ , cert_fullchain ) = le_client . save_certificate ( certr , chain , config . cert_path , config . chain_path , config . fullchain_path ) _report_new_cert ( config , cert_path , cert_fullchain )
obtain a cert using a user-supplied csr this works differently in the csr case because we dont have the privkey .