xlogin 0.12.1 → 0.12.2

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: 6c449db3a3cf0359fc79c858d307ebfb6625fc35f6005fa4e4578463363fe786
4
- data.tar.gz: 5514370c6d66e44e1066e0fa4e80108954750a6c7cc19062bef8eb9a462f049f
3
+ metadata.gz: a3f7355fe67c656f25da151d83442fbe6cdc9c2ae442e10550191230653991da
4
+ data.tar.gz: b46b07acfdaea0ccbc0bff01dd27518ab4fdd1cd227a8654eb5be878b79ffe9f
5
5
  SHA512:
6
- metadata.gz: '08a519dde6a07cdc637a4044bd52ec46b91289fe10c2e89ba5992a405c4e99f70ee57e206cda3020583f2f9a7a7f13ca7ab6602d37b709a5a2dae99795381e7a'
7
- data.tar.gz: 41b9b7e3827256fc796b57dbc67c2b78d8d1c63af6982297cb75542c661d1d9786170280dc4c9dc3998490bd3ff7f882ea0004b4105045f1857d3fdad0e8432f
6
+ metadata.gz: 6bfa4af5ffa2bdd7a56e751b0add6be766f481840b17a91779b7ade1b546745a1c46492c73ca63a5f3a83ef2a3a859aff4963480b0a2cdcf162ca1172211bcf4
7
+ data.tar.gz: 3ce180fa56f5599937b52176366cac3a449c1d2a6cbc078861b3f7a8e8a3c1cc2f79738bd8d3a5a141121af707691127360b6efe3fb86ea3523d895a94be60fd
@@ -20,7 +20,14 @@ module Xlogin
20
20
  desc "#{description} - #{hostname}" if opts[:desc] == true
21
21
  RakeTask.new(hostname, &block)
22
22
  end
23
+ end
24
+
25
+ def shutdown!
26
+ @stop = true
27
+ end
23
28
 
29
+ def stop?
30
+ !!@stop
24
31
  end
25
32
  end
26
33
 
@@ -31,8 +38,6 @@ module Xlogin
31
38
  attr_accessor :silent
32
39
  attr_accessor :fail_on_error
33
40
 
34
- @@stopped = false
35
-
36
41
  def initialize(name)
37
42
  @name = name
38
43
  @runner = nil
@@ -61,12 +66,13 @@ module Xlogin
61
66
  if lock
62
67
  task(name => lock)
63
68
  file(lock) do
64
- run_task unless @@stopped
65
- touch(lock, verbose: Rake.application.options.trace) unless @@stopped
69
+ next if RakeTask.stop?
70
+ run_task && touch(lock, verbose: Rake.application.options.trace)
66
71
  end
67
72
  else
68
73
  task(name) do
69
- run_task unless @@stopped
74
+ next if RakeTask.stop?
75
+ run_task
70
76
  end
71
77
  end
72
78
  end
@@ -79,22 +85,27 @@ module Xlogin
79
85
  logger.push buffer if !silent && Rake.application.options.always_multitask
80
86
 
81
87
  session = Xlogin.get(name, log: logger, timeout: timeout)
82
- def session.comment(text, prefix: "[INFO]", **color)
83
- color = {color: :green}.merge(**color)
88
+ def session.msg(text, prefix: "[INFO]", chomp: false, **color)
89
+ default_color = { color: :green }
84
90
 
85
91
  log("\n")
86
92
  log(Time.now.iso8601.colorize(**color) + ' ') if !Rake.application.options.always_multitask
87
- log("#{prefix} #{text}".colorize(**color))
88
- cmd('')
93
+ log("#{prefix} #{text}".colorize(**default_color.merge(color)))
94
+ cmd('') unless chomp
89
95
  end
90
96
 
91
97
  @runner.call(session)
92
98
  $stdout.print format_log(buffer.string)
99
+
100
+ return true
93
101
  rescue => e
94
- session.comment("#{e}", prefix: "[ERROR]", color: :red)
95
- $stderr.print format_log(buffer.string)
102
+ RakeTask.shutdown! if fail_on_error
103
+
104
+ session.msg("#{e}", prefix: "[ERROR]", chomp: true, color: :white, background: :red)
105
+ $stderr.print format_log(buffer.string.colorize(color: :light_red))
106
+ $stderr.print "\n"
96
107
 
97
- @@stopped = true if fail_on_error
108
+ return false
98
109
  ensure
99
110
  session.close rescue nil
100
111
  end
@@ -1,3 +1,3 @@
1
1
  module Xlogin
2
- VERSION = "0.12.1"
2
+ VERSION = "0.12.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xlogin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.1
4
+ version: 0.12.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - haccht
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-23 00:00:00.000000000 Z
11
+ date: 2019-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-telnet