Merge pull request #2873 from usmangani1/Ec2_credit_spec
Implemented describe_instance_credit_specifications function in ec2 #…
This commit is contained in:
commit
79eea51bf4
@ -937,6 +937,12 @@ class InstanceBackend(object):
|
|||||||
value = getattr(instance, key)
|
value = getattr(instance, key)
|
||||||
return instance, value
|
return instance, value
|
||||||
|
|
||||||
|
def describe_instance_credit_specifications(self, instance_ids):
|
||||||
|
queried_instances = []
|
||||||
|
for instance in self.get_multi_instances_by_id(instance_ids):
|
||||||
|
queried_instances.append(instance)
|
||||||
|
return queried_instances
|
||||||
|
|
||||||
def all_instances(self, filters=None):
|
def all_instances(self, filters=None):
|
||||||
instances = []
|
instances = []
|
||||||
for reservation in self.all_reservations():
|
for reservation in self.all_reservations():
|
||||||
|
@ -168,6 +168,14 @@ class InstanceResponse(BaseResponse):
|
|||||||
|
|
||||||
return template.render(instance=instance, attribute=attribute, value=value)
|
return template.render(instance=instance, attribute=attribute, value=value)
|
||||||
|
|
||||||
|
def describe_instance_credit_specifications(self):
|
||||||
|
instance_ids = self._get_multi_param("InstanceId")
|
||||||
|
instance = self.ec2_backend.describe_instance_credit_specifications(
|
||||||
|
instance_ids
|
||||||
|
)
|
||||||
|
template = self.response_template(EC2_DESCRIBE_INSTANCE_CREDIT_SPECIFICATIONS)
|
||||||
|
return template.render(instances=instance)
|
||||||
|
|
||||||
def modify_instance_attribute(self):
|
def modify_instance_attribute(self):
|
||||||
handlers = [
|
handlers = [
|
||||||
self._dot_value_instance_attribute_handler,
|
self._dot_value_instance_attribute_handler,
|
||||||
@ -671,6 +679,18 @@ EC2_DESCRIBE_INSTANCE_ATTRIBUTE = """<DescribeInstanceAttributeResponse xmlns="h
|
|||||||
</{{ attribute }}>
|
</{{ attribute }}>
|
||||||
</DescribeInstanceAttributeResponse>"""
|
</DescribeInstanceAttributeResponse>"""
|
||||||
|
|
||||||
|
EC2_DESCRIBE_INSTANCE_CREDIT_SPECIFICATIONS = """<DescribeInstanceCreditSpecificationsResponse xmlns="http://ec2.amazonaws.com/doc/2016-11-15/">
|
||||||
|
<requestId>1b234b5c-d6ef-7gh8-90i1-j2345678901</requestId>
|
||||||
|
<instanceCreditSpecificationSet>
|
||||||
|
{% for instance in instances %}
|
||||||
|
<item>
|
||||||
|
<instanceId>{{ instance.id }}</instanceId>
|
||||||
|
<cpuCredits>standard</cpuCredits>
|
||||||
|
</item>
|
||||||
|
{% endfor %}
|
||||||
|
</instanceCreditSpecificationSet>
|
||||||
|
</DescribeInstanceCreditSpecificationsResponse>"""
|
||||||
|
|
||||||
EC2_DESCRIBE_INSTANCE_GROUPSET_ATTRIBUTE = """<DescribeInstanceAttributeResponse xmlns="http://ec2.amazonaws.com/doc/2013-10-15/">
|
EC2_DESCRIBE_INSTANCE_GROUPSET_ATTRIBUTE = """<DescribeInstanceAttributeResponse xmlns="http://ec2.amazonaws.com/doc/2013-10-15/">
|
||||||
<requestId>59dbff89-35bd-4eac-99ed-be587EXAMPLE</requestId>
|
<requestId>59dbff89-35bd-4eac-99ed-be587EXAMPLE</requestId>
|
||||||
<instanceId>{{ instance.id }}</instanceId>
|
<instanceId>{{ instance.id }}</instanceId>
|
||||||
|
@ -1166,6 +1166,21 @@ def test_describe_instance_status_with_instance_filter_deprecated():
|
|||||||
cm.exception.request_id.should_not.be.none
|
cm.exception.request_id.should_not.be.none
|
||||||
|
|
||||||
|
|
||||||
|
@mock_ec2
|
||||||
|
def test_describe_instance_credit_specifications():
|
||||||
|
conn = boto3.client("ec2", region_name="us-west-1")
|
||||||
|
|
||||||
|
# We want to filter based on this one
|
||||||
|
reservation = conn.run_instances(ImageId="ami-1234abcd", MinCount=1, MaxCount=1)
|
||||||
|
result = conn.describe_instance_credit_specifications(
|
||||||
|
InstanceIds=[reservation["Instances"][0]["InstanceId"]]
|
||||||
|
)
|
||||||
|
assert (
|
||||||
|
result["InstanceCreditSpecifications"][0]["InstanceId"]
|
||||||
|
== reservation["Instances"][0]["InstanceId"]
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@mock_ec2
|
@mock_ec2
|
||||||
def test_describe_instance_status_with_instance_filter():
|
def test_describe_instance_status_with_instance_filter():
|
||||||
conn = boto3.client("ec2", region_name="us-west-1")
|
conn = boto3.client("ec2", region_name="us-west-1")
|
||||||
|
Loading…
Reference in New Issue
Block a user