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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YmI4YmZiNzc5MTI4MWVmYThiZWU2ZGNkY2QzY2E1NDc1NWYwZTU2YQ==
4
+ MjdiNjM2NzdlYWNjYjFlZDJiNTAyNmM5YzhkYzBmYjQwYTZjYjM1NA==
5
5
  data.tar.gz: !binary |-
6
- NTg0M2YzMDM3YWE4MGJjNmVkMGMwM2I5Y2UzNjQxNDViYTJkMjJjOQ==
6
+ ZWJmNGNlMTdlOGZhMTE4Y2U4YTRkMmQ3Y2FmN2JjNWRiY2YzNTcyMg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OWQ5OTQxZjIzNjA5Zjk5MjI5YjBlMWNhYmYyMzA2ZmYzNGRjMTk0ZDU3NDNl
10
- OTM1YTcxNjJiN2NkZjM0ZTEwNTc2ZTM3ZDcwOTE1MjNjMDYxZWNhYmQ2NTA3
11
- YzdjODQyYzNhZDQyYjcxZjFmOWI4ZThjM2JiZDIyNDQzYzNmMmE=
9
+ ZWNkMWRiYTgxNjcxZTczZjM3Mzk4ODRhOGFhMmI4YjQwYjQxYTVmYzI3MDFk
10
+ NDgzMDg0NmQ4M2YxOTg0ODljNjc1ZGExMzAyYTAyZjZhMzRhNDE0MjE1NDhk
11
+ NDdlYTVkNDljMDgzYTMyMWMwYzlkNWVmNmMwOWYzMDNlYjA5MDg=
12
12
  data.tar.gz: !binary |-
13
- ODllYTg2OTA2NDg3NGU0MTdkYWQwYzkwNjRkM2U0MzRkNzM0ZTlmYmJjMDFl
14
- MWMzYzliYzkzY2YxZjJlNDJkYTEzNWJhN2E4OGQzZWZmMjcxZDlkZmVhNDVm
15
- N2NhMzFhMmM0MjlmODZiOGJlZjdjN2Y1YzRmMGFkMjM5NWIzMjc=
13
+ YmJkYzQ3ZGE3MWU1YTA1NWYwMjMwMTg4ZmIwOGRmOTczNmU2Njk4NzMxYjQ3
14
+ N2FmMzk3NGQxNDljY2E5YjJjNzU2NDZkYTBlZjY3ZGY2N2IxN2ZhYjRkNzJj
15
+ MzRhODM0ZGY3NzA2NWQ5ZDkwN2ZlMzI4ZTZjNTFkODllODY2ZmU=
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- amazon-pricing (0.1.84)
4
+ amazon-pricing (0.1.85)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -28,7 +28,6 @@ PLATFORMS
28
28
 
29
29
  DEPENDENCIES
30
30
  amazon-pricing!
31
- pry
32
31
  rake
33
32
  rspec (~> 2.11.0)
34
33
  test-unit
@@ -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 copied, not collected
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 oracle_se2
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 oracle_se2
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
- :oracle_se1=>["li-standard","li-multiAZ","byol-standard","byol-multiAZ"],
24
- :oracle_se=>["byol-standard","byol-multiAZ"],
25
- :oracle_ee=>["byol-standard","byol-multiAZ"]
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 http://aws.amazon.com/rds/pricing/ 2>/dev/null | grep 'pricing' |grep reserved-instances
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 => {:oracle_se1=>["license-included-standard", "license-included-multiAZ"],
48
- :oracle_se=>["byol-standard", "byol-multiAZ"]},
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],
@@ -8,5 +8,5 @@
8
8
  # Home:: http://github.com/CloudHealth/amazon-pricing
9
9
  #++
10
10
  module AwsPricing
11
- VERSION = '0.1.84'
11
+ VERSION = '0.1.85'
12
12
  end
@@ -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.095
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.125
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.84
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-08 00:00:00.000000000 Z
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: