right_agent 2.4.6 → 2.5.0

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.
@@ -676,12 +676,10 @@ module RightScale
676
676
  when "Push"
677
677
  packet = RightScale::Push.new(event[:path], event[:data], {:from => event[:from], :token => event[:uuid]})
678
678
  packet.expires_at = event[:expires_at].to_i if event.has_key?(:expires_at)
679
- packet.skewed_by = event[:skewed_by].to_i if event.has_key?(:skewed_by)
680
679
  when "Request"
681
680
  options = {:from => event[:from], :token => event[:uuid], :reply_to => event[:reply_to], :tries => event[:tries]}
682
681
  packet = RightScale::Request.new(event[:path], event[:data], options)
683
682
  packet.expires_at = event[:expires_at].to_i if event.has_key?(:expires_at)
684
- packet.skewed_by = event[:skewed_by].to_i if event.has_key?(:skewed_by)
685
683
  end
686
684
  packet
687
685
  end
@@ -462,10 +462,19 @@ module RightScale
462
462
  @attempted_connect_at = Time.now
463
463
  @close_code = @close_reason = nil
464
464
 
465
+ # Initialize use of proxy if defined
466
+ if (v = BalancedHttpClient::PROXY_ENVIRONMENT_VARIABLES.detect { |v| ENV.has_key?(v) })
467
+ proxy_uri = ENV[v].match(/^[[:alpha:]]+:\/\//) ? URI.parse(ENV[v]) : URI.parse("http://" + ENV[v])
468
+ @proxy = { :origin => proxy_uri.to_s }
469
+ end
470
+
465
471
  options = {
466
472
  # Limit to .auth_header here (rather than .headers) to keep WebSockets happy
467
473
  :headers => {"X-API-Version" => API_VERSION}.merge(@auth_client.auth_header),
468
474
  :ping => @options[:listen_timeout] }
475
+
476
+ options[:proxy] = @proxy if @proxy
477
+
469
478
  url = URI.parse(@auth_client.router_url)
470
479
  url.scheme = url.scheme == "https" ? "wss" : "ws"
471
480
  url.path = url.path + "/connect"
@@ -168,7 +168,6 @@ module RightScale
168
168
  # token(String):: Token uniquely identifying request
169
169
  # expires_at(Integer):: Time in seconds in Unix-epoch when this request expires and
170
170
  # is to be ignored by the receiver; value 0 means never expire
171
- # skewed_by(Integer):: Amount of skew already applied to expires_at in seconds
172
171
  #
173
172
  # === Block
174
173
  # Optional block used to process response asynchronously with the following parameter:
@@ -176,10 +175,9 @@ module RightScale
176
175
  #
177
176
  # === Return
178
177
  # true:: Always return true
179
- def queue_request(kind, type, payload, target, token, expires_at, skewed_by, &callback)
178
+ def queue_request(kind, type, payload, target, token, expires_at, &callback)
180
179
  request = {:kind => kind, :type => type, :payload => payload, :target => target,
181
- :token => token, :expires_at => expires_at, :skewed_by => skewed_by,
182
- :callback => callback}
180
+ :token => token, :expires_at => expires_at, :callback => callback}
183
181
  Log.info("[offline] Queuing request: #{request.inspect}")
184
182
  vote_to_restart if (@restart_vote_count += 1) >= MAX_QUEUED_REQUESTS
185
183
  if @state == :initializing
@@ -285,7 +285,7 @@ module RightScale
285
285
  class Request < Packet
286
286
 
287
287
  attr_accessor :from, :scope, :payload, :type, :token, :reply_to, :selector, :target, :persistent, :expires_at,
288
- :skewed_by, :tags, :tries
288
+ :tags, :tries
289
289
 
290
290
  DEFAULT_OPTIONS = {:selector => :any}
291
291
 
@@ -306,7 +306,6 @@ module RightScale
306
306
  # by the AMQP broker
307
307
  # :expires_at(Integer|nil):: Time in seconds in Unix-epoch when this request expires and
308
308
  # is to be ignored by the receiver; value 0 means never expire; defaults to 0
309
- # :skewed_by(Integer|nil):: Amount of skew already applied to expires_at in seconds
310
309
  # :tags(Array(Symbol)):: List of tags to be used for selecting target for this request
311
310
  # :tries(Array):: List of tokens for previous attempts to send this request
312
311
  # version(Array):: Protocol version of the original creator of the packet followed by the
@@ -325,7 +324,6 @@ module RightScale
325
324
  @target = opts[:target]
326
325
  @persistent = opts[:persistent]
327
326
  @expires_at = opts[:expires_at] || 0
328
- @skewed_by = opts[:skewed_by] || 0
329
327
  @tags = opts[:tags] || []
330
328
  @tries = opts[:tries] || []
331
329
  @version = version
@@ -350,17 +348,16 @@ module RightScale
350
348
  def self.create(o)
351
349
  i = o['data']
352
350
  expires_at = if i.has_key?('created_at')
353
- created_at = i['created_at'].to_i
354
- created_at > 0 ? created_at + (15 * 60) : 0
355
- else
356
- i['expires_at']
357
- end
351
+ created_at = i['created_at'].to_i
352
+ created_at > 0 ? created_at + (15 * 60) : 0
353
+ else
354
+ i['expires_at']
355
+ end
358
356
  new(i['type'], i['payload'], { :from => self.compatible(i['from']), :scope => i['scope'],
359
357
  :token => i['token'], :reply_to => self.compatible(i['reply_to']),
360
358
  :selector => i['selector'], :target => self.compatible(i['target']),
361
359
  :persistent => i['persistent'], :tags => i['tags'],
362
- :expires_at => expires_at, :skewed_by => i['skewed_by'],
363
- :tries => i['tries'] },
360
+ :expires_at => expires_at, :tries => i['tries'] },
364
361
  i['version'] || [DEFAULT_VERSION, DEFAULT_VERSION], o['size'])
365
362
  end
366
363
 
@@ -419,7 +416,7 @@ module RightScale
419
416
  class Push < Packet
420
417
 
421
418
  attr_accessor :from, :scope, :payload, :type, :token, :selector, :target, :persistent, :confirm,
422
- :expires_at, :skewed_by, :tags
419
+ :expires_at, :tags
423
420
 
424
421
  DEFAULT_OPTIONS = {:selector => :any}
425
422
 
@@ -440,7 +437,6 @@ module RightScale
440
437
  # to which request was published but not necessarily delivered
441
438
  # :expires_at(Integer|nil):: Time in seconds in Unix-epoch when this request expires and
442
439
  # is to be ignored by the receiver; value 0 means never expire; defaults to 0
443
- # :skewed_by(Integer|nil):: Amount of skew already applied to expires_at in seconds
444
440
  # :tags(Array(Symbol)):: List of tags to be used for selecting target for this request
445
441
  # version(Array):: Protocol version of the original creator of the packet followed by the
446
442
  # protocol version of the packet contents to be used when sending
@@ -458,7 +454,6 @@ module RightScale
458
454
  @persistent = opts[:persistent]
459
455
  @confirm = opts[:confirm]
460
456
  @expires_at = opts[:expires_at] || 0
461
- @skewed_by = opts[:skewed_by] || 0
462
457
  @tags = opts[:tags] || []
463
458
  @version = version
464
459
  @size = size
@@ -490,11 +485,11 @@ module RightScale
490
485
  # (Push):: New packet
491
486
  def self.create(o)
492
487
  i = o['data']
493
- new(i['type'], i['payload'], { :from => self.compatible(i['from']), :scope => i['scope'],
494
- :token => i['token'], :selector => i['selector'],
495
- :target => self.compatible(i['target']), :persistent => i['persistent'],
496
- :confirm => i['confirm'], :expires_at => i['expires_at'],
497
- :skewed_by => i['skewed_by'], :tags => i['tags'] },
488
+ new(i['type'], i['payload'], { :from => self.compatible(i['from']), :scope => i['scope'],
489
+ :token => i['token'], :selector => i['selector'],
490
+ :target => self.compatible(i['target']), :persistent => i['persistent'],
491
+ :confirm => i['confirm'], :expires_at => i['expires_at'],
492
+ :tags => i['tags']},
498
493
  i['version'] || [DEFAULT_VERSION, DEFAULT_VERSION], o['size'])
499
494
  end
500
495
 
@@ -346,7 +346,7 @@ module RightScale
346
346
  end
347
347
 
348
348
  if queueing?
349
- @offline_handler.queue_request(kind, type, payload, target, packet.token, packet.expires_at, packet.skewed_by, &callback)
349
+ @offline_handler.queue_request(kind, type, payload, target, packet.token, packet.expires_at, &callback)
350
350
  nil
351
351
  else
352
352
  packet
@@ -637,7 +637,7 @@ module RightScale
637
637
  result = error_result(e.message)
638
638
  rescue Exceptions::ConnectivityFailure => e
639
639
  if queueing?
640
- @offline_handler.queue_request(kind, packet.type, packet.payload, target, packet.token, packet.expires_at, packet.skewed_by, &callback)
640
+ @offline_handler.queue_request(kind, packet.type, packet.payload, target, packet.token, packet.expires_at, &callback)
641
641
  result = nil
642
642
  else
643
643
  result = retry_result(e.message)
@@ -696,7 +696,7 @@ module RightScale
696
696
  rescue TemporarilyOffline => e
697
697
  if queueing?
698
698
  # Queue request until come back online
699
- @offline_handler.queue_request(kind, packet.type, packet.payload, target, packet.token, packet.expires_at, packet.skewed_by, &callback)
699
+ @offline_handler.queue_request(kind, packet.type, packet.payload, target, packet.token, packet.expires_at, &callback)
700
700
  @pending_requests.delete(packet.token) if callback
701
701
  else
702
702
  # Send retry response so that requester, e.g., RetryableRequest, can retry
@@ -25,8 +25,8 @@ require 'rbconfig'
25
25
 
26
26
  Gem::Specification.new do |spec|
27
27
  spec.name = 'right_agent'
28
- spec.version = '2.4.6'
29
- spec.date = '2015-09-16'
28
+ spec.version = '2.5.0'
29
+ spec.date = '2015-02-24'
30
30
  spec.authors = ['Lee Kirchhoff', 'Raphael Simon', 'Tony Spataro', 'Scott Messier']
31
31
  spec.email = 'lee@rightscale.com'
32
32
  spec.homepage = 'https://github.com/rightscale/right_agent'
@@ -41,7 +41,7 @@ Gem::Specification.new do |spec|
41
41
  spec.add_dependency('right_support', ['>= 2.4.1', '< 3.0'])
42
42
  spec.add_dependency('right_amqp', '~> 0.8')
43
43
  spec.add_dependency('rest-client', '~> 1.7.0.3')
44
- spec.add_dependency('faye-websocket', '~> 0.7.0')
44
+ spec.add_dependency('faye-websocket', '~> 0.8.0')
45
45
  spec.add_dependency('eventmachine', ['>= 0.12.10', '< 2.0'])
46
46
  spec.add_dependency('net-ssh', '~> 2.0')
47
47
 
@@ -196,15 +196,14 @@ describe RightScale::OfflineHandler do
196
196
  @now = Time.now
197
197
  flexmock(Time).should_receive(:now).and_return(@now)
198
198
  @expires_at = @now + 25
199
- @skewed_by = 1
200
199
  @callback = lambda { |_| }
201
200
  end
202
201
 
203
202
  it "queues request at head of queue if still initializing" do
204
203
  @handler.init
205
- @handler.queue_request(@kind, @type, @payload, "target1", "token1", @expires_at, @skewed_by, &@callback).should be_true
204
+ @handler.queue_request(@kind, @type, @payload, "target1", "token1", @expires_at, &@callback).should be_true
206
205
  @handler.queue.size.should == 1
207
- @handler.queue_request(@kind, @type, @payload, "target2", "token2", @expires_at, @skewed_by, &@callback).should be_true
206
+ @handler.queue_request(@kind, @type, @payload, "target2", "token2", @expires_at, &@callback).should be_true
208
207
  @handler.queue.size.should == 2
209
208
  @handler.queue.first[:target] == "target2"
210
209
  end
@@ -212,9 +211,9 @@ describe RightScale::OfflineHandler do
212
211
  it "queues request at end of queue if no longer initializing" do
213
212
  @handler.init
214
213
  @handler.start
215
- @handler.queue_request(@kind, @type, @payload, "target1", "token1", @expires_at, @skewed_by, &@callback)
214
+ @handler.queue_request(@kind, @type, @payload, "target1", "token1", @expires_at, &@callback)
216
215
  @handler.queue.size.should == 1
217
- @handler.queue_request(@kind, @type, @payload, "target2", "token2", @expires_at, @skewed_by, &@callback)
216
+ @handler.queue_request(@kind, @type, @payload, "target2", "token2", @expires_at, &@callback)
218
217
  @handler.queue.size.should == 2
219
218
  @handler.queue.first[:target] == "target1"
220
219
  end
@@ -224,7 +223,7 @@ describe RightScale::OfflineHandler do
224
223
  @handler.start
225
224
  flexmock(@handler).should_receive(:vote_to_restart).once
226
225
  RightScale::OfflineHandler::MAX_QUEUED_REQUESTS.times do |i|
227
- @handler.queue_request(@kind, @type, @payload, @target, @token, @expires_at, @skewed_by, &@callback)
226
+ @handler.queue_request(@kind, @type, @payload, @target, @token, @expires_at, &@callback)
228
227
  end
229
228
  end
230
229
  end
@@ -250,7 +249,6 @@ describe RightScale::OfflineHandler do
250
249
  @now = Time.now
251
250
  flexmock(Time).should_receive(:now).and_return(@now)
252
251
  @expires_at = (@now + 25).to_i
253
- @skewed_by = 1
254
252
  @result = nil
255
253
  @callback = lambda { |result| @result = result }
256
254
  end
@@ -261,9 +259,9 @@ describe RightScale::OfflineHandler do
261
259
  @handler.start
262
260
  flexmock(@handler).should_receive(:start_timer)
263
261
  @handler.enable
264
- @handler.queue_request(:send_push, @type, @payload, @target, @token, 0, 0)
265
- @handler.queue_request(:send_request, @type, @payload, @target, @token, @expires_at, @skewed_by, &@callback)
266
- @handler.queue_request(:send_request, @type, @payload, @target, @token, @now.to_i, @skewed_by, &@callback)
262
+ @handler.queue_request(:send_push, @type, @payload, @target, @token, 0)
263
+ @handler.queue_request(:send_request, @type, @payload, @target, @token, @expires_at, &@callback)
264
+ @handler.queue_request(:send_request, @type, @payload, @target, @token, @now.to_i, &@callback)
267
265
  @handler.queue.size.should == 3
268
266
  flexmock(EM).should_receive(:next_tick).and_yield.twice
269
267
  @sender.should_receive(:send_push).with(@type, @payload, @target, {:token => @token}).once.ordered
@@ -427,7 +427,7 @@ describe RightScale::Sender do
427
427
  @sender = create_sender(:http, :offline_queueing => true)
428
428
  flexmock(@sender.offline_handler).should_receive(:queueing?).and_return(true)
429
429
  flexmock(@sender.offline_handler).should_receive(:queue_request).
430
- with(kind, @type, @payload, @target, @token, (@now + @ttl).to_i, 0, @callback).once
430
+ with(kind, @type, @payload, @target, @token, (@now + @ttl).to_i, @callback).once
431
431
  @sender.build_packet(kind, @type, @payload, @target, @options, &@callback).should be nil
432
432
  end
433
433
  end
@@ -779,7 +779,7 @@ describe RightScale::Sender do
779
779
  @sender.enable_offline_mode
780
780
  @client.should_receive(:request).and_raise(RightScale::Exceptions::ConnectivityFailure, "disconnected").once
781
781
  flexmock(@sender.offline_handler).should_receive(:queue_request).
782
- with(:send_push, @type, @payload, @target, @token, (@now + @ttl).to_i, 0).once
782
+ with(:send_push, @type, @payload, @target, @token, (@now + @ttl).to_i).once
783
783
  flexmock(@sender).should_receive(:handle_response).never
784
784
  @sender.send(:http_send_once, :send_push, @target, @packet, @received_at).should be_true
785
785
  end
@@ -792,7 +792,7 @@ describe RightScale::Sender do
792
792
  @sender.enable_offline_mode
793
793
  @client.should_receive(:request).and_raise(RightScale::Exceptions::ConnectivityFailure, "disconnected").once
794
794
  flexmock(@sender.offline_handler).should_receive(:queue_request).
795
- with(:send_request, @type, @payload, @target, @token, (@now + @ttl).to_i, 0, @callback).once
795
+ with(:send_request, @type, @payload, @target, @token, (@now + @ttl).to_i, @callback).once
796
796
  flexmock(@sender).should_receive(:handle_response).never
797
797
  @sender.send(:http_send_once, :send_request, @target, @packet, @received_at, &@callback).should be_true
798
798
  end
@@ -886,7 +886,7 @@ describe RightScale::Sender do
886
886
  @sender.initialize_offline_queue
887
887
  @sender.enable_offline_mode
888
888
  flexmock(@sender.offline_handler).should_receive(:queue_request).
889
- with(:send_push, @type, @payload, @target, @token, (@now + @ttl).to_i, 0).once
889
+ with(:send_push, @type, @payload, @target, @token, (@now + @ttl).to_i).once
890
890
  flexmock(@sender).should_receive(:amqp_send_once).and_raise(RightScale::Sender::TemporarilyOffline).once
891
891
  @sender.send(:amqp_send, :send_push, @target, @packet, @received_at).should be_true
892
892
  @sender.pending_requests[@token].should be_nil
@@ -103,5 +103,5 @@ def version_can_handle_msgpack_result; 12 end
103
103
  def version_cannot_handle_non_delivery_result; 12 end
104
104
  def version_can_handle_non_delivery_result; 13 end
105
105
 
106
- def version_cannot_handle_http_result; 22 end
107
- def version_can_handle_http_result; 23 end
106
+ def version_cannot_handle_http; 22 end
107
+ def version_can_handle_http; 23 end
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: right_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.6
4
+ version: 2.5.0
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Lee Kirchhoff
@@ -11,164 +12,194 @@ authors:
11
12
  autorequire:
12
13
  bindir: bin
13
14
  cert_chain: []
14
- date: 2015-09-16 00:00:00.000000000 Z
15
+ date: 2015-02-24 00:00:00.000000000 Z
15
16
  dependencies:
16
17
  - !ruby/object:Gem::Dependency
17
18
  name: right_support
18
19
  requirement: !ruby/object:Gem::Requirement
20
+ none: false
19
21
  requirements:
20
- - - ">="
22
+ - - ! '>='
21
23
  - !ruby/object:Gem::Version
22
24
  version: 2.4.1
23
- - - "<"
25
+ - - <
24
26
  - !ruby/object:Gem::Version
25
27
  version: '3.0'
26
28
  type: :runtime
27
29
  prerelease: false
28
30
  version_requirements: !ruby/object:Gem::Requirement
31
+ none: false
29
32
  requirements:
30
- - - ">="
33
+ - - ! '>='
31
34
  - !ruby/object:Gem::Version
32
35
  version: 2.4.1
33
- - - "<"
36
+ - - <
34
37
  - !ruby/object:Gem::Version
35
38
  version: '3.0'
36
39
  - !ruby/object:Gem::Dependency
37
40
  name: right_amqp
38
41
  requirement: !ruby/object:Gem::Requirement
42
+ none: false
39
43
  requirements:
40
- - - "~>"
44
+ - - ~>
41
45
  - !ruby/object:Gem::Version
42
46
  version: '0.8'
43
47
  type: :runtime
44
48
  prerelease: false
45
49
  version_requirements: !ruby/object:Gem::Requirement
50
+ none: false
46
51
  requirements:
47
- - - "~>"
52
+ - - ~>
48
53
  - !ruby/object:Gem::Version
49
54
  version: '0.8'
50
55
  - !ruby/object:Gem::Dependency
51
56
  name: rest-client
52
57
  requirement: !ruby/object:Gem::Requirement
58
+ none: false
53
59
  requirements:
54
- - - "~>"
60
+ - - ~>
55
61
  - !ruby/object:Gem::Version
56
62
  version: 1.7.0.3
57
63
  type: :runtime
58
64
  prerelease: false
59
65
  version_requirements: !ruby/object:Gem::Requirement
66
+ none: false
60
67
  requirements:
61
- - - "~>"
68
+ - - ~>
62
69
  - !ruby/object:Gem::Version
63
70
  version: 1.7.0.3
64
71
  - !ruby/object:Gem::Dependency
65
72
  name: faye-websocket
66
73
  requirement: !ruby/object:Gem::Requirement
74
+ none: false
67
75
  requirements:
68
- - - "~>"
76
+ - - ~>
69
77
  - !ruby/object:Gem::Version
70
- version: 0.7.0
78
+ version: 0.8.0
71
79
  type: :runtime
72
80
  prerelease: false
73
81
  version_requirements: !ruby/object:Gem::Requirement
82
+ none: false
74
83
  requirements:
75
- - - "~>"
84
+ - - ~>
76
85
  - !ruby/object:Gem::Version
77
- version: 0.7.0
86
+ version: 0.8.0
78
87
  - !ruby/object:Gem::Dependency
79
88
  name: eventmachine
80
89
  requirement: !ruby/object:Gem::Requirement
90
+ none: false
81
91
  requirements:
82
- - - ">="
92
+ - - ! '>='
83
93
  - !ruby/object:Gem::Version
84
94
  version: 0.12.10
85
- - - "<"
95
+ - - <
86
96
  - !ruby/object:Gem::Version
87
97
  version: '2.0'
88
98
  type: :runtime
89
99
  prerelease: false
90
100
  version_requirements: !ruby/object:Gem::Requirement
101
+ none: false
91
102
  requirements:
92
- - - ">="
103
+ - - ! '>='
93
104
  - !ruby/object:Gem::Version
94
105
  version: 0.12.10
95
- - - "<"
106
+ - - <
96
107
  - !ruby/object:Gem::Version
97
108
  version: '2.0'
98
109
  - !ruby/object:Gem::Dependency
99
110
  name: net-ssh
100
111
  requirement: !ruby/object:Gem::Requirement
112
+ none: false
101
113
  requirements:
102
- - - "~>"
114
+ - - ~>
103
115
  - !ruby/object:Gem::Version
104
116
  version: '2.0'
105
117
  type: :runtime
106
118
  prerelease: false
107
119
  version_requirements: !ruby/object:Gem::Requirement
120
+ none: false
108
121
  requirements:
109
- - - "~>"
122
+ - - ~>
110
123
  - !ruby/object:Gem::Version
111
124
  version: '2.0'
112
125
  - !ruby/object:Gem::Dependency
113
126
  name: ffi
114
127
  requirement: !ruby/object:Gem::Requirement
128
+ none: false
115
129
  requirements:
116
- - - ">="
130
+ - - ! '>='
117
131
  - !ruby/object:Gem::Version
118
132
  version: '0'
119
133
  type: :runtime
120
134
  prerelease: false
121
135
  version_requirements: !ruby/object:Gem::Requirement
136
+ none: false
122
137
  requirements:
123
- - - ">="
138
+ - - ! '>='
124
139
  - !ruby/object:Gem::Version
125
140
  version: '0'
126
141
  - !ruby/object:Gem::Dependency
127
142
  name: msgpack
128
143
  requirement: !ruby/object:Gem::Requirement
144
+ none: false
129
145
  requirements:
130
- - - ">="
146
+ - - ! '>='
131
147
  - !ruby/object:Gem::Version
132
148
  version: 0.4.4
133
- - - "<"
149
+ - - <
134
150
  - !ruby/object:Gem::Version
135
151
  version: '0.6'
136
152
  type: :runtime
137
153
  prerelease: false
138
154
  version_requirements: !ruby/object:Gem::Requirement
155
+ none: false
139
156
  requirements:
140
- - - ">="
157
+ - - ! '>='
141
158
  - !ruby/object:Gem::Version
142
159
  version: 0.4.4
143
- - - "<"
160
+ - - <
144
161
  - !ruby/object:Gem::Version
145
162
  version: '0.6'
146
163
  - !ruby/object:Gem::Dependency
147
164
  name: json
148
165
  requirement: !ruby/object:Gem::Requirement
166
+ none: false
149
167
  requirements:
150
- - - "~>"
168
+ - - ~>
151
169
  - !ruby/object:Gem::Version
152
170
  version: '1.4'
153
171
  type: :runtime
154
172
  prerelease: false
155
173
  version_requirements: !ruby/object:Gem::Requirement
174
+ none: false
156
175
  requirements:
157
- - - "~>"
176
+ - - ~>
158
177
  - !ruby/object:Gem::Version
159
178
  version: '1.4'
160
- description: |
161
- RightAgent provides a foundation for running an agent on a server to interface
179
+ description: ! 'RightAgent provides a foundation for running an agent on a server
180
+ to interface
181
+
162
182
  in a secure fashion with other agents in the RightScale system using RightNet,
183
+
163
184
  which operates in either HTTP or AMQP mode. When using HTTP, RightAgent
185
+
164
186
  makes requests to RightApi servers and receives requests using long-polling or
187
+
165
188
  WebSockets via the RightNet router. To respond to requests it posts to the
189
+
166
190
  HTTP router. When using AMQP, RightAgent uses RabbitMQ as the message bus and
191
+
167
192
  the RightNet router as the routing node to make requests; to receives requests
193
+
168
194
  routed to it by the RightNet router, it establishes a queue on startup. The
195
+
169
196
  packets are structured to invoke services in the agent represented by actors
197
+
170
198
  and methods. The RightAgent may respond to these requests with a result packet
199
+
171
200
  that the router then routes to the originator.
201
+
202
+ '
172
203
  email: lee@rightscale.com
173
204
  executables: []
174
205
  extensions: []
@@ -362,29 +393,33 @@ files:
362
393
  - spec/tracer_spec.rb
363
394
  homepage: https://github.com/rightscale/right_agent
364
395
  licenses: []
365
- metadata: {}
366
396
  post_install_message:
367
397
  rdoc_options:
368
- - "--main"
398
+ - --main
369
399
  - README.rdoc
370
- - "--title"
400
+ - --title
371
401
  - RightAgent
372
402
  require_paths:
373
403
  - lib
374
404
  required_ruby_version: !ruby/object:Gem::Requirement
405
+ none: false
375
406
  requirements:
376
- - - ">="
407
+ - - ! '>='
377
408
  - !ruby/object:Gem::Version
378
409
  version: 1.8.7
379
410
  required_rubygems_version: !ruby/object:Gem::Requirement
411
+ none: false
380
412
  requirements:
381
- - - ">="
413
+ - - ! '>='
382
414
  - !ruby/object:Gem::Version
383
415
  version: '0'
416
+ segments:
417
+ - 0
418
+ hash: 1759897669862666077
384
419
  requirements: []
385
420
  rubyforge_project:
386
- rubygems_version: 2.2.3
421
+ rubygems_version: 1.8.26
387
422
  signing_key:
388
- specification_version: 4
423
+ specification_version: 3
389
424
  summary: Agent for interfacing server with RightScale system
390
425
  test_files: []
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 8180837ab6a7f6c7ad3368c26feafb8718dcca20
4
- data.tar.gz: 7a32eab4484c4d5bb46c150813caa1a9ecd46f56
5
- SHA512:
6
- metadata.gz: 1ec91b652cdd3da73329e0618bd27f75d98fa6d0ddc5fa31e6a4680a8ac663c36019bd65a595d636b24005d24b3de2a2ad9640875776d66ac8ca8d822329b3b8
7
- data.tar.gz: 28919cf8fc17ca7b23d0c96d05911b7fac92c3b9d14bfb35d616762cbee026e6f64d7a6261cf322ec7833261ae70ec3cb5238bdc791b9d0250c810a1e65f98df