ShK*_*ShK 2 python-2.7 amazon-route53 aws-cli boto3
我花了一周的时间尝试使用 Boto3 v1.10.39 删除/更新插入简单的 Route 53 资源记录。
resp=r53_client.change_resource_record_sets(
HostedZoneId=<ZONE_ID>,
ChangeBatch={
'Comment': 'del_ip',
'Changes': [
{
'Action': 'DELETE',
'ResourceRecordSet': {
'Name': <SUBDOMAIN>,
'Type': 'A',
'Region': 'us-east-1',
'TTL': 300,
'ResourceRecords': [{'Value': <OLD_IP>}]
}
}
]
}
)
Run Code Online (Sandbox Code Playgroud)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/botocore/client.py", line 272, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/usr/lib/python2.7/dist-packages/botocore/client.py", line 576, in _make_api_call
raise error_class(parsed_response, operation_name)
botocore.errorfactory.InvalidInput: An error occurred (InvalidInput) when calling the ChangeResourceRecordSets operation: Invalid request: Missing field 'SetIdentifier' in Change with [Action=DELETE, Name=<SUBDOMAIN>., Type=A, SetIdentifier=null]
Run Code Online (Sandbox Code Playgroud)
我已经阅读了所有可能的文档(Boto3、AWSCLI、AWS 开发人员指南),仅当它不是简单的 RR(加权、多值、故障转移等)时才需要“SetIdentifier”字段:
尝试使用 AWS CLI 进行相同的操作,与使用 Boto3 调用时出现相同的错误。
我想知道这是否是 AWS API 的错误。
在 Boto3 github 中创建了一个问题,并从他们那里得到了帮助,说删除“Region”属性将解决我的问题,一旦我这样做,它对我的代码来说就像一个魅力。
resp=r53_client.change_resource_record_sets(
HostedZoneId=<ZONE_ID>,
ChangeBatch={
'Comment': 'del_ip',
'Changes': [
{
'Action': 'DELETE',
'ResourceRecordSet': {
'Name': <SUBDOMAIN>,
'Type': 'A',
'TTL': 300,
'ResourceRecords': [{'Value': <OLD_IP>}]
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
)
| 归档时间: |
|
| 查看次数: |
1889 次 |
| 最近记录: |