def modify_record(self, old_rr=None, new_rr=None, type=None, line=None, value=None, ttl=None, mx=None): """ 修改记录 :return: True|False """ try: record_id = self.get_record_id(old_rr) if not record_id: return False if type == "显示URL": type = "REDIRECT_URL" if type == "隐性URL": type = "FORWARD_URL" client = AcsClient(self.key, self.secret, 'cn-hangzhou') request = UpdateDomainRecordRequest() request.set_accept_format('json') request.set_RecordId(record_id) request.set_RR(new_rr + "." + self.prefix_domain) request.set_Type(type) request.set_Value(value) request.set_Line(self.record_line(value=line)) request.set_TTL(600 if int(ttl) < 600 else int(ttl)) if type == "MX": request.set_Priority(mx) try: response = client.do_action_with_exception(request) response = json.loads(response) if "Code" in response.keys(): print(F"modify record failed: {response}") print(response) return False print(F"modify record success: [{old_rr} -> {new_rr}]") return True except ServerException as e: print(F"No changes for record: {e}") return True except Exception: print(F"modify record unknown exception") print(traceback.format_exc()) return False
def update_record(self, index: int, record_id: str, ip: str): """ update domain item to target ip address """ req = UpdateDomainRecordRequest() req.set_RR(self._config.rr_list[index]) req.set_RecordId(record_id) req.set_Type('A') req.set_Value(ip) req.set_Line('default') resp = self._client.do_action_with_exception(req).decode() logger.debug(f'update domain response: {resp}')
def update_record(self, *args, **kwargs): request = UpdateDomainRecordRequest() request.set_accept_format('json') request.set_RecordId(kwargs.get('record_id')) request.set_RR(kwargs.get('domain_rr')) request.set_Type(kwargs.get('domain_type')) request.set_Value(kwargs.get('domain_value')) request.set_TTL(kwargs.get('domain_ttl')) request.set_Line(kwargs.get('line')) response = self.__client.do_action_with_exception(request) return json.loads(str(response, encoding="utf8")).get('RecordId')
def update_record(record_id, value): try: logging.info('UpdateDomainRecordRequest %s %s' % (SUBDOMAIN, value)) request = UpdateDomainRecordRequest() request.set_RecordId(record_id) request.set_RR(RECORD) request.set_Type(RECORD_TYPE) request.set_Line('default') request.set_Value(value) request.set_accept_format('json') response = acsClient.do_action_with_exception(request) return json.loads(response)['RecordId'] except Exception as e: logging.error(e)
def UpdateDomainRecordHelper(Client, RecordId, RR, Type, Value, Line): Request = UpdateDomainRecordRequest() Request.set_accept_format('json') #设置新的记录的信息 Request.set_RecordId(RecordId) Request.set_RR(RR) Request.set_Type(Type) Request.set_Value(Value) Request.set_Line(Line) result = ExecuteGetResults(Client,Request) #print(result) return result
def update_record(self, obj): self.client = AcsClient(obj.domain_name.account.access_id, obj.domain_name.account.access_key, 'cn-hangzhou') request = UpdateDomainRecordRequest() request.set_accept_format('json') request.set_RecordId(obj.record_id) request.set_TTL(obj.ttl) request.set_Line(obj.line) request.set_Value(obj.value) request.set_Type(obj.type) request.set_RR(obj.rr) if obj.priority: request.set_Priority(obj.priority) try: response = self.client.do_action_with_exception(request) ret = json.loads(str(response, encoding='utf-8')) return {'code': 1, 'message': ret} except Exception as e: return {'code': 0, 'message': e}
def Ali_Edit_Parsing(key, secret, region, domain=None, **kwargs): try: client = AcsClient(key, secret, region) if kwargs['RecordId']: request = UpdateDomainRecordRequest() request.set_accept_format('json') request.set_RecordId(kwargs['RecordId']) else: request = AddDomainRecordRequest() request.set_accept_format('json') request.set_DomainName(domain) request.set_RR(kwargs['RR']) request.set_Type(kwargs['Type']) request.set_Value(kwargs['Value']) request.set_TTL(kwargs['TTL']) request.set_Line(kwargs['Line']) if kwargs['Priority']: request.set_Priority(int(kwargs['Priority'])) response = client.do_action_with_exception(request) data = {"code": 0, "data": response.decode(encoding='utf-8')} return data except Exception: return {"code": 1}