Repository: libcloud
Updated Branches:
  refs/heads/trunk 25c4d99b5 -> 2f7637e85


Added AWS EC2 c5 series

Closes #1147


Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/2f7637e8
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/2f7637e8
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/2f7637e8

Branch: refs/heads/trunk
Commit: 2f7637e85863d1a9272429c51830ae6063be40d3
Parents: 25c4d99
Author: Anthony Monthe <anthony.mon...@gmail.com>
Authored: Sun Dec 3 00:44:48 2017 +0000
Committer: Quentin Pradet <quent...@apache.org>
Committed: Mon Dec 18 08:50:25 2017 +0400

----------------------------------------------------------------------
 CHANGES.rst                       |  5 ++-
 libcloud/compute/drivers/ec2.py   | 78 ++++++++++++++++++++++++++++++++++
 libcloud/test/compute/test_ec2.py |  6 +--
 3 files changed, 85 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/2f7637e8/CHANGES.rst
----------------------------------------------------------------------
diff --git a/CHANGES.rst b/CHANGES.rst
index deb451e..2f3b495 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -28,7 +28,10 @@ Compute
   [Mika Lackman, Ilari Mäkelä]
 
 - [EC2] Add new x1.16xlarge and x1e.32xlarge instance type. (GITHUB-1101)
-  [@zulupro]
+  [Anthony Monthe]
+
+- [EC2] Add AWS EC2 c5 series (GITHUB-1147)
+  [Anthony Monthe]
 
 - [EC2] Update pricing information for EC2 instances.
   [Tomaz Muraus]

http://git-wip-us.apache.org/repos/asf/libcloud/blob/2f7637e8/libcloud/compute/drivers/ec2.py
----------------------------------------------------------------------
diff --git a/libcloud/compute/drivers/ec2.py b/libcloud/compute/drivers/ec2.py
index 7ea29fa..c6d5065 100644
--- a/libcloud/compute/drivers/ec2.py
+++ b/libcloud/compute/drivers/ec2.py
@@ -497,6 +497,66 @@ INSTANCE_TYPES = {
             'cpu': 32
         }
     },
+    'c5.large': {
+        'id': 'c5.large',
+        'name': 'Compute Optimized Large Instance',
+        'ram': GiB(4),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 2
+        }
+    },
+    'c5.xlarge': {
+        'id': 'c5.xlarge',
+        'name': 'Compute Optimized Extra Large Instance',
+        'ram': GiB(8),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 4
+        }
+    },
+    'c5.2xlarge': {
+        'id': 'c5.2xlarge',
+        'name': 'Compute Optimized Double Extra Large Instance',
+        'ram': GiB(16),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 8
+        }
+    },
+    'c5.4xlarge': {
+        'id': 'c5.4xlarge',
+        'name': 'Compute Optimized Quadruple Extra Large Instance',
+        'ram': GiB(32),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 16
+        }
+    },
+    'c5.9xlarge': {
+        'id': 'c5.9xlarge',
+        'name': 'Compute Optimized Nonuple Extra Large Instance',
+        'ram': GiB(72),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 36
+        }
+    },
+    'c5.18xlarge': {
+        'id': 'c5.18xlarge',
+        'name': 'Compute Optimized Eighteen Extra Large Instance',
+        'ram': GiB(144),
+        'disk': 0,  # EBS only
+        'bandwidth': None,
+        'extra': {
+            'cpu': 72
+        }
+    },
     'cr1.8xlarge': {
         'id': 'cr1.8xlarge',
         'name': 'High Memory Cluster Eight Extra Large',
@@ -922,6 +982,12 @@ REGION_DETAILS = {
             'c4.2xlarge',
             'c4.4xlarge',
             'c4.8xlarge',
+            'c5.large',
+            'c5.xlarge',
+            'c5.2xlarge',
+            'c5.4xlarge',
+            'c5.9xlarge',
+            'c5.18xlarge',
             'cg1.4xlarge',
             'g2.2xlarge',
             'g2.8xlarge',
@@ -1007,6 +1073,12 @@ REGION_DETAILS = {
             'c4.2xlarge',
             'c4.4xlarge',
             'c4.8xlarge',
+            'c5.large',
+            'c5.xlarge',
+            'c5.2xlarge',
+            'c5.4xlarge',
+            'c5.9xlarge',
+            'c5.18xlarge',
             'i2.xlarge',
             'i2.2xlarge',
             'i2.4xlarge',
@@ -1240,6 +1312,12 @@ REGION_DETAILS = {
             'c4.2xlarge',
             'c4.4xlarge',
             'c4.8xlarge',
+            'c5.large',
+            'c5.xlarge',
+            'c5.2xlarge',
+            'c5.4xlarge',
+            'c5.9xlarge',
+            'c5.18xlarge',
             'hs1.8xlarge',
             'cc2.8xlarge',
             'i2.xlarge',

http://git-wip-us.apache.org/repos/asf/libcloud/blob/2f7637e8/libcloud/test/compute/test_ec2.py
----------------------------------------------------------------------
diff --git a/libcloud/test/compute/test_ec2.py 
b/libcloud/test/compute/test_ec2.py
index f0409ed..0c96a53 100644
--- a/libcloud/test/compute/test_ec2.py
+++ b/libcloud/test/compute/test_ec2.py
@@ -448,13 +448,13 @@ class EC2Tests(LibcloudTestCase, TestCaseMixin):
                 self.assertTrue('m2.4xlarge' in ids)
 
             if region_name == 'us-east-1':
-                self.assertEqual(len(sizes), 72)
+                self.assertEqual(len(sizes), 78)
                 self.assertTrue('cg1.4xlarge' in ids)
                 self.assertTrue('cc2.8xlarge' in ids)
                 self.assertTrue('cr1.8xlarge' in ids)
                 self.assertTrue('x1.32xlarge' in ids)
             elif region_name == 'us-west-1':
-                self.assertEqual(len(sizes), 61)
+                self.assertEqual(len(sizes), 67)
             if region_name == 'us-west-2':
                 self.assertEqual(len(sizes), 73)
             elif region_name == 'ap-southeast-1':
@@ -462,7 +462,7 @@ class EC2Tests(LibcloudTestCase, TestCaseMixin):
             elif region_name == 'ap-southeast-2':
                 self.assertEqual(len(sizes), 63)
             elif region_name == 'eu-west-1':
-                self.assertEqual(len(sizes), 70)
+                self.assertEqual(len(sizes), 76)
             elif region_name == 'ap-south-1':
                 self.assertEqual(len(sizes), 41)
 

Reply via email to