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)
|
||||
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):
|
||||
instances = []
|
||||
for reservation in self.all_reservations():
|
||||
|
@ -168,6 +168,14 @@ class InstanceResponse(BaseResponse):
|
||||
|
||||
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):
|
||||
handlers = [
|
||||
self._dot_value_instance_attribute_handler,
|
||||
@ -671,6 +679,18 @@ EC2_DESCRIBE_INSTANCE_ATTRIBUTE = """<DescribeInstanceAttributeResponse xmlns="h
|
||||
</{{ attribute }}>
|
||||
</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/">
|
||||
<requestId>59dbff89-35bd-4eac-99ed-be587EXAMPLE</requestId>
|
||||
<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
|
||||
|
||||
|
||||
@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
|
||||
def test_describe_instance_status_with_instance_filter():
|
||||
conn = boto3.client("ec2", region_name="us-west-1")
|
||||
|
Loading…
Reference in New Issue
Block a user