amazon-pricing 0.1.84 → 0.1.85
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/Gemfile.lock +1 -2
- data/lib/amazon-pricing/definitions/database-type.rb +13 -14
- data/lib/amazon-pricing/definitions/rds-instance-type.rb +6 -2
- data/lib/amazon-pricing/rds-price-list.rb +24 -8
- data/lib/amazon-pricing/version.rb +1 -1
- data/test/ec2_instance_types_test.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MjdiNjM2NzdlYWNjYjFlZDJiNTAyNmM5YzhkYzBmYjQwYTZjYjM1NA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZWJmNGNlMTdlOGZhMTE4Y2U4YTRkMmQ3Y2FmN2JjNWRiY2YzNTcyMg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZWNkMWRiYTgxNjcxZTczZjM3Mzk4ODRhOGFhMmI4YjQwYjQxYTVmYzI3MDFk
|
10
|
+
NDgzMDg0NmQ4M2YxOTg0ODljNjc1ZGExMzAyYTAyZjZhMzRhNDE0MjE1NDhk
|
11
|
+
NDdlYTVkNDljMDgzYTMyMWMwYzlkNWVmNmMwOWYzMDNlYjA5MDg=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YmJkYzQ3ZGE3MWU1YTA1NWYwMjMwMTg4ZmIwOGRmOTczNmU2Njk4NzMxYjQ3
|
14
|
+
N2FmMzk3NGQxNDljY2E5YjJjNzU2NDZkYTBlZjY3ZGY2N2IxN2ZhYjRkNzJj
|
15
|
+
MzRhODM0ZGY3NzA2NWQ5ZDkwN2ZlMzI4ZTZjNTFkODllODY2ZmU=
|
data/Gemfile.lock
CHANGED
@@ -40,6 +40,8 @@ module AwsPricing
|
|
40
40
|
'mariadb_standard' => 'MariaDB',
|
41
41
|
'mariadb_multiaz' => 'MariaDB (Multi-AZ)',
|
42
42
|
|
43
|
+
'oracle_se2_standard' => 'Oracle Database Standard Edition Two',
|
44
|
+
'oracle_se2_multiaz' => 'Oracle Database Standard Edition Two (Multi-AZ)',
|
43
45
|
# Oracle SE2 BYOL prices are copied from Enterprise BYOL prices and not collected
|
44
46
|
# (so no need to add rds-price-list.rb)
|
45
47
|
'oracle_se2_byol' => 'Oracle Database Standard Edition Two (BYOL)',
|
@@ -55,14 +57,18 @@ module AwsPricing
|
|
55
57
|
'postgres_multiaz' => 'postgresql_multiaz',
|
56
58
|
'postgresql' => 'postgresql_standard',
|
57
59
|
'postgresql_multiaz' => 'postgresql_multiaz',
|
58
|
-
'oracle-se1(li)' => 'oracle_se1_standard',
|
59
|
-
'oracle-se1(byol)' => 'oracle_se1_byol',
|
60
|
-
'oracle-se1(li)_multiaz' => 'oracle_se1_multiaz',
|
61
|
-
'oracle-se1(byol)_multiaz' => 'oracle_se1_byol_multiaz',
|
62
60
|
'oracle-se(byol)' => 'oracle_se_byol',
|
63
|
-
'oracle-ee(byol)' => 'oracle_ee_byol',
|
64
61
|
'oracle-se(byol)_multiaz' => 'oracle_se_byol_multiaz',
|
62
|
+
'oracle-ee(byol)' => 'oracle_ee_byol',
|
65
63
|
'oracle-ee(byol)_multiaz' => 'oracle_ee_byol_multiaz',
|
64
|
+
'oracle-se1(li)' => 'oracle_se1_standard',
|
65
|
+
'oracle-se1(li)_multiaz' => 'oracle_se1_multiaz',
|
66
|
+
'oracle-se1(byol)' => 'oracle_se1_byol',
|
67
|
+
'oracle-se1(byol)_multiaz' => 'oracle_se1_byol_multiaz',
|
68
|
+
'oracle-se2(li)' => 'oracle_se2_standard',
|
69
|
+
'oracle-se2(li)_multiaz' => 'oracle_se2_multiaz',
|
70
|
+
'oracle-se2(byol)' => 'oracle_se2_byol',
|
71
|
+
'oracle-se2(byol)_multiaz' => 'oracle_se2_byol_multiaz',
|
66
72
|
'sqlserver-ee(byol)' => 'sqlserver_ee_byol',
|
67
73
|
'sqlserver-ee(byol)_multiaz' => 'sqlserver_ee_byol_multiaz',
|
68
74
|
'sqlserver-ee(li)' => 'sqlserver_ee_standard',
|
@@ -76,26 +82,19 @@ module AwsPricing
|
|
76
82
|
'aurora' => 'aurora_standard',
|
77
83
|
'mariadb' => 'mariadb_standard',
|
78
84
|
'mariadb_multiaz' => 'mariadb_multiaz',
|
79
|
-
|
80
|
-
# Oracle SE2 BYOL prices are copied from Enterprise BYOL prices and not collected
|
81
|
-
# (so no need to add rds-price-list.rb)
|
82
|
-
'oracle-se2(byol)' => 'oracle_se2_byol',
|
83
|
-
'oracle-se2(byol)_multiaz' => 'oracle_se2_byol_multiaz',
|
84
85
|
}
|
85
86
|
|
86
87
|
@@DB_Deploy_Types = {
|
87
88
|
:mysql => [:standard, :multiaz],
|
88
89
|
:postgresql => [:standard, :multiaz],
|
89
90
|
:oracle_se1 => [:standard, :multiaz, :byol, :byol_multiaz],
|
91
|
+
:oracle_se2 => [:standard, :multiaz, :byol, :byol_multiaz],
|
90
92
|
:oracle_se => [:byol, :byol_multiaz],
|
91
93
|
:oracle_ee => [:byol, :byol_multiaz],
|
92
94
|
:sqlserver_se => [:standard, :multiaz, :byol, :byol_multiaz],
|
93
95
|
:sqlserver_ee => [:byol, :byol_multiaz, :standard, :multiaz],
|
94
96
|
:aurora => [:standard],
|
95
97
|
:mariadb => [:standard, :multiaz],
|
96
|
-
|
97
|
-
# oracle_se2 prices are copied, not collected
|
98
|
-
:oracle_se2 => [:byol, :byol_multiaz],
|
99
98
|
}
|
100
99
|
|
101
100
|
def self.display_name(name)
|
@@ -105,7 +104,7 @@ module AwsPricing
|
|
105
104
|
def self.get_database_name
|
106
105
|
[:mysql, :postgresql, :oracle_se1, :oracle_se, :oracle_ee, :sqlserver_ex, :sqlserver_web,
|
107
106
|
:sqlserver_se, :sqlserver_ee, :aurora, :mariadb,
|
108
|
-
:oracle_se2 # oracle_se2 prices are
|
107
|
+
:oracle_se2 # oracle_se2 license included prices are collected, and BYOL prices are copied from oracle_se
|
109
108
|
]
|
110
109
|
end
|
111
110
|
|
@@ -85,8 +85,10 @@ module AwsPricing
|
|
85
85
|
end
|
86
86
|
end
|
87
87
|
end
|
88
|
-
# Copy prices from oracle_se to
|
88
|
+
# Copy byol prices from oracle_se to oracle_{ee,se1,se2}
|
89
89
|
if database_type == :oracle_se && is_byol
|
90
|
+
update_pricing :oracle_ee, type_of_instance, json, is_multi_az, is_byol
|
91
|
+
update_pricing :oracle_se1, type_of_instance, json, is_multi_az, is_byol
|
90
92
|
update_pricing :oracle_se2, type_of_instance, json, is_multi_az, is_byol
|
91
93
|
end
|
92
94
|
end
|
@@ -126,8 +128,10 @@ module AwsPricing
|
|
126
128
|
# Do nothing for other names
|
127
129
|
end
|
128
130
|
end
|
129
|
-
# Copy prices from oracle_se to
|
131
|
+
# Copy byol prices from oracle_se to oracle_{ee,se1,se2}
|
130
132
|
if database_type == :oracle_se && is_byol
|
133
|
+
update_pricing_new :oracle_ee, type_of_instance, prices, term, is_multi_az, is_byol
|
134
|
+
update_pricing_new :oracle_se1, type_of_instance, prices, term, is_multi_az, is_byol
|
131
135
|
update_pricing_new :oracle_se2, type_of_instance, prices, term, is_multi_az, is_byol
|
132
136
|
end
|
133
137
|
end
|
@@ -20,9 +20,15 @@ module AwsPricing
|
|
20
20
|
:mysql => {:mysql=>["standard","multiAZ"]},
|
21
21
|
:postgresql => {:postgresql=>["standard","multiAZ"]},
|
22
22
|
:oracle => {
|
23
|
-
:
|
24
|
-
:
|
25
|
-
:
|
23
|
+
# AWS: Oracle - Enterprise Edition, Standard Edition Two, Standard Edition, Standard Edition One.
|
24
|
+
# License Included Charges supported: Standard Edition One, Standard Edition Two
|
25
|
+
# BYOL Charges supported: do not vary by edition for BYOL Amazon RDS pricing.
|
26
|
+
# NB: since we explicitly copy Oracle BYOL RdsInstanceType.update_pricing_new, repeated BYOL is redundant here;
|
27
|
+
# only '#{db}' is used to build the URL, so repeated '#{db_type}' is like copying
|
28
|
+
:oracle_se =>["byol-standard", "byol-multiAZ"],
|
29
|
+
#:oracle_ee =>["byol-standard", "byol-multiAZ"], # byol is same, so copied
|
30
|
+
:oracle_se1=>["li-standard", "li-multiAZ"], # byol is same, so copied
|
31
|
+
:oracle_se2=>["se2-li-standard", "se2-li-multiAZ"] # byol is same, so copied
|
26
32
|
},
|
27
33
|
:sqlserver => {
|
28
34
|
:sqlserver_ex=>["li-ex"],
|
@@ -40,24 +46,34 @@ module AwsPricing
|
|
40
46
|
}
|
41
47
|
|
42
48
|
# the following cli will extract all the URLs referenced on the AWS pricing page that fetch_reserved_rds_instance_pricing2 uses:
|
43
|
-
# curl
|
49
|
+
# curl https://aws.amazon.com/rds/pricing/ 2>/dev/null | grep 'model' |grep reserved-instances
|
50
|
+
# NB: the URL is built using '#{db_str}-#{deploy_type}', so repeats for 'db' below are required
|
44
51
|
@@RESERVED_DB_DEPLOY_TYPE2 = {
|
45
52
|
:mysql => {:mysql=>["standard","multiAZ"]},
|
46
53
|
:postgresql => {:postgresql=>["standard","multiAZ"]},
|
47
|
-
:oracle => {
|
48
|
-
|
54
|
+
:oracle => {
|
55
|
+
# AWS: Oracle - Enterprise Edition, Standard Edition Two, Standard Edition, Standard Edition One.
|
56
|
+
# License Included Charges supported: Standard Edition One, Standard Edition Two
|
57
|
+
# BYOL Charges supported: do not vary by edition for BYOL Amazon RDS pricing.
|
58
|
+
:oracle_se =>["byol-standard", "byol-multiAZ"],
|
59
|
+
# oracle_ee is not here (nor collected), see RESERVED_DB_WITH_SAME_PRICING2 below
|
60
|
+
# :oracle_se =>["byol-standard", "byol-multiAZ"], # again, note only byol (so not needed)
|
61
|
+
:oracle_se1=>["license-included-standard", "license-included-multiAZ"],
|
62
|
+
:oracle_se2=>["license-included-standard", "license-included-multiAZ"]
|
63
|
+
},
|
49
64
|
:sqlserver => {
|
50
65
|
:sqlserver_ex =>["license-included-standard"],
|
51
|
-
:sqlserver_web=>["license-included-standard"],
|
66
|
+
:sqlserver_web=>["license-included-standard", "license-included-multiAZ"],
|
52
67
|
:sqlserver_se =>["byol-standard", "byol-multiAZ", "license-included-standard", "license-included-multiAZ"],
|
53
68
|
:sqlserver_ee =>["byol-standard", "byol-multiAZ", "license-included-standard", "license-included-multiAZ"]},
|
54
|
-
:aurora => {:aurora => ["multiAZ"]},
|
69
|
+
:aurora => {:aurora => ["standard", "multiAZ"]},
|
55
70
|
:mariadb => {:mariadb => ["standard", "multiAZ"]}
|
56
71
|
}
|
57
72
|
|
58
73
|
@@RESERVED_DB_WITH_SAME_PRICING2 = {
|
59
74
|
:mysql => [:mysql],
|
60
75
|
:postgresql => [:postgresql],
|
76
|
+
:oracle_se2 => [:oracle_se2],
|
61
77
|
:oracle_se1 => [:oracle_se1],
|
62
78
|
:oracle_se => [:oracle_se, :oracle_ee],
|
63
79
|
:sqlserver_ex => [:sqlserver_ex],
|
@@ -94,7 +94,7 @@ class TestEc2InstanceTypes < Test::Unit::TestCase
|
|
94
94
|
assert region.ebs_price.standard_per_million_io == 0.05
|
95
95
|
assert region.ebs_price.preferred_per_gb == 0.125
|
96
96
|
assert region.ebs_price.preferred_per_iops == 0.065
|
97
|
-
assert region.ebs_price.s3_snaps_per_gb == 0.
|
97
|
+
assert region.ebs_price.s3_snaps_per_gb == 0.05
|
98
98
|
# next two prices were added by aws (May 09, 2016)
|
99
99
|
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.045
|
100
100
|
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.025
|
@@ -189,7 +189,7 @@ class TestEc2InstanceTypes < Test::Unit::TestCase
|
|
189
189
|
assert region.ebs_price.standard_per_million_io == 0.065
|
190
190
|
assert region.ebs_price.preferred_per_gb == 0.15
|
191
191
|
assert region.ebs_price.preferred_per_iops == 0.078
|
192
|
-
assert region.ebs_price.s3_snaps_per_gb == 0.
|
192
|
+
assert region.ebs_price.s3_snaps_per_gb == 0.066
|
193
193
|
# next two prices were added by aws (May 09, 2016)
|
194
194
|
assert region.ebs_price.ebs_optimized_hdd_per_gb == 0.054
|
195
195
|
assert region.ebs_price.ebs_cold_hdd_per_gb == 0.03
|
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.85
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joe Kinsella
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-08-
|
11
|
+
date: 2016-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A Ruby library for retrieving pricing for Amazon Web Services
|
14
14
|
email:
|