zuora_connect 2.0.56 → 2.0.57a

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: 8d5757fa9b968c3c2733f1cabbbfacefcc3bd916ed768ccc7acb2e840e737033
4
- data.tar.gz: a198e4dc187c50829d692b54802573a7095924e60045b0f713a0ed7e4bf1a3fe
3
+ metadata.gz: e86fd72050ec0f2e4a7734889824758273744052b3bfd0e4e1d100386dc4a4bd
4
+ data.tar.gz: 1215bcdb264bb920d3dcd054b79f8d9f204cb863ee71434b564c7ea208641c9c
5
5
  SHA512:
6
- metadata.gz: 6a9b10960b926c602c453907607581e44bb79687bd73dc1801ded464032e2c3c7f8559eadb6b610438adb9721f47ed16f8340ec695b9a2e4f5fa062192a1656e
7
- data.tar.gz: 953d81773108dfa97f66e1364fe91380ece8ae2f5b8945d20d414dad4db0412b6b62e95f509a1aabd14a3f9039058f861a6d8b6aa36cbfe2ac0f6fcb6bada588
6
+ metadata.gz: 1742d055704ed7bc97e31cbcad1a20a516434ccbd2d69275f77738ed62f80cc86f48148616ef92a87afe5e144e9687041d6c82c0a630af8e7bb1626a89af4172
7
+ data.tar.gz: 48a2917c0222294af49c0523f0f032b725136c62e9f31ef47dc612c39af98676e9832e85b6dda355b521dc18ad93b95e4ad9c7d3aaceed57607bac3e2568e342
@@ -101,20 +101,33 @@ module Resque
101
101
  end
102
102
 
103
103
  def get_next_job(grouped_queues)
104
- @n ||= 1
105
- queue_index = {}
106
- grouped_queues.each_with_index do |(key, queue_list), index|
107
- queue_list.each do |queue|
108
- queue_index[queue] = index
109
- end
104
+ @n ||= 0
105
+
106
+ low_priority_queues = []
107
+ high_priority_queues = []
108
+
109
+ # Categorize queues as low_priority if its appinstance id is lower than current
110
+ grouped_queues.sort_by { |app_instance_id, _| app_instance_id.to_i }.each do |app_instance_queues|
111
+ app_instance_id, queues = app_instance_queues
112
+ queues = get_categorized_queues(queues).to_h.values.flatten
113
+ app_instance_id.to_i <= @n ? low_priority_queues.push(queues) : high_priority_queues.push(queues)
110
114
  end
111
115
 
112
- grouped_queues = grouped_queues.values.rotate(@n).map{|queue_list| get_categorized_queues(queue_list).to_h.values.flatten}.flatten.delete_if{|queue| !should_work_on_queue?(queue)}.map{|queue| "queue:#{queue}"}
116
+ # Reorder queue groups by putting high priority queues in the front
117
+ grouped_queues =
118
+ (high_priority_queues + low_priority_queues).
119
+ flatten.
120
+ delete_if { |queue| !should_work_on_queue?(queue) }.
121
+ map { |queue| "queue:#{queue}" }
122
+
113
123
  queue, payload = get_job_from_queues(grouped_queues)
114
124
  return nil if queue.blank?
115
125
 
116
126
  queue = queue.split("queue:")[1]
117
- @n = queue_index[queue] + 1
127
+
128
+ # track last app instance id
129
+ @n = queue.split('_').first.to_i
130
+
118
131
  return create_job(queue, Resque.decode(payload))
119
132
  end
120
133
 
data/lib/zuora_connect.rb CHANGED
@@ -23,6 +23,8 @@ module ZuoraConnect
23
23
  case Rails.env.to_s
24
24
  when 'development'
25
25
  Rails.logger
26
+ when 'test'
27
+ Rails.logger
26
28
  else
27
29
  @logger ||= custom_logger(name: "Connect", level: Rails.logger.level)
28
30
  end
@@ -7,7 +7,7 @@ module ZuoraConnect
7
7
 
8
8
  attr_accessor :oauth_client_id, :oauth_client_secret, :oauth_client_redirect_uri
9
9
 
10
- attr_accessor :dev_mode_logins, :dev_mode_options, :dev_mode_mode, :dev_mode_appinstance, :dev_mode_user, :dev_mode_pass, :dev_mode_admin, :dev_mode_secret_access_key,:dev_mode_access_key_id,:aws_region, :s3_bucket_name, :s3_folder_name, :json_logging
10
+ attr_accessor :dev_mode_logins, :dev_mode_options, :dev_mode_mode, :dev_mode_appinstance, :dev_mode_user, :dev_mode_pass, :dev_mode_admin, :dev_mode_secret_access_key,:dev_mode_access_key_id,:aws_region, :s3_bucket_name, :s3_folder_name, :json_logging, :insert_migrations
11
11
 
12
12
  def initialize
13
13
  @default_locale = :en
@@ -19,6 +19,7 @@ module ZuoraConnect
19
19
  @additional_apartment_models = []
20
20
  @silencer_resque_finish = true
21
21
  @blpop_queue = false
22
+ @insert_migrations = true
22
23
 
23
24
  # Setting the app name for telegraf write
24
25
  @enable_metrics = false
@@ -42,7 +43,7 @@ module ZuoraConnect
42
43
  @aws_region = "us-west-2"
43
44
  @s3_bucket_name = "rbm-apps"
44
45
  @s3_folder_name = Rails.application.class.parent_name
45
- @json_logging = Rails.env.to_s == 'development' ? false : true
46
+ @json_logging = Rails.env.development? || Rails.env.test? ? false : true
46
47
  end
47
48
 
48
49
  def private_key
@@ -16,10 +16,13 @@ module ZuoraConnect
16
16
  end
17
17
  end
18
18
 
19
+
19
20
  initializer :append_migrations do |app|
20
- unless app.root.to_s.match root.to_s
21
- config.paths["db/migrate"].expanded.each do |expanded_path|
22
- app.config.paths["db/migrate"] << expanded_path
21
+ if ZuoraConnect.configuration.insert_migrations
22
+ unless app.root.to_s.match root.to_s
23
+ config.paths["db/migrate"].expanded.each do |expanded_path|
24
+ app.config.paths["db/migrate"] << expanded_path
25
+ end
23
26
  end
24
27
  end
25
28
  end
@@ -46,7 +46,7 @@ module ZuoraConnect
46
46
  require 'lograge'
47
47
 
48
48
  Rails.configuration.logger = ZuoraConnect.custom_logger(name: "Rails")
49
- if Rails.env != 'development'
49
+ if !Rails.env.test? && !Rails.env.development?
50
50
  Rails.configuration.lograge.enabled = true
51
51
  Rails.configuration.colorize_logging = false
52
52
  end
@@ -1,3 +1,3 @@
1
1
  module ZuoraConnect
2
- VERSION = "2.0.56"
2
+ VERSION = "2.0.57a"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuora_connect
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.56
4
+ version: 2.0.57a
5
5
  platform: ruby
6
6
  authors:
7
7
  - Connect Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-09 00:00:00.000000000 Z
11
+ date: 2020-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: apartment
@@ -415,9 +415,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
415
415
  version: '0'
416
416
  required_rubygems_version: !ruby/object:Gem::Requirement
417
417
  requirements:
418
- - - ">="
418
+ - - ">"
419
419
  - !ruby/object:Gem::Version
420
- version: '0'
420
+ version: 1.3.1
421
421
  requirements: []
422
422
  rubygems_version: 3.0.3
423
423
  signing_key: