def find_service(module, name, netbiosname): _args = { "all": True, } # Search for a SMB/cifs service. if netbiosname is not None: _result = api_command(module, "service_find", to_text(netbiosname), _args) for _res_find in _result.get('result', []): for uid in _res_find.get('uid', []): if uid.startswith("%s$@" % netbiosname): return _res_find try: _result = api_command(module, "service_show", to_text(name), _args) except ipalib.errors.NotFound: return None if "result" in _result: _res = _result["result"] certs = _res.get("usercertificate") if certs is not None: _res["usercertificate"] = [ encode_certificate(cert) for cert in certs ] return _res else: return None
def find_service(module, name): _args = { "all": True, } _result = api_command(module, "service_find", to_text(name), _args) if len(_result["result"]) > 1: module.fail_json( msg="There is more than one service '%s'" % (name)) elif len(_result["result"]) == 1: _res = _result["result"][0] certs = _res.get("usercertificate") if certs is not None: _res["usercertificate"] = [encode_certificate(cert) for cert in certs] return _res else: return None
def find_service(module, name): _args = { "all": True, } try: _result = module.ipa_command("service_show", name, _args) except ipalib_errors.NotFound: return None if "result" in _result: _res = _result["result"] certs = _res.get("usercertificate") if certs is not None: _res["usercertificate"] = [ encode_certificate(cert) for cert in certs ] return _res return None