xlogin 0.11.4 → 0.11.6

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: 2ee087d494b733693bedb67a2c81daa6e0f25dd95557712898efd03bc5486dfd
4
- data.tar.gz: 7efa71f1ef4e3a09964b986b77c334e44664586df26cf29f561a665340dbf9d1
3
+ metadata.gz: 65379601a175fd8c600a374e312c4a03bb5ffeba056bab55f4b68414319c3507
4
+ data.tar.gz: 70ee6c3eabc2bd6d982d0e583b3402156dad0651ae8c4932c7608b9b93af188f
5
5
  SHA512:
6
- metadata.gz: 21443be5b7f07179fd92565c4d4092137dc4b7a650fac098f9077a3644ef2d5876362f7b7325564899b8f74acbf13d5b387ac8197dc553380949b3708dd2ccf4
7
- data.tar.gz: 6dfce221c5e716d33b1c9b3fec9a9b1443b0d2e06f5e1b5dc71f64dadd373c6c2e32281d96bdca2ccee051e95bd8aa700d2daf695e0e4507b1120097885fbe3b
6
+ metadata.gz: 40e15b65f6890bd6721260fafaacc0194b7f737c5a0377ad7d08a59fcb068be90896db242d333f67eea9cb05d7f1e1319a741ee9f6243ac351b221b1123c6c3e
7
+ data.tar.gz: a3ada3ee5ff44393fec79e87da1746d09b608ac6428700a6bf4530f27e76107cc612e098a7b8c890c648e64a42b4f7445ca334acf907937fd1de4ef3a0955ae3
@@ -58,13 +58,13 @@ module Xlogin
58
58
 
59
59
  def source(*source_files, &block)
60
60
  return source_file(*source_files) unless block
61
- instance_eval(&block) unless source_files.empty?
61
+ factory.instance_eval(&block) unless source_files.empty?
62
62
  end
63
63
 
64
64
  def source_file(*source_files)
65
65
  source_files.compact.each do |file|
66
66
  raise SessionError.new("Inventory file not found: #{file}") unless File.exist?(file)
67
- instance_eval(IO.read(file), file) if File.exist?(file)
67
+ factory.instance_eval(IO.read(file), file) if File.exist?(file)
68
68
  end
69
69
  end
70
70
 
@@ -88,16 +88,6 @@ module Xlogin
88
88
  template_file(*files)
89
89
  end
90
90
 
91
- def method_missing(method_name, *args, &block)
92
- type = method_name.to_s.downcase
93
- name = args[0]
94
- uri = args[1]
95
- opts = args[2] || {}
96
-
97
- super unless args.size == 2 || args.size == 3
98
- factory.set_inventory(name, type: type, uri: uri, **opts)
99
- end
100
-
101
91
  end
102
92
 
103
93
  end
@@ -76,6 +76,17 @@ module Xlogin
76
76
  build(hostinfo.merge(name: args, **opts))
77
77
  end
78
78
 
79
+ def method_missing(method_name, *args, &block)
80
+ super unless args.size == 2 || args.size == 3 && URI.regexp =~ args[1]
81
+
82
+ type = method_name.to_s.downcase
83
+ name = args[0]
84
+ uri = args[1]
85
+ opts = args[2] || {}
86
+
87
+ set_inventory(name, type: type, uri: uri, **opts)
88
+ end
89
+
79
90
  private
80
91
  def uri(**opts)
81
92
  return Addressable::URI.parse(opts[:uri].strip) if opts.key?(:uri)
@@ -58,14 +58,12 @@ module Xlogin
58
58
  if lock
59
59
  task(name => lock)
60
60
  file(lock) do
61
- next if @@graceful_shutdown
62
- run_task
63
- touch(lock, verbose: Rake.application.options.trace)
61
+ run_task unless @@graceful_shutdown
62
+ touch(lock, verbose: Rake.application.options.trace) unless @@graceful_shutdown
64
63
  end
65
64
  else
66
65
  task(name) do
67
- next if @@graceful_shutdown
68
- run_task
66
+ run_task unless @@graceful_shutdown
69
67
  end
70
68
  end
71
69
  end
@@ -1,3 +1,3 @@
1
1
  module Xlogin
2
- VERSION = "0.11.4"
2
+ VERSION = "0.11.6"
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.11.4
4
+ version: 0.11.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - haccht
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-13 00:00:00.000000000 Z
11
+ date: 2019-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-telnet