tamashii-agent 0.1.9 → 0.1.10

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
  SHA1:
3
- metadata.gz: cd8087756c603d524bc1b497823924d2798f371f
4
- data.tar.gz: eee16107c774b3de544e08ba344863bab03f4a2c
3
+ metadata.gz: 42ad217e36714e8f5c213ee488dc55547e8ae71b
4
+ data.tar.gz: 477b38f2a79c46ec5d0f5ea87bac344a3305e2b7
5
5
  SHA512:
6
- metadata.gz: c462437309a0a0013b913ec6d2fd84da9a148b648351da78bb1083006e3e46519c2406b9aef43c0ee7788183fdd1dcc8762d4d218186687c203006e12eabedbd
7
- data.tar.gz: 2693d9f80f0ea2c936c204fbc5cfbc8cd64214c222b14a1b206f42b244f61f61810405fbd96f18b7fffd8652c21f16904f29cf05feffa3a98cb655f4bcd831de
6
+ metadata.gz: 9d6f54b0f4ef53587091eefc0021c5339bdc0eabce96b6269823d9440ec31c95da3f8ab70ae71060452f507941af8c07815e7bdd596797e1337b1811539c1d65
7
+ data.tar.gz: 811d6f39e021edafe790d70ed0ac81368ed1aadbbf2d9ff594920931ef69840a3bdf0be81bbba55eb6eb4eaa22638e4e70ac8be5552cb90d8c85c2ff9a588f19
@@ -1,6 +1,7 @@
1
1
  require 'socket'
2
2
  require 'websocket/driver'
3
3
  require 'aasm'
4
+ require 'openssl'
4
5
 
5
6
  require 'tamashii/common'
6
7
 
@@ -24,11 +25,11 @@ module Tamashii
24
25
  event :connect do
25
26
  transitions from: :init, to: :connecting, after: Proc.new { logger.info "Start connecting" }
26
27
  end
27
-
28
+
28
29
  event :auth_request do
29
30
  transitions from: :connecting, to: :auth_pending, after: Proc.new { logger.info "Sending authentication request" }
30
31
  end
31
-
32
+
32
33
  event :auth_success do
33
34
  transitions from: :auth_pending, to: :ready, after: Proc.new { logger.info "Authentication finished. Tag = #{@tag}" }
34
35
  end
@@ -47,16 +48,16 @@ module Tamashii
47
48
  @master = master
48
49
  @url = "#{Config.use_ssl ? "wss" : "ws"}://#{host}:#{port}/#{Config.entry_point}"
49
50
  self.reset
50
-
51
+
51
52
  @host = host
52
53
  @port = port
53
54
  @tag = 0
54
-
55
+
55
56
  @request_pool = RequestPool.new
56
57
  @request_pool.set_handler(:request_timedout, method(:handle_request_timedout))
57
58
  @request_pool.set_handler(:request_meet, method(:handle_request_meet))
58
59
  @request_pool.set_handler(:send_request, method(:handle_send_request))
59
-
60
+
60
61
  env_data = {connection: self}
61
62
  Resolver.config do
62
63
  [Type::REBOOT, Type::POWEROFF, Type::RESTART, Type::UPDATE].each do |type|
@@ -118,18 +119,20 @@ module Tamashii
118
119
  end
119
120
 
120
121
  def send_auth_request
121
- # TODO: other types of auth
122
+ # TODO: other types of auth
122
123
  @driver.binary(Packet.new(Type::AUTH_TOKEN, 0, [Type::CLIENT[:agent], @master.serial_number,Config.token].join(",")).dump)
123
124
  end
124
125
 
125
126
  def start_web_driver
126
- @driver = WebSocket::Driver.client(self)
127
- @driver.on :open, proc { |e|
127
+ # TODO: Improve below code
128
+ socket = Config.use_ssl ? OpenSSL::SSL::SSLSocket.new(self) : self
129
+ @driver = WebSocket::Driver.client(socket)
130
+ @driver.on :open, proc { |e|
128
131
  logger.info "Server opened"
129
132
  self.auth_request
130
133
  send_auth_request
131
134
  }
132
- @driver.on :close, proc { |e|
135
+ @driver.on :close, proc { |e|
133
136
  logger.info "Server closed"
134
137
  close_socket_io
135
138
  self.reset
@@ -201,7 +204,7 @@ module Tamashii
201
204
  end
202
205
  else
203
206
  if pkt.tag == @tag || pkt.tag == 0
204
- Resolver.resolve(pkt)
207
+ Resolver.resolve(pkt)
205
208
  else
206
209
  logger.debug "Tag mismatch packet: tag: #{pkt.tag}, type: #{pkt.type}"
207
210
  end
@@ -1,5 +1,5 @@
1
1
  module Tamashii
2
2
  module Agent
3
- VERSION = "0.1.9"
3
+ VERSION = "0.1.10"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tamashii-agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - 蒼時弦也
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2017-04-18 00:00:00.000000000 Z
13
+ date: 2017-04-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: bundler
@@ -245,7 +245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
245
245
  version: '0'
246
246
  requirements: []
247
247
  rubyforge_project:
248
- rubygems_version: 2.5.1
248
+ rubygems_version: 2.6.11
249
249
  signing_key:
250
250
  specification_version: 4
251
251
  summary: The agent module for RubyConfTW checkin system.