amazon-pricing 0.1.97 → 0.1.98
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/Gemfile +1 -0
- data/lib/amazon-pricing/definitions/ec2-instance-type.rb +2 -1
- data/lib/amazon-pricing/definitions/instance-type.rb +7 -5
- data/lib/amazon-pricing/ec2-dhi-price-list.rb +6 -1
- data/lib/amazon-pricing/helpers/instance-type.rb +2 -1
- data/lib/amazon-pricing/version.rb +1 -1
- data/solano.yml +4 -0
- data/spec/lib/amazon-pricing/ec2_dh_pricing_spec.rb +0 -1
- data/spec/spec_helper.rb +3 -0
- data/test/ec2_instance_types_test.rb +16 -13
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTczM2E3YTRhYmRjNTZjZjQzMTMzYjk4YzY5MzQ2OWNlYTFkODA2Mw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NTI3NDM1MTM4MTI4M2Y4OWZmNjY3MzM1ZDk4OWEzZTlhMGFlZDBlYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZDk5MjczY2ZmZmM5NzBhZjExYTI3ZWI0MjIyMmMxYTk0MWYyNDQwOGRiZTY4
|
10
|
+
NDZkOWQ5ZThhYTc1NDFkYzU5YTAxYTgwNzRlMWI4MDdhODQ1ZWQ1ZDU5NzYz
|
11
|
+
NDkyN2E1ZTUwNjE0YmRjMmY0MjFlNzQwNGUxOTFkZjRjZjllNDk=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MTRkYjc2MDY5MDM3M2E2OGNjM2UyNzU4OTA2N2UwMWNiYzFiY2M3NjUwOGQy
|
14
|
+
NGY3NTlmYzc2NTU4OGFkNDQwZWVmYmIzZTU4NTE4OGM0MzA0NmRiOWRlMDYz
|
15
|
+
MGJkOGE3NjI0YzRmNzE4MjRkNmM3MGQ2MzUyYTgzOGRkODdmOGM=
|
data/Gemfile
CHANGED
@@ -311,7 +311,8 @@ module AwsPricing
|
|
311
311
|
't2.xlarge' => :high, # same as c4.2xlarge, cf:https://aws.amazon.com/blogs/aws/new-t2-xlarge-and-t2-2xlarge-instances/
|
312
312
|
't2.2xlarge' => :high, # same as m4.xlarge, cf:https://aws.amazon.com/blogs/aws/new-t2-xlarge-and-t2-2xlarge-instances/
|
313
313
|
'x1.16xlarge' => :ten_gigabit,
|
314
|
-
'x1.32xlarge' => :
|
314
|
+
'x1.32xlarge' => :twenty_gigabit,
|
315
|
+
'x1e.32xlarge' => :twenty_gigabit,
|
315
316
|
}
|
316
317
|
|
317
318
|
end
|
@@ -208,6 +208,7 @@ module AwsPricing
|
|
208
208
|
'c4.large' => 'Compute Optimized Large', 'c4.xlarge' => 'Compute Optimized Extra Large', 'c4.2xlarge' => 'Compute Optimized Double Extra Large', 'c4.4xlarge' => 'Compute Optimized Quadruple Extra Large', 'c4.8xlarge' => 'Compute Optimized Eight Extra Large',
|
209
209
|
'x1.16xlarge' => 'Memory Optimized Hextuple Large-scale Enterprise-class',
|
210
210
|
'x1.32xlarge' => 'Memory Optimized Large-scale Enterprise-class',
|
211
|
+
'x1e.32xlarge' => 'Memory Optimized Extended Large-scale Enterprise-class',
|
211
212
|
'f1.2xlarge' => 'FPGA Hardware Acceleration Double Extra Large', 'f1.16xlarge' => 'FPGA Hardware Acceleration Hextuple Extra Large'
|
212
213
|
}
|
213
214
|
@@Disk_Lookup = {
|
@@ -235,7 +236,7 @@ module AwsPricing
|
|
235
236
|
'r4.large' => 0, 'r4.xlarge' => 0, 'r4.2xlarge' => 0, 'r4.4xlarge' => 0, 'r4.8xlarge' => 0, 'r4.16xlarge' => 0,
|
236
237
|
't2.nano' => 0, 't2.micro' => 0, 't2.small' => 0, 't2.medium' => 0, 't2.large' => 0, 't2.xlarge' => 0, 't2.2xlarge' => 0,
|
237
238
|
'c4.large' => 0, 'c4.xlarge' => 0, 'c4.2xlarge' => 0, 'c4.4xlarge' => 0, 'c4.8xlarge' => 0,
|
238
|
-
'x1.16xlarge' =>
|
239
|
+
'x1.16xlarge' => 1920, 'x1.32xlarge' => 3840, 'x1e.32xlarge' => 3840,
|
239
240
|
'p2.xlarge' => 0, 'p2.8xlarge' => 0, 'p2.16xlarge' => 0,
|
240
241
|
'f1.2xlarge' => 470, 'f1.16xlarge' => 3760,
|
241
242
|
}
|
@@ -264,7 +265,7 @@ module AwsPricing
|
|
264
265
|
'r4.large' => 64, 'r4.xlarge' => 64, 'r4.2xlarge' => 64, 'r4.4xlarge' => 64, 'r4.8xlarge' => 64, 'r4.16xlarge' => 64,
|
265
266
|
't2.nano' => 64, 't2.micro' => 64, 't2.small' => 64, 't2.medium' => 64, 't2.large' => 64, 't2.xlarge' => 64, 't2.2xlarge' => 64,
|
266
267
|
'c4.large' => 64, 'c4.xlarge' => 64, 'c4.2xlarge' => 64, 'c4.4xlarge' => 64, 'c4.8xlarge' => 64,
|
267
|
-
'x1.16xlarge' => 64, 'x1.32xlarge' => 64,
|
268
|
+
'x1.16xlarge' => 64, 'x1.32xlarge' => 64, 'x1e.32xlarge' => 64,
|
268
269
|
'p2.xlarge' => 64, 'p2.8xlarge' => 64, 'p2.16xlarge' => 64,
|
269
270
|
}
|
270
271
|
@@Disk_Type_Lookup = {
|
@@ -293,7 +294,7 @@ module AwsPricing
|
|
293
294
|
'r4.large' => :ebs, 'r4.xlarge' => :ebs, 'r4.2xlarge' => :ebs, 'r4.4xlarge' => :ebs, 'r4.8xlarge' => :ebs, 'r4.16xlarge' => :ebs,
|
294
295
|
't2.nano' => :ebs, 't2.micro' => :ebs, 't2.small' => :ebs, 't2.medium' => :ebs, 't2.large' => :ebs, 't2.xlarge' => :ebs, 't2.2xlarge' => :ebs,
|
295
296
|
'c4.large' => :ebs, 'c4.xlarge' => :ebs, 'c4.2xlarge' => :ebs, 'c4.4xlarge' => :ebs, 'c4.8xlarge' => :ebs,
|
296
|
-
'x1.16xlarge' => :ssd, 'x1.32xlarge' => :ssd,
|
297
|
+
'x1.16xlarge' => :ssd, 'x1.32xlarge' => :ssd, 'x1e.32xlarge' => :ssd,
|
297
298
|
'p2.xlarge' => :ebs, 'p2.8xlarge' => :ebs, 'p2.16xlarge' => :ebs,
|
298
299
|
'f1.2xlarge' => :ssd, 'f1.16xlarge' => :ssd,
|
299
300
|
}
|
@@ -447,8 +448,9 @@ module AwsPricing
|
|
447
448
|
# t2.small is EBS-only
|
448
449
|
# t2.xlarge is EBS-only
|
449
450
|
# t2.2xlarge is EBS-only
|
450
|
-
'x1.16xlarge' => [
|
451
|
-
'x1.32xlarge' => [
|
451
|
+
'x1.16xlarge' => [7000, 105123], # dedicated EBS bw 7000 Gbps
|
452
|
+
'x1.32xlarge' => [14000, 210246], # dedicated EBS bw 14000 Gbps
|
453
|
+
'x1e.32xlarge' => [14000, 210246], # dedicated EBS bw 14000 Gbps
|
452
454
|
}
|
453
455
|
end
|
454
456
|
|
@@ -29,7 +29,8 @@ module AwsPricing
|
|
29
29
|
'm4' => { "large"=>22, "xlarge"=>11, "2xlarge"=>5, "4xlarge"=>4, "10xlarge"=>1, "16xlarge"=>1 },
|
30
30
|
'i2' => { "xlarge"=>8, "2xlarge"=>4, "4xlarge"=>2, "8xlarge"=>1, "16xlarge"=>1 },
|
31
31
|
'i3' => { "large"=>32, "xlarge"=>16, "2xlarge"=>8, "4xlarge"=>4, "8xlarge"=>2, "16xlarge"=>1 },
|
32
|
-
'x1' => { "16xlarge"=>2, "32xlarge"=>1 }
|
32
|
+
'x1' => { "16xlarge"=>2, "32xlarge"=>1 },
|
33
|
+
'x1e' => { "32xlarge"=>1 },
|
33
34
|
}
|
34
35
|
|
35
36
|
def get_ec2_dhi_od_pricing
|
@@ -57,6 +58,10 @@ module AwsPricing
|
|
57
58
|
|
58
59
|
# hack for now until I can get capacity for fpga instances
|
59
60
|
next if family == 'f1'
|
61
|
+
if @@CAPACITY_HASH[family].nil?
|
62
|
+
$stderr.puts "[fetch_ec2_dedicated_host_instance_pricing] WARNING: unable to find CAPACITY_HASH for #{family}"
|
63
|
+
next
|
64
|
+
end
|
60
65
|
|
61
66
|
dhprice = tier['prices']['USD']
|
62
67
|
@@CAPACITY_HASH[family].each do |inst_size,capacity|
|
@@ -31,7 +31,8 @@ module AwsPricing
|
|
31
31
|
'CurrentGen' => {
|
32
32
|
'R3' => ['r3.large', 'r3.xlarge', 'r3.2xlarge', 'r3.4xlarge', 'r3.8xlarge'],
|
33
33
|
'R4' => ['r4.large', 'r4.xlarge', 'r4.2xlarge', 'r4.4xlarge', 'r4.8xlarge', 'r4.16xlarge'],
|
34
|
-
'X1' => ['x1.16xlarge', 'x1.32xlarge']
|
34
|
+
'X1' => ['x1.16xlarge', 'x1.32xlarge'],
|
35
|
+
'X1E' => ['x1e.32xlarge'],
|
35
36
|
},
|
36
37
|
'PreviousGen' => {
|
37
38
|
'M2' => ['m2.xlarge', 'm2.2xlarge', 'm2.4xlarge'],
|
data/solano.yml
ADDED
@@ -9,7 +9,6 @@ describe AwsPricing::Ec2DedicatedHostPriceList do
|
|
9
9
|
def validate_price_in_region region
|
10
10
|
# Result have valid node name
|
11
11
|
region.ec2_dh_types.each do |dh_type|
|
12
|
-
expect(dh_type.api_name).to have(2).characters
|
13
12
|
expect(dh_type.region.ec2_dh_types[0].category_types[:linux].name).to eq(:linux)
|
14
13
|
expect(dh_type.region.ec2_dh_types[0].category_types[:linux].ondemand_price_per_hour.class).to eq(Float)
|
15
14
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -105,12 +105,13 @@ class TestEc2InstanceTypes < Test::Unit::TestCase
|
|
105
105
|
# next two prices are no longer provided by aws (May 09, 2016)
|
106
106
|
assert region.ebs_price.standard_per_gb == 0.05
|
107
107
|
assert region.ebs_price.standard_per_million_io == 0.05
|
108
|
-
|
109
|
-
assert region.ebs_price.
|
108
|
+
# preferred_per_gb,preferred_per_ios,ssd_per_gb,ebs_optimized_hdd_per_gb,ebs_cold_hdd_per_gb not always provided by aws (2017-09-17)
|
109
|
+
assert region.ebs_price.preferred_per_gb == 0.125 if region.ebs_price.preferred_per_gb
|
110
|
+
assert region.ebs_price.preferred_per_iops == 0.065 if region.ebs_price.preferred_per_iops
|
110
111
|
assert region.ebs_price.s3_snaps_per_gb == 0.05
|
111
112
|
# next two prices were added by aws (May 09, 2016)
|
112
|
-
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.045
|
113
|
-
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.025
|
113
|
+
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.045 if region.ebs_price.ebs_optimized_hdd_per_gb
|
114
|
+
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.025 if region.ebs_price.ebs_cold_hdd_per_gb
|
114
115
|
|
115
116
|
end
|
116
117
|
|
@@ -120,10 +121,11 @@ class TestEc2InstanceTypes < Test::Unit::TestCase
|
|
120
121
|
# next two prices are no longer provided by aws (May 09, 2016)
|
121
122
|
assert_not_nil region.ebs_price.standard_per_gb
|
122
123
|
assert_not_nil region.ebs_price.standard_per_million_io
|
123
|
-
|
124
|
-
assert_not_nil region.ebs_price.
|
125
|
-
assert_not_nil region.ebs_price.
|
126
|
-
assert_not_nil region.ebs_price.
|
124
|
+
# preferred_per_gb,preferred_per_ios,ssd_per_gb,ebs_optimized_hdd_per_gb,ebs_cold_hdd_per_gb not always provided by aws (2017-09-17)
|
125
|
+
assert_not_nil region.ebs_price.preferred_per_gb if region.ebs_price.preferred_per_gb
|
126
|
+
assert_not_nil region.ebs_price.preferred_per_iops if region.ebs_price.preferred_per_iops
|
127
|
+
assert_not_nil region.ebs_price.ebs_optimized_hdd_per_gb if region.ebs_price.ebs_optimized_hdd_per_gb
|
128
|
+
assert_not_nil region.ebs_price.ebs_cold_hdd_per_gb if region.ebs_price.ebs_cold_hdd_per_gb
|
127
129
|
assert_not_nil region.ebs_price.s3_snaps_per_gb
|
128
130
|
end
|
129
131
|
end
|
@@ -199,13 +201,14 @@ class TestEc2InstanceTypes < Test::Unit::TestCase
|
|
199
201
|
region = @@ec2_pricing.get_region('us-gov-west-1')
|
200
202
|
# next two prices are no longer provided by aws (May 09, 2016)
|
201
203
|
assert region.ebs_price.standard_per_gb == 0.065
|
202
|
-
|
203
|
-
|
204
|
-
assert region.ebs_price.
|
204
|
+
assert region.ebs_price.standard_per_million_io == 0.065
|
205
|
+
# preferred_per_gb,preferred_per_ios,ssd_per_gb,ebs_optimized_hdd_per_gb,ebs_cold_hdd_per_gb not always provided by aws (2017-09-17)
|
206
|
+
assert region.ebs_price.preferred_per_gb == 0.15 if region.ebs_price.preferred_per_gb
|
207
|
+
assert region.ebs_price.preferred_per_iops == 0.078 if region.ebs_price.preferred_per_iops
|
205
208
|
assert region.ebs_price.s3_snaps_per_gb == 0.066
|
206
209
|
# next two prices were added by aws (May 09, 2016)
|
207
|
-
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.054
|
208
|
-
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.03
|
210
|
+
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.054 if region.ebs_price.ebs_optimized_hdd_per_gb
|
211
|
+
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.03 if region.ebs_price.ebs_cold_hdd_per_gb
|
209
212
|
|
210
213
|
end
|
211
214
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: amazon-pricing
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.98
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joe Kinsella
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-09-19 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A Ruby library for retrieving pricing for Amazon Web Services
|
14
14
|
email:
|
@@ -54,6 +54,7 @@ files:
|
|
54
54
|
- lib/amazon-pricing/helpers/instance-type.rb
|
55
55
|
- lib/amazon-pricing/rds-price-list.rb
|
56
56
|
- lib/amazon-pricing/version.rb
|
57
|
+
- solano.yml
|
57
58
|
- spec/lib/amazon-pricing/definitions/database-type_spec.rb
|
58
59
|
- spec/lib/amazon-pricing/ec2_dh_pricing_spec.rb
|
59
60
|
- spec/lib/amazon-pricing/ec2_dhi_pricing_spec.rb
|