amazon-pricing 0.1.84 → 0.1.85

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 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: