mixlib-shellout 3.2.0 → 3.2.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: 82102f99cbf59a6ec48f6b7685e470ecd94bc629e27ae83b36a3eaa7e02ace33
4
- data.tar.gz: 83d3a8aeb7bf139a209440bc8877b63f524b7d30c783b99af2c7406d237618ef
3
+ metadata.gz: 5225855dde6ade866e318af03d650332d97965ea4748b58c872a86e9f8105095
4
+ data.tar.gz: d4f96cee9731d0fa4c83e9bbfae7115a7e0398ac1f4a2a8ba889468a86776c69
5
5
  SHA512:
6
- metadata.gz: 201ec59f8e4dd8f20443e9d78f880037cd65f91a890321647d95347d29bf478968554548efc311d2a1da82ae3a7c00220cb27021c13d21c8b2ecc28bdfbd20cc
7
- data.tar.gz: 3c1caed9698c8820fb70b2245b134e303fcb55343323ea1c51350d625ceeee5f9c3ec8a68d5f81355aafad3c30d89a244316576b674a13eb922f7b0d8fb10948
6
+ metadata.gz: 37baa3739c95552ac72de806cbfe02eeef2cc5d2d611c83e335029379dc7d45ffc33a60e0013fbe32bfd2d3d4cacd6b97741656047a08de086adfd7cd9b42f8d
7
+ data.tar.gz: dcb06b4e91e7c88128e393af4b4691c72dd4f738bc77d27a1fe0ac4cae6fe35609f8726ad560155ecf93fc80079e7e1e0dd9cafd8473a93e08a0b83298f24183
@@ -1,6 +1,6 @@
1
1
  #--
2
2
  # Author:: Daniel DeLeo (<dan@chef.io>)
3
- # Copyright:: Copyright (c) 2010-2016 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -248,7 +248,7 @@ module Mixlib
248
248
  # running or died without setting an exit status (e.g., terminated by
249
249
  # `kill -9`).
250
250
  def exitstatus
251
- @status && @status.exitstatus
251
+ @status&.exitstatus
252
252
  end
253
253
 
254
254
  # Run the command, writing the command's standard out and standard error
@@ -157,7 +157,7 @@ module Mixlib
157
157
  end
158
158
 
159
159
  def __io_for_live_stream
160
- if STDOUT.tty? && !__config[:daemon] && __log.debug?
160
+ if !STDOUT.closed? && __log.trace?
161
161
  STDOUT
162
162
  else
163
163
  nil
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Daniel DeLeo (<dan@chef.io>)
3
- # Copyright:: Copyright (c) 2010-2016 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -370,11 +370,11 @@ module Mixlib
370
370
  return if attempt_reap
371
371
 
372
372
  @terminate_reason = "Command exceeded allowed execution time, process terminated"
373
- logger.error("Command exceeded allowed execution time, sending TERM") if logger
373
+ logger&.error("Command exceeded allowed execution time, sending TERM")
374
374
  Process.kill(:TERM, child_pgid)
375
375
  sleep 3
376
376
  attempt_reap
377
- logger.error("Command exceeded allowed execution time, sending KILL") if logger
377
+ logger&.error("Command exceeded allowed execution time, sending KILL")
378
378
  Process.kill(:KILL, child_pgid)
379
379
  reap
380
380
 
@@ -1,5 +1,5 @@
1
1
  module Mixlib
2
2
  class ShellOut
3
- VERSION = "3.2.0".freeze
3
+ VERSION = "3.2.2".freeze
4
4
  end
5
5
  end
@@ -2,7 +2,7 @@
2
2
  # Author:: Daniel DeLeo (<dan@chef.io>)
3
3
  # Author:: John Keiser (<jkeiser@chef.io>)
4
4
  # Author:: Ho-Sheng Hsiao (<hosh@chef.io>)
5
- # Copyright:: Copyright (c) 2011-2019, Chef Software Inc.
5
+ # Copyright:: Copyright (c) Chef Software Inc.
6
6
  # License:: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -89,7 +89,7 @@ module Mixlib
89
89
  # Start the process
90
90
  #
91
91
  process, profile, token = Process.create3(create_process_args)
92
- logger.debug(format_process(process, app_name, command_line, timeout)) if logger
92
+ logger&.debug(format_process(process, app_name, command_line, timeout))
93
93
  begin
94
94
  # Start pushing data into input
95
95
  stdin_write << input if input
@@ -124,7 +124,7 @@ module Mixlib
124
124
  kill_process_tree(process.process_id, wmi, logger)
125
125
  Process.kill(:KILL, process.process_id)
126
126
  rescue SystemCallError
127
- logger.warn("Failed to kill timed out process #{process.process_id}") if logger
127
+ logger&.warn("Failed to kill timed out process #{process.process_id}")
128
128
  end
129
129
 
130
130
  raise Mixlib::ShellOut::CommandTimeout, [
@@ -398,20 +398,16 @@ module Mixlib
398
398
 
399
399
  def kill_process(instance, logger)
400
400
  child_pid = instance.wmi_ole_object.processid
401
- if logger
402
- logger.debug([
401
+ logger&.debug([
403
402
  "killing child process #{child_pid}::",
404
403
  "#{instance.wmi_ole_object.Name} of parent #{pid}",
405
404
  ].join)
406
- end
407
405
  Process.kill(:KILL, instance.wmi_ole_object.processid)
408
406
  rescue SystemCallError
409
- if logger
410
- logger.debug([
407
+ logger&.debug([
411
408
  "Failed to kill child process #{child_pid}::",
412
409
  "#{instance.wmi_ole_object.Name} of parent #{pid}",
413
410
  ].join)
414
- end
415
411
  end
416
412
 
417
413
  def format_process(process, app_name, command_line, timeout)
@@ -1,7 +1,7 @@
1
- #--
1
+ #
2
2
  # Author:: Daniel DeLeo (<dan@chef.io>)
3
3
  # Author:: John Keiser (<jkeiser@chef.io>)
4
- # Copyright:: Copyright (c) 2011-2016 Chef Software, Inc.
4
+ # Copyright:: Copyright (c) Chef Software Inc.
5
5
  # License:: Apache License, Version 2.0
6
6
  #
7
7
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -22,7 +22,6 @@ require "ffi/win32/extensions"
22
22
 
23
23
  # Add new constants for Logon
24
24
  module Process::Constants
25
- private
26
25
 
27
26
  LOGON32_LOGON_INTERACTIVE = 0x00000002
28
27
  LOGON32_LOGON_BATCH = 0x00000004
@@ -157,15 +156,13 @@ module Process
157
156
  si_hash = {}
158
157
 
159
158
  # If the startup_info key is present, validate its subkeys
160
- if hash["startup_info"]
161
- hash["startup_info"].each do |key, val|
162
- key = key.to_s.downcase
163
- unless valid_si_keys.include?(key)
164
- raise ArgumentError, "invalid startup_info key '#{key}'"
165
- end
166
-
167
- si_hash[key] = val
159
+ hash["startup_info"]&.each do |key, val|
160
+ key = key.to_s.downcase
161
+ unless valid_si_keys.include?(key)
162
+ raise ArgumentError, "invalid startup_info key '#{key}'"
168
163
  end
164
+
165
+ si_hash[key] = val
169
166
  end
170
167
 
171
168
  # The +command_line+ key is mandatory unless the +app_name+ key
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mixlib-shellout
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chef Software Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-12 00:00:00.000000000 Z
11
+ date: 2020-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef-utils