zuora_api 1.7.57 → 1.7.58

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 71246b168a4b1c8f86cafc4fddbe7fe2c4c1358745520e89197c7158b3c6576d
4
- data.tar.gz: 54cdc8fd039ffe3717fe135af7b02431a5c7147ceb188c07ddccaab4dd9082b6
3
+ metadata.gz: fb9e45899e7ed9dc05d9c9d18df9d279e296bcc7d6b5f7882df09982c3e6a15c
4
+ data.tar.gz: 3f4a4ec2eb0f56177364fd4107d785e2b8209105709642da97a9d421937b90a6
5
5
  SHA512:
6
- metadata.gz: 6ca79d425ef8bfa1836300286b4ebb035a385066b4eef757cce7b490eab8fa6b9bdb6de53d13ea53fab5101f315faff5a8f4c5a938930cf59aef5ccf1067fbbc
7
- data.tar.gz: c98379b9b2e200659c14403e2af816827e58a226fb4b218bcf252af1a944562cee2688f21c643213f618e28e09fb53ace851adec322d455e650b8ba82d7dab54
6
+ metadata.gz: 6b0a07c385a8435988cfb41417e602a57143705e11a5c9a13b7a72a4f0852b0b6a4e15fc6a5960bfed109c0d3643ced57f6425448921649c2b36e479afa78a66
7
+ data.tar.gz: e4b81e99bbac7512893e9aa617437a529f49ed0cff325c997d1cd90315b054c172254a3eb113deb0d2b47d2d5b8035a2dbc079db9fbff5cc201d1db79cea29a7
@@ -45,8 +45,8 @@ rubygems-deploy:
45
45
  - apt-get install -y git
46
46
  - apt-get clean all
47
47
  - gem install dpl
48
- - if [[ "staging" == $CI_BUILD_REF_SLUG ]];then export VERSION=`git describe --exclude "[0-9]*\.[0-9]*\.[0-9]*[a-z]" --abbrev=0 --tags HEAD`; fi
49
- - if [[ "master" == $CI_BUILD_REF_SLUG ]];then export VERSION=`git describe --exclude "[0-9]*\.[0-9]*\.[0-9]*[a-z]" --abbrev=0 --tags HEAD`; fi
48
+ - if [[ "staging" == $CI_BUILD_REF_SLUG ]];then export VERSION=`git describe --match "[0-9]*\.[0-9]*\.[0-9]*[a-z]" --abbrev=0 --tags HEAD`; fi
49
+ - if [[ "master" == $CI_BUILD_REF_SLUG ]];then export VERSION=`git describe --exclude "[0-9]*\.[0-9]*\.[0-9]*[a-z]" --abbrev=0 --tags HEAD`; fi
50
50
  - echo $VERSION
51
51
  - sed -i "s/0.0.1/$VERSION/" lib/zuora_api/version.rb
52
52
  - git add lib/zuora_api/version.rb
@@ -17,6 +17,8 @@ module ZuoraAPI
17
17
  @message = "Query failed: #{$1}"
18
18
  when /^Could not find [\w\d]{32}.$/
19
19
  @message = "Could not find object."
20
+ when /^Subscription [\w\d]{32} is in expired status. It is not supported to generate billing documents for expired subscriptions./
21
+ @message = "Subscription is in expired status. It is not supported to generate billing documents for expired subscriptions."
20
22
  else
21
23
  @message = message
22
24
  end
@@ -5,7 +5,7 @@ require 'zuora_api/exceptions'
5
5
 
6
6
  module ZuoraAPI
7
7
  class Login
8
- ENVIRONMENTS = [SANDBOX = 'Sandbox', PRODUCTION = 'Production', PREFORMANCE = 'Preformance', SERVICES = 'Services', UNKNOWN = 'Unknown', STAGING = 'Staging' ]
8
+ ENVIRONMENTS = [TEST = 'Test', SANDBOX = 'Sandbox', PRODUCTION = 'Production', PREFORMANCE = 'Preformance', SERVICES = 'Services', UNKNOWN = 'Unknown', STAGING = 'Staging' ]
9
9
  REGIONS = [EU = 'EU', US = 'US', NA = 'NA' ]
10
10
  MIN_Endpoint = '96.0'
11
11
  XML_SAVE_OPTIONS = Nokogiri::XML::Node::SaveOptions::AS_XML | Nokogiri::XML::Node::SaveOptions::NO_DECLARATION
@@ -190,10 +190,13 @@ module ZuoraAPI
190
190
  def reporting_url(path)
191
191
  map = {"US" => {"Sandbox" => "https://zconnectsandbox.zuora.com/api/rest/v1/",
192
192
  "Production" => "https://zconnect.zuora.com/api/rest/v1/",
193
- "Services"=> ""},
193
+ "Test" => "https://reporting-sbx.zan.0001.sbx.auw2.zuora.com/api/rest/v1/",
194
+ "Staging" => "https://reporting-stg11.zan.svc.auw2.zuora.com/api/rest/v1/",
195
+ "Performance" => "https://zconnectpt1.zuora.com/api/rest/v1/",
196
+ "Services" => "https://reporting-svc08.svc.auw2.zuora.com/api/rest/v1/"},
194
197
  "EU" => {"Sandbox" => "https://zconnect.sandbox.eu.zuora.com/api/rest/v1/",
195
198
  "Production" => "https://zconnect.eu.zuora.com/api/rest/v1/",
196
- "Services"=> ""},
199
+ "Services"=> "https://reporting-sbx0000.sbx.aec1.zuora.com/api/rest/v1/"},
197
200
  "NA" => {"Sandbox" => "https://zconnect.sandbox.na.zuora.com/api/rest/v1/",
198
201
  "Production" => "https://zconnect.na.zuora.com/api/rest/v1/",
199
202
  "Services"=> ""}
@@ -248,7 +251,7 @@ module ZuoraAPI
248
251
  end
249
252
 
250
253
  def self.environments
251
- %w(Sandbox Production Services Performance Staging)
254
+ %w(Sandbox Production Services Performance Staging Test)
252
255
  end
253
256
 
254
257
  def self.regions
@@ -260,7 +263,8 @@ module ZuoraAPI
260
263
  "Production" => "https://www.zuora.com/apps/services/a/",
261
264
  "Performance" => "https://pt1.zuora.com/apps/services/a/",
262
265
  "Services" => "https://services347.zuora.com/apps/services/a/",
263
- "Staging" => "https://staging2.zuora.com/apps/services/a/"},
266
+ "Staging" => "https://staging2.zuora.com/apps/services/a/",
267
+ "Test" => "https://test.zuora.com/apps/services/a/"},
264
268
  "EU" => {"Sandbox" => "https://sandbox.eu.zuora.com/apps/services/a/",
265
269
  "Production" => "https://eu.zuora.com/apps/services/a/",
266
270
  "Performance" => "https://pt1.eu.zuora.com/apps/services/a/",
@@ -301,15 +305,18 @@ module ZuoraAPI
301
305
 
302
306
  def update_environment
303
307
  if !self.url.blank?
304
- if /(?<=\.|\/|-|^)(apisandbox|sandbox)(?=\.|\/|-|$)/ === self.hostname
308
+ case self.hostname
309
+ when /(?<=\.|\/|-|^)(apisandbox|sandbox)(?=\.|\/|-|$)/
305
310
  self.environment = 'Sandbox'
306
- elsif /(?<=\.|\/|^)(service[\d]*|services[\d]*|ep-edge)(?=\.|\/|$)/ === self.hostname
311
+ when /(?<=\.|\/|^)(service[\d]*|services[\d]*|ep-edge)(?=\.|\/|$)/
307
312
  self.environment = 'Services'
308
- elsif /(?<=\.|\/|-|^)(pt[\d]*)(?=\.|\/|-|$)/ === self.hostname
313
+ when /(?<=\.|\/|-|^)(pt[\d]*)(?=\.|\/|-|$)/
309
314
  self.environment = 'Performance'
310
- elsif /(?<=\.|\/|^)(staging1|staging2|stg)(?=\.|\/|$)/ === self.hostname
315
+ when /(?<=\.|\/|^)(staging1|staging2|stg)(?=\.|\/|$)/
311
316
  self.environment = 'Staging'
312
- elsif is_prod_env
317
+ when /(?<=\.|\/|^)(test)(?=\.|\/|$)/
318
+ self.environment = 'Test'
319
+ when /(?<=\.|\/|^)(www|api)(?=\.|\/|$)/, /(^|tls10\.|origin-www\.|zforsf\.|eu\.|na\.)(zuora\.com)/
313
320
  self.environment = 'Production'
314
321
  else
315
322
  self.environment = 'Unknown'
@@ -319,20 +326,10 @@ module ZuoraAPI
319
326
  end
320
327
  end
321
328
 
322
- def is_prod_env
323
- is_prod = false
324
- www_or_api = /(?<=\.|\/|^)(www|api)(?=\.|\/|$)/ === self.hostname
325
- host_prefix_match = /(^|tls10\.|origin-www\.|zforsf\.|eu\.|na\.)(zuora\.com)/ === self.hostname
326
- if www_or_api || host_prefix_match
327
- is_prod = true
328
- end
329
- return is_prod
330
- end
331
-
332
329
  def update_zconnect_provider
333
330
  region = update_region
334
331
  environment = update_environment
335
- mappings = {"US" => {"Sandbox" => "ZConnectSbx", "KubeSTG" => "ZConnectDev", "KubeDEV" => "ZConnectDev", "KubePROD" => "ZConnectDev", "Services" => "ZConnectSvcUS", "Production" => "ZConnectProd", "Performance" => "ZConnectPT1", "Staging" => "ZConnectQA"},
332
+ mappings = {"US" => {"Sandbox" => "ZConnectSbx", "Services" => "ZConnectSvcUS", "Production" => "ZConnectProd", "Performance" => "ZConnectPT1", "Test" => "ZConnectTest", "Staging" => "ZConnectQA", "KubeSTG" => "ZConnectDev", "KubeDEV" => "ZConnectDev", "KubePROD" => "ZConnectDev"},
336
333
  "NA" => {"Sandbox" => "ZConnectSbxNA", "Services" => "ZConnectSvcNA", "Production" => "ZConnectProdNA", "Performance" => "ZConnectPT1NA"},
337
334
  "EU" => {"Sandbox" => "ZConnectSbxEU", "Services" => "ZConnectSvcEU", "Production" => "ZConnectProdEU", "Performance" => "ZConnectPT1EU"},
338
335
  "Unknown" => {"Unknown" => "Unknown"}}
@@ -352,26 +349,16 @@ module ZuoraAPI
352
349
  def rest_endpoint(url="", domain=true, prefix='/v1/')
353
350
  update_environment
354
351
  endpoint = url
355
-
352
+ url_postfix = {"US" => ".", "EU" => ".eu.", "NA" => ".na."}[self.region]
353
+
356
354
  case self.environment
355
+ when 'Test'
356
+ endpoint = "https://rest.test#{url_postfix}zuora.com"
357
357
  when 'Sandbox'
358
- case self.region
359
- when 'US'
360
- endpoint = "https://rest.apisandbox.zuora.com"
361
- when 'EU'
362
- endpoint = "https://rest.sandbox.eu.zuora.com"
363
- when 'NA'
364
- endpoint = "https://rest.sandbox.na.zuora.com"
365
- end
358
+ endpoint = "https://rest.sandbox#{url_postfix}zuora.com"
359
+ endpoint = "https://rest.apisandbox.zuora.com" if self.region == "US"
366
360
  when 'Production'
367
- case self.region
368
- when 'US'
369
- endpoint = "https://rest.zuora.com"
370
- when 'EU'
371
- endpoint = "https://rest.eu.zuora.com"
372
- when 'NA'
373
- endpoint = "https://rest.na.zuora.com"
374
- end
361
+ endpoint = "https://rest#{url_postfix}zuora.com"
375
362
  when 'Performance'
376
363
  endpoint = "https://rest.pt1.zuora.com"
377
364
  when 'Services'
@@ -613,7 +600,7 @@ module ZuoraAPI
613
600
  reason = body.xpath('//ns2:StatusReason', 'ns2' => 'http://object.api.zuora.com/').text
614
601
  if reason.present?
615
602
  message = body.xpath('//ns2:StatusReason', 'ns2' => 'http://object.api.zuora.com/').text
616
- error = message.include?('Unexpected error') ? 'UNEXPECTED_ERROR' : 'FATAL_ERROR'
603
+ error = message.match(/^[\w\d]{16}\: (Unexpected error.|No HTTP Response)/).present? ? 'UNEXPECTED_ERROR' : 'FATAL_ERROR'
617
604
  else
618
605
  error = 'FATAL_ERROR'
619
606
  message = 'Export failed due to unknown reason. Consult api logs.'
@@ -104,9 +104,9 @@ module ZuoraAPI
104
104
  retry
105
105
  else
106
106
  if Rails.logger.class.to_s == "Ougai::Logger"
107
- Rails.logger.error("BasicLogin - Timed out will retry after #{self.timeout_sleep} seconds", ex)
107
+ Rails.logger.error("BasicLogin - Timed out", ex)
108
108
  else
109
- Rails.logger.error("BasicLogin - #{ex.class} Timed out will retry after #{self.timeout_sleep} seconds")
109
+ Rails.logger.error("BasicLogin - #{ex.class} Timed out")
110
110
  end
111
111
 
112
112
  self.current_error = "Request timed out. Try again"
@@ -66,9 +66,9 @@ module ZuoraAPI
66
66
  retry
67
67
  else
68
68
  if Rails.logger.class.to_s == "Ougai::Logger"
69
- Rails.logger.error("OAuthLogin - Timed out will retry after #{self.timeout_sleep} seconds", ex)
69
+ Rails.logger.error("OAuthLogin - Timed out", ex)
70
70
  else
71
- Rails.logger.error("OAuthLogin - #{ex.class} Timed out will retry after #{self.timeout_sleep} seconds")
71
+ Rails.logger.error("OAuthLogin - #{ex.class} Timed out")
72
72
  end
73
73
  self.current_error = "Request timed out. Try again"
74
74
  self.status = 'Timeout'
@@ -1,3 +1,3 @@
1
1
  module ZuoraAPI
2
- VERSION = "1.7.57"
2
+ VERSION = "1.7.58"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuora_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.57
4
+ version: 1.7.58
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zuora Strategic Solutions Group
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-18 00:00:00.000000000 Z
11
+ date: 2020-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler