chef 16.18.30-universal-mingw32 → 17.0.242-universal-mingw32

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.
Files changed (881) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -22
  3. data/README.md +1 -1
  4. data/Rakefile +2 -2
  5. data/chef-universal-mingw32.gemspec +1 -2
  6. data/chef.gemspec +7 -10
  7. data/distro/ruby_bin_folder/AMD64/Chef.PowerShell.Wrapper.dll +0 -0
  8. data/distro/ruby_bin_folder/AMD64/Chef.PowerShell.dll +0 -0
  9. data/distro/ruby_bin_folder/AMD64/Ijwhost.dll +0 -0
  10. data/distro/ruby_bin_folder/AMD64/concrt140.dll +0 -0
  11. data/distro/ruby_bin_folder/AMD64/host/fxr/5.0.0/hostfxr.dll +0 -0
  12. data/distro/ruby_bin_folder/AMD64/msvcp140.dll +0 -0
  13. data/distro/ruby_bin_folder/AMD64/msvcp140_1.dll +0 -0
  14. data/distro/ruby_bin_folder/AMD64/msvcp140_2.dll +0 -0
  15. data/distro/ruby_bin_folder/AMD64/msvcp140_atomic_wait.dll +0 -0
  16. data/distro/ruby_bin_folder/AMD64/msvcp140_codecvt_ids.dll +0 -0
  17. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Chef.PowerShell.Wrapper.Core.dll +0 -0
  18. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Chef.Powershell.Core.dll +0 -0
  19. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Chef.Powershell.Core.pdb +0 -0
  20. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Ijwhost.dll +0 -0
  21. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.CSharp.dll +0 -0
  22. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.NETCore.App.deps.json +180 -180
  23. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.VisualBasic.Core.dll +0 -0
  24. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.VisualBasic.dll +0 -0
  25. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.Win32.Primitives.dll +0 -0
  26. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/Microsoft.Win32.Registry.dll +0 -0
  27. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.AppContext.dll +0 -0
  28. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Buffers.dll +0 -0
  29. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Collections.Concurrent.dll +0 -0
  30. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Collections.Immutable.dll +0 -0
  31. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Collections.NonGeneric.dll +0 -0
  32. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Collections.Specialized.dll +0 -0
  33. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Collections.dll +0 -0
  34. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.Annotations.dll +0 -0
  35. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.DataAnnotations.dll +0 -0
  36. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.EventBasedAsync.dll +0 -0
  37. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.Primitives.dll +0 -0
  38. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.TypeConverter.dll +0 -0
  39. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ComponentModel.dll +0 -0
  40. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Configuration.dll +0 -0
  41. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Console.dll +0 -0
  42. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Core.dll +0 -0
  43. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Data.Common.dll +0 -0
  44. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Data.DataSetExtensions.dll +0 -0
  45. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Data.dll +0 -0
  46. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.Contracts.dll +0 -0
  47. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.Debug.dll +0 -0
  48. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.DiagnosticSource.dll +0 -0
  49. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.FileVersionInfo.dll +0 -0
  50. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.Process.dll +0 -0
  51. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.StackTrace.dll +0 -0
  52. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.TextWriterTraceListener.dll +0 -0
  53. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.Tools.dll +0 -0
  54. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.TraceSource.dll +0 -0
  55. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Diagnostics.Tracing.dll +0 -0
  56. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Drawing.Primitives.dll +0 -0
  57. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Drawing.dll +0 -0
  58. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Dynamic.Runtime.dll +0 -0
  59. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Formats.Asn1.dll +0 -0
  60. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Globalization.Calendars.dll +0 -0
  61. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Globalization.Extensions.dll +0 -0
  62. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Globalization.dll +0 -0
  63. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Compression.Brotli.dll +0 -0
  64. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Compression.FileSystem.dll +0 -0
  65. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Compression.ZipFile.dll +0 -0
  66. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Compression.dll +0 -0
  67. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.FileSystem.AccessControl.dll +0 -0
  68. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.FileSystem.DriveInfo.dll +0 -0
  69. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.FileSystem.Primitives.dll +0 -0
  70. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.FileSystem.Watcher.dll +0 -0
  71. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.FileSystem.dll +0 -0
  72. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.IsolatedStorage.dll +0 -0
  73. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.MemoryMappedFiles.dll +0 -0
  74. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Pipes.AccessControl.dll +0 -0
  75. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.Pipes.dll +0 -0
  76. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.UnmanagedMemoryStream.dll +0 -0
  77. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.IO.dll +0 -0
  78. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Linq.Expressions.dll +0 -0
  79. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Linq.Parallel.dll +0 -0
  80. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Linq.Queryable.dll +0 -0
  81. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Linq.dll +0 -0
  82. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Memory.dll +0 -0
  83. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Http.Json.dll +0 -0
  84. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Http.dll +0 -0
  85. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.HttpListener.dll +0 -0
  86. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Mail.dll +0 -0
  87. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.NameResolution.dll +0 -0
  88. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.NetworkInformation.dll +0 -0
  89. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Ping.dll +0 -0
  90. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Primitives.dll +0 -0
  91. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Requests.dll +0 -0
  92. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Security.dll +0 -0
  93. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.ServicePoint.dll +0 -0
  94. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.Sockets.dll +0 -0
  95. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.WebClient.dll +0 -0
  96. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.WebHeaderCollection.dll +0 -0
  97. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.WebProxy.dll +0 -0
  98. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.WebSockets.Client.dll +0 -0
  99. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.WebSockets.dll +0 -0
  100. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Net.dll +0 -0
  101. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Numerics.Vectors.dll +0 -0
  102. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Numerics.dll +0 -0
  103. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ObjectModel.dll +0 -0
  104. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Private.CoreLib.dll +0 -0
  105. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Private.DataContractSerialization.dll +0 -0
  106. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Private.Uri.dll +0 -0
  107. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Private.Xml.Linq.dll +0 -0
  108. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Private.Xml.dll +0 -0
  109. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.DispatchProxy.dll +0 -0
  110. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Emit.ILGeneration.dll +0 -0
  111. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Emit.Lightweight.dll +0 -0
  112. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Emit.dll +0 -0
  113. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Extensions.dll +0 -0
  114. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Metadata.dll +0 -0
  115. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.Primitives.dll +0 -0
  116. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.TypeExtensions.dll +0 -0
  117. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Reflection.dll +0 -0
  118. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Resources.Reader.dll +0 -0
  119. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Resources.ResourceManager.dll +0 -0
  120. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Resources.Writer.dll +0 -0
  121. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  122. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.CompilerServices.VisualC.dll +0 -0
  123. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Extensions.dll +0 -0
  124. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Handles.dll +0 -0
  125. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.InteropServices.RuntimeInformation.dll +0 -0
  126. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.InteropServices.dll +0 -0
  127. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Intrinsics.dll +0 -0
  128. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Loader.dll +0 -0
  129. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Numerics.dll +0 -0
  130. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Serialization.Formatters.dll +0 -0
  131. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Serialization.Json.dll +0 -0
  132. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Serialization.Primitives.dll +0 -0
  133. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Serialization.Xml.dll +0 -0
  134. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.Serialization.dll +0 -0
  135. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Runtime.dll +0 -0
  136. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.AccessControl.dll +0 -0
  137. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Claims.dll +0 -0
  138. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.Algorithms.dll +0 -0
  139. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.Cng.dll +0 -0
  140. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.Csp.dll +0 -0
  141. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.Encoding.dll +0 -0
  142. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.OpenSsl.dll +0 -0
  143. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.Primitives.dll +0 -0
  144. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Cryptography.X509Certificates.dll +0 -0
  145. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Principal.Windows.dll +0 -0
  146. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.Principal.dll +0 -0
  147. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.SecureString.dll +0 -0
  148. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Security.dll +0 -0
  149. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ServiceModel.Web.dll +0 -0
  150. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ServiceProcess.dll +0 -0
  151. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.Encoding.CodePages.dll +0 -0
  152. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.Encoding.Extensions.dll +0 -0
  153. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.Encoding.dll +0 -0
  154. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.Encodings.Web.dll +0 -0
  155. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.Json.dll +0 -0
  156. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Text.RegularExpressions.dll +0 -0
  157. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Channels.dll +0 -0
  158. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Overlapped.dll +0 -0
  159. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Tasks.Dataflow.dll +0 -0
  160. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Tasks.Extensions.dll +0 -0
  161. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Tasks.Parallel.dll +0 -0
  162. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Tasks.dll +0 -0
  163. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Thread.dll +0 -0
  164. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.ThreadPool.dll +0 -0
  165. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.Timer.dll +0 -0
  166. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Threading.dll +0 -0
  167. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Transactions.Local.dll +0 -0
  168. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Transactions.dll +0 -0
  169. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.ValueTuple.dll +0 -0
  170. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Web.HttpUtility.dll +0 -0
  171. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Web.dll +0 -0
  172. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Windows.dll +0 -0
  173. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.Linq.dll +0 -0
  174. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.ReaderWriter.dll +0 -0
  175. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.Serialization.dll +0 -0
  176. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.XDocument.dll +0 -0
  177. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.XPath.XDocument.dll +0 -0
  178. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.XPath.dll +0 -0
  179. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.XmlDocument.dll +0 -0
  180. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.XmlSerializer.dll +0 -0
  181. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.Xml.dll +0 -0
  182. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/System.dll +0 -0
  183. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/WindowsBase.dll +0 -0
  184. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/clrcompression.dll +0 -0
  185. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/clretwrc.dll +0 -0
  186. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/clrjit.dll +0 -0
  187. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/coreclr.dll +0 -0
  188. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/createdump.exe +0 -0
  189. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/dbgshim.dll +0 -0
  190. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/hostfxr.dll +0 -0
  191. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/hostpolicy.dll +0 -0
  192. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/mscordaccore.dll +0 -0
  193. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/mscordbi.dll +0 -0
  194. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/mscorlib.dll +0 -0
  195. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/mscorrc.dll +0 -0
  196. data/distro/ruby_bin_folder/AMD64/shared/Microsoft.NETCore.App/5.0.0/netstandard.dll +0 -0
  197. data/distro/ruby_bin_folder/AMD64/vccorlib140.dll +0 -0
  198. data/distro/ruby_bin_folder/AMD64/vcruntime140.dll +0 -0
  199. data/distro/ruby_bin_folder/AMD64/vcruntime140_1.dll +0 -0
  200. data/distro/ruby_bin_folder/x86/Chef.PowerShell.dll +0 -0
  201. data/distro/ruby_bin_folder/x86/Chef.Powershell.Wrapper.dll +0 -0
  202. data/distro/ruby_bin_folder/x86/concrt140.dll +0 -0
  203. data/distro/ruby_bin_folder/x86/msvcp140.dll +0 -0
  204. data/distro/ruby_bin_folder/x86/msvcp140_1.dll +0 -0
  205. data/distro/ruby_bin_folder/x86/msvcp140_2.dll +0 -0
  206. data/distro/ruby_bin_folder/x86/msvcp140_atomic_wait.dll +0 -0
  207. data/distro/ruby_bin_folder/x86/msvcp140_codecvt_ids.dll +0 -0
  208. data/distro/ruby_bin_folder/x86/shared/Microsoft.NETCore.App/5.0.0/Chef.PowerShell.Wrapper.Core.dll +0 -0
  209. data/distro/ruby_bin_folder/x86/shared/Microsoft.NETCore.App/5.0.0/Chef.Powershell.Core.dll +0 -0
  210. data/distro/ruby_bin_folder/x86/shared/Microsoft.NETCore.App/5.0.0/Chef.Powershell.Core.pdb +0 -0
  211. data/distro/ruby_bin_folder/x86/vccorlib140.dll +0 -0
  212. data/distro/ruby_bin_folder/x86/vcruntime140.dll +0 -0
  213. data/lib/chef/action_collection.rb +1 -1
  214. data/lib/chef/application/base.rb +1 -1
  215. data/lib/chef/application.rb +1 -1
  216. data/lib/chef/applications.rb +0 -1
  217. data/lib/chef/chef_fs/command_line.rb +5 -2
  218. data/lib/chef/chef_fs/file_system.rb +9 -10
  219. data/lib/chef/client.rb +5 -5
  220. data/lib/chef/compliance/default_attributes.rb +4 -3
  221. data/lib/chef/compliance/fetcher/automate.rb +0 -7
  222. data/lib/chef/compliance/reporter/automate.rb +17 -7
  223. data/lib/chef/compliance/reporter/chef_server_automate.rb +11 -6
  224. data/lib/chef/compliance/reporter/cli.rb +77 -0
  225. data/lib/chef/compliance/reporter/compliance_enforcer.rb +4 -0
  226. data/lib/chef/compliance/reporter/json_file.rb +8 -1
  227. data/lib/chef/compliance/runner.rb +65 -27
  228. data/lib/chef/cookbook/gem_installer.rb +1 -5
  229. data/lib/chef/cookbook/synchronizer.rb +3 -5
  230. data/lib/chef/cookbook_loader.rb +2 -4
  231. data/lib/chef/cookbook_uploader.rb +0 -1
  232. data/lib/chef/cookbook_version.rb +4 -26
  233. data/lib/chef/data_bag_item.rb +11 -2
  234. data/lib/chef/data_collector/run_end_message.rb +2 -2
  235. data/lib/chef/delayed_evaluator.rb +4 -0
  236. data/lib/chef/deprecated.rb +6 -12
  237. data/lib/chef/dsl/chef_vault.rb +6 -6
  238. data/lib/chef/dsl/reboot_pending.rb +1 -2
  239. data/lib/chef/exceptions.rb +0 -3
  240. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +20 -22
  241. data/lib/chef/formatters/error_mapper.rb +2 -2
  242. data/lib/chef/group.rb +75 -0
  243. data/lib/chef/http.rb +5 -5
  244. data/lib/chef/mixin/checksum.rb +0 -6
  245. data/lib/chef/mixin/get_source_from_package.rb +1 -1
  246. data/lib/chef/mixin/powershell_exec.rb +26 -7
  247. data/lib/chef/node/attribute.rb +9 -24
  248. data/lib/chef/node/immutable_collections.rb +13 -0
  249. data/lib/chef/node/mixin/deep_merge_cache.rb +14 -10
  250. data/lib/chef/node.rb +19 -20
  251. data/lib/chef/org.rb +3 -2
  252. data/lib/chef/platform/query_helpers.rb +2 -2
  253. data/lib/chef/policy_builder/policyfile.rb +0 -5
  254. data/lib/chef/property.rb +18 -0
  255. data/lib/chef/provider/cron.rb +2 -6
  256. data/lib/chef/provider/execute.rb +2 -1
  257. data/lib/chef/provider/file.rb +3 -3
  258. data/lib/chef/provider/git.rb +5 -7
  259. data/lib/chef/provider/group/dscl.rb +1 -1
  260. data/lib/chef/provider/group/groupadd.rb +3 -3
  261. data/lib/chef/provider/group/groupmod.rb +3 -3
  262. data/lib/chef/provider/group/pw.rb +3 -3
  263. data/lib/chef/provider/ifconfig.rb +2 -2
  264. data/lib/chef/provider/link.rb +2 -2
  265. data/lib/chef/provider/mount/aix.rb +3 -3
  266. data/lib/chef/provider/mount/mount.rb +5 -5
  267. data/lib/chef/provider/mount/windows.rb +1 -1
  268. data/lib/chef/provider/mount.rb +5 -5
  269. data/lib/chef/provider/package/apt.rb +27 -1
  270. data/lib/chef/provider/package/deb.rb +3 -3
  271. data/lib/chef/provider/package/dnf/dnf_helper.py +1 -1
  272. data/lib/chef/provider/package/portage.rb +2 -2
  273. data/lib/chef/provider/package/powershell.rb +0 -5
  274. data/lib/chef/provider/package/rubygems.rb +9 -15
  275. data/lib/chef/provider/package/windows.rb +3 -5
  276. data/lib/chef/provider/package/yum/yum_helper.py +11 -1
  277. data/lib/chef/provider/package.rb +17 -21
  278. data/lib/chef/provider/route.rb +2 -2
  279. data/lib/chef/provider/service/aixinit.rb +1 -1
  280. data/lib/chef/provider/service/debian.rb +1 -1
  281. data/lib/chef/provider/service/freebsd.rb +15 -21
  282. data/lib/chef/provider/service/macosx.rb +4 -4
  283. data/lib/chef/provider/service/systemd.rb +43 -14
  284. data/lib/chef/provider/service/upstart.rb +2 -13
  285. data/lib/chef/provider/service/windows.rb +12 -12
  286. data/lib/chef/provider/service.rb +6 -6
  287. data/lib/chef/provider/subversion.rb +10 -12
  288. data/lib/chef/provider/systemd_unit.rb +36 -10
  289. data/lib/chef/provider/template/content.rb +3 -7
  290. data/lib/chef/provider/user/dscl.rb +1 -1
  291. data/lib/chef/provider/user/mac.rb +17 -20
  292. data/lib/chef/provider/user/pw.rb +1 -1
  293. data/lib/chef/provider/user/windows.rb +1 -1
  294. data/lib/chef/provider/user.rb +2 -2
  295. data/lib/chef/provider/zypper_repository.rb +2 -2
  296. data/lib/chef/provider.rb +1 -1
  297. data/lib/chef/providers.rb +0 -1
  298. data/lib/chef/resource/alternatives.rb +6 -6
  299. data/lib/chef/resource/apt_package.rb +1 -1
  300. data/lib/chef/resource/apt_preference.rb +2 -2
  301. data/lib/chef/resource/apt_repository.rb +6 -6
  302. data/lib/chef/resource/apt_update.rb +3 -2
  303. data/lib/chef/resource/archive_file.rb +8 -9
  304. data/lib/chef/resource/breakpoint.rb +1 -1
  305. data/lib/chef/resource/build_essential.rb +2 -6
  306. data/lib/chef/resource/chef_client_config.rb +2 -2
  307. data/lib/chef/resource/chef_client_cron.rb +4 -4
  308. data/lib/chef/resource/chef_client_launchd.rb +3 -3
  309. data/lib/chef/resource/chef_client_scheduled_task.rb +1 -1
  310. data/lib/chef/resource/chef_client_systemd_timer.rb +2 -2
  311. data/lib/chef/resource/chef_client_trusted_certificate.rb +0 -1
  312. data/lib/chef/resource/chef_handler.rb +3 -7
  313. data/lib/chef/resource/chef_sleep.rb +1 -1
  314. data/lib/chef/resource/chef_vault_secret.rb +3 -8
  315. data/lib/chef/resource/chocolatey_config.rb +2 -6
  316. data/lib/chef/resource/chocolatey_feature.rb +2 -6
  317. data/lib/chef/resource/chocolatey_source.rb +4 -10
  318. data/lib/chef/resource/cron/_cron_shared.rb +2 -2
  319. data/lib/chef/resource/cron_access.rb +2 -4
  320. data/lib/chef/resource/dmg_package.rb +6 -10
  321. data/lib/chef/resource/dpkg_package.rb +1 -1
  322. data/lib/chef/resource/execute.rb +6 -1
  323. data/lib/chef/resource/file.rb +1 -1
  324. data/lib/chef/resource/group.rb +2 -2
  325. data/lib/chef/resource/homebrew_cask.rb +5 -15
  326. data/lib/chef/resource/homebrew_tap.rb +2 -6
  327. data/lib/chef/resource/hostname.rb +21 -17
  328. data/lib/chef/resource/http_request.rb +1 -1
  329. data/lib/chef/resource/kernel_module.rb +6 -17
  330. data/lib/chef/resource/locale.rb +3 -4
  331. data/lib/chef/resource/lwrp_base.rb +4 -0
  332. data/lib/chef/resource/macos_userdefaults.rb +10 -14
  333. data/lib/chef/resource/mdadm.rb +53 -7
  334. data/lib/chef/resource/mount.rb +3 -2
  335. data/lib/chef/resource/openssl_ec_private_key.rb +2 -2
  336. data/lib/chef/resource/openssl_rsa_private_key.rb +1 -1
  337. data/lib/chef/resource/openssl_x509_certificate.rb +2 -2
  338. data/lib/chef/resource/plist.rb +7 -7
  339. data/lib/chef/resource/powershell_script.rb +1 -1
  340. data/lib/chef/resource/remote_file.rb +1 -1
  341. data/lib/chef/resource/rhsm_errata.rb +16 -1
  342. data/lib/chef/resource/rhsm_errata_level.rb +10 -1
  343. data/lib/chef/resource/rhsm_register.rb +12 -23
  344. data/lib/chef/resource/rhsm_repo.rb +2 -6
  345. data/lib/chef/resource/rhsm_subscription.rb +7 -11
  346. data/lib/chef/resource/scm/git.rb +1 -1
  347. data/lib/chef/resource/sudo.rb +6 -6
  348. data/lib/chef/resource/support/client.erb +2 -6
  349. data/lib/chef/resource/sysctl.rb +2 -6
  350. data/lib/chef/resource/systemd_unit.rb +3 -3
  351. data/lib/chef/resource/template.rb +1 -1
  352. data/lib/chef/resource/timezone.rb +1 -3
  353. data/lib/chef/resource/user/mac_user.rb +1 -1
  354. data/lib/chef/resource/user_ulimit.rb +2 -3
  355. data/lib/chef/resource/windows_ad_join.rb +2 -6
  356. data/lib/chef/resource/windows_audit_policy.rb +1 -1
  357. data/lib/chef/resource/windows_auto_run.rb +2 -5
  358. data/lib/chef/resource/windows_certificate.rb +207 -73
  359. data/lib/chef/resource/windows_dfs_folder.rb +2 -6
  360. data/lib/chef/resource/windows_dfs_namespace.rb +2 -6
  361. data/lib/chef/resource/windows_dfs_server.rb +1 -3
  362. data/lib/chef/resource/windows_dns_record.rb +2 -6
  363. data/lib/chef/resource/windows_dns_zone.rb +2 -6
  364. data/lib/chef/resource/windows_env.rb +5 -4
  365. data/lib/chef/resource/windows_feature.rb +3 -9
  366. data/lib/chef/resource/windows_feature_dism.rb +2 -6
  367. data/lib/chef/resource/windows_feature_powershell.rb +3 -3
  368. data/lib/chef/resource/windows_firewall_profile.rb +4 -4
  369. data/lib/chef/resource/windows_firewall_rule.rb +2 -5
  370. data/lib/chef/resource/windows_font.rb +2 -4
  371. data/lib/chef/resource/windows_pagefile.rb +2 -6
  372. data/lib/chef/resource/windows_path.rb +2 -2
  373. data/lib/chef/resource/windows_printer.rb +4 -4
  374. data/lib/chef/resource/windows_printer_port.rb +6 -6
  375. data/lib/chef/resource/windows_security_policy.rb +9 -12
  376. data/lib/chef/resource/windows_share.rb +14 -21
  377. data/lib/chef/resource/windows_shortcut.rb +4 -6
  378. data/lib/chef/resource/windows_task.rb +17 -5
  379. data/lib/chef/resource/windows_uac.rb +2 -4
  380. data/lib/chef/resource/windows_user_privilege.rb +26 -36
  381. data/lib/chef/resource/windows_workgroup.rb +1 -2
  382. data/lib/chef/resource.rb +1 -1
  383. data/lib/chef/resource_reporter.rb +1 -1
  384. data/lib/chef/resources.rb +0 -1
  385. data/lib/chef/shell/ext.rb +3 -3
  386. data/lib/chef/user.rb +0 -1
  387. data/lib/chef/user_v1.rb +3 -4
  388. data/lib/chef/util/dsc/configuration_generator.rb +1 -0
  389. data/lib/chef/util/dsc/local_configuration_manager.rb +1 -1
  390. data/lib/chef/version.rb +1 -1
  391. data/lib/chef/win32/api.rb +2 -9
  392. data/lib/chef/win32/registry.rb +4 -2
  393. data/lib/chef/win32/version.rb +2 -4
  394. data/spec/data/cookbooks/openldap/libraries/openldap.rb +1 -1
  395. data/spec/data/lwrp/resources/bar.rb +2 -0
  396. data/spec/data/lwrp/resources/buck_passer.rb +1 -0
  397. data/spec/data/lwrp/resources/buck_passer_2.rb +1 -0
  398. data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +1 -0
  399. data/spec/data/lwrp/resources/foo.rb +2 -0
  400. data/spec/data/lwrp/resources/inline_compiler.rb +1 -0
  401. data/spec/data/lwrp/resources/monkey_name_printer.rb +1 -0
  402. data/spec/data/lwrp/resources/paint_drying_watcher.rb +1 -0
  403. data/spec/data/lwrp/resources/thumb_twiddler.rb +1 -0
  404. data/spec/data/lwrp/resources_with_default_attributes/nodeattr.rb +2 -0
  405. data/spec/data/lwrp_const_scoping/resources/conflict.rb +1 -0
  406. data/spec/data/lwrp_override/resources/foo.rb +1 -0
  407. data/spec/data/rubygems.org/nonexistent_gem-info +1 -0
  408. data/spec/data/rubygems.org/sexp_processor-info +49 -0
  409. data/spec/data/run_context/cookbooks/circular-dep1/resources/resource.rb +1 -0
  410. data/spec/data/run_context/cookbooks/circular-dep2/resources/resource.rb +1 -0
  411. data/spec/data/run_context/cookbooks/dependency1/resources/resource.rb +1 -0
  412. data/spec/data/run_context/cookbooks/dependency2/resources/resource.rb +1 -0
  413. data/spec/data/run_context/cookbooks/no-default-attr/resources/resource.rb +1 -0
  414. data/spec/data/run_context/cookbooks/test/resources/resource.rb +2 -0
  415. data/spec/data/run_context/cookbooks/test-with-circular-deps/resources/resource.rb +2 -0
  416. data/spec/data/run_context/cookbooks/test-with-deps/resources/resource.rb +1 -0
  417. data/spec/functional/assets/yumrepo/repodata/4632d67cb92636e7575d911c24f0e04d3505a944e97c483abe0c3e73a7c62d33-filelists.sqlite.bz2 +0 -0
  418. data/spec/functional/assets/yumrepo/repodata/74599b793e54d877323837d2d81a1c3c594c44e4335f9528234bb490f7b9b439-other.xml.gz +0 -0
  419. data/spec/functional/assets/yumrepo/repodata/a845d418f919d2115ab95a56b2c76f6825ad0d0bede49181a55c04f58995d057-primary.sqlite.bz2 +0 -0
  420. data/spec/functional/assets/yumrepo/repodata/af9b7cf9ef23bd7b43068d74a460f3b5d06753d638e58e4a0c9edc35bfb9cdc4-other.sqlite.bz2 +0 -0
  421. data/spec/functional/assets/yumrepo/repodata/bdb4f5f1492a3b9532f22c43110a81500dd744f23da0aec5c33b2a41317c737d-filelists.xml.gz +0 -0
  422. data/spec/functional/assets/yumrepo/repodata/c10d1d34ce99e02f12ec96ef68360543ab1bb7c3cb81a4a2bf78df7d8597e9df-primary.xml.gz +0 -0
  423. data/spec/functional/dsl/registry_helper_spec.rb +1 -1
  424. data/spec/functional/resource/aixinit_service_spec.rb +7 -7
  425. data/spec/functional/resource/apt_package_spec.rb +1 -1
  426. data/spec/functional/resource/chocolatey_package_spec.rb +9 -0
  427. data/spec/functional/resource/dnf_package_spec.rb +4 -1
  428. data/spec/functional/resource/dsc_script_spec.rb +1 -1
  429. data/spec/functional/resource/group_spec.rb +1 -5
  430. data/spec/functional/resource/link_spec.rb +0 -8
  431. data/spec/functional/resource/registry_spec.rb +8 -8
  432. data/spec/functional/resource/user/mac_user_spec.rb +2 -2
  433. data/spec/functional/resource/windows_certificate_spec.rb +92 -35
  434. data/spec/functional/resource/windows_font_spec.rb +1 -2
  435. data/spec/functional/resource/yum_package_spec.rb +0 -12
  436. data/spec/functional/shell_spec.rb +0 -5
  437. data/spec/functional/version_spec.rb +1 -1
  438. data/spec/functional/win32/registry_spec.rb +1 -1
  439. data/spec/integration/client/client_spec.rb +5 -2
  440. data/spec/integration/client/exit_code_spec.rb +1 -1
  441. data/spec/integration/client/ipv6_spec.rb +1 -1
  442. data/spec/integration/compliance/compliance_spec.rb +1 -1
  443. data/spec/integration/ohai/ohai_spec.rb +7 -6
  444. data/spec/integration/recipes/accumulator_spec.rb +13 -1
  445. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +5 -1
  446. data/spec/integration/recipes/lwrp_spec.rb +3 -1
  447. data/spec/integration/recipes/notifies_spec.rb +15 -1
  448. data/spec/integration/recipes/notifying_block_spec.rb +2 -1
  449. data/spec/integration/recipes/recipe_dsl_spec.rb +9 -9
  450. data/spec/integration/recipes/unified_mode_spec.rb +1 -1
  451. data/spec/integration/recipes/use_partial_spec.rb +4 -1
  452. data/spec/spec_helper.rb +10 -17
  453. data/spec/support/chef_helpers.rb +0 -16
  454. data/spec/support/lib/chef/resource/with_state.rb +0 -1
  455. data/spec/support/lib/chef/resource/zen_follower.rb +0 -1
  456. data/spec/support/lib/chef/resource/zen_master.rb +0 -1
  457. data/spec/support/matchers/leak.rb +7 -9
  458. data/spec/support/platform_helpers.rb +1 -12
  459. data/spec/support/shared/integration/integration_helper.rb +0 -1
  460. data/spec/support/shared/unit/script_resource.rb +2 -2
  461. data/spec/unit/application/solo_spec.rb +2 -2
  462. data/spec/unit/chef_fs/diff_spec.rb +1 -1
  463. data/spec/unit/chef_fs/file_system_spec.rb +1 -1
  464. data/spec/unit/client_spec.rb +4 -4
  465. data/spec/unit/compliance/fetcher/automate_spec.rb +0 -16
  466. data/spec/unit/compliance/reporter/automate_spec.rb +26 -2
  467. data/spec/unit/compliance/reporter/chef_server_automate_spec.rb +20 -0
  468. data/spec/unit/compliance/reporter/compliance_enforcer_spec.rb +1 -0
  469. data/spec/unit/compliance/runner_spec.rb +30 -4
  470. data/spec/unit/cookbook_version_spec.rb +0 -52
  471. data/spec/unit/daemon_spec.rb +5 -1
  472. data/spec/unit/data_bag_item_spec.rb +1 -6
  473. data/spec/unit/data_collector_spec.rb +2 -71
  474. data/spec/unit/dsl/reboot_pending_spec.rb +2 -2
  475. data/spec/unit/dsl/registry_helper_spec.rb +1 -1
  476. data/spec/unit/lwrp_spec.rb +1 -1
  477. data/spec/unit/mixin/checksum_spec.rb +0 -28
  478. data/spec/unit/mixin/params_validate_spec.rb +4 -3
  479. data/spec/unit/mixin/powershell_exec_spec.rb +9 -9
  480. data/spec/unit/mixin/powershell_out_spec.rb +2 -2
  481. data/spec/unit/node/attribute_spec.rb +1 -1
  482. data/spec/unit/node_spec.rb +78 -0
  483. data/spec/unit/org_group_spec.rb +45 -0
  484. data/spec/unit/platform/query_helpers_spec.rb +5 -5
  485. data/spec/unit/policy_builder/policyfile_spec.rb +1 -11
  486. data/spec/unit/property_spec.rb +23 -22
  487. data/spec/unit/provider/cron_spec.rb +1 -35
  488. data/spec/unit/provider/group/gpasswd_spec.rb +2 -2
  489. data/spec/unit/provider/group/groupmod_spec.rb +2 -2
  490. data/spec/unit/provider/group/pw_spec.rb +2 -2
  491. data/spec/unit/provider/group_spec.rb +1 -1
  492. data/spec/unit/provider/package/apt_spec.rb +84 -18
  493. data/spec/unit/provider/package/deb_spec.rb +3 -3
  494. data/spec/unit/provider/package/powershell_spec.rb +12 -74
  495. data/spec/unit/provider/package/rubygems_spec.rb +18 -30
  496. data/spec/unit/provider/service/arch_service_spec.rb +1 -0
  497. data/spec/unit/provider/service/debian_service_spec.rb +1 -0
  498. data/spec/unit/provider/service/macosx_spec.rb +2 -2
  499. data/spec/unit/provider/service/systemd_service_spec.rb +138 -23
  500. data/spec/unit/provider/service/upstart_service_spec.rb +0 -29
  501. data/spec/unit/provider/service/windows_spec.rb +2 -2
  502. data/spec/unit/provider/subversion_spec.rb +2 -2
  503. data/spec/unit/provider/systemd_unit_spec.rb +79 -60
  504. data/spec/unit/provider/zypper_repository_spec.rb +2 -2
  505. data/spec/unit/provider_spec.rb +0 -8
  506. data/spec/unit/resource/archive_file_spec.rb +1 -13
  507. data/spec/unit/resource/chef_client_trusted_certificate_spec.rb +0 -14
  508. data/spec/unit/resource/homebrew_cask_spec.rb +11 -29
  509. data/spec/unit/resource/mount_spec.rb +0 -10
  510. data/spec/unit/resource/powershell_script_spec.rb +2 -2
  511. data/spec/unit/resource/rhsm_subscription_spec.rb +3 -50
  512. data/spec/unit/resource/systemd_unit_spec.rb +1 -1
  513. data/spec/unit/resource/user_ulimit_spec.rb +1 -14
  514. data/spec/unit/resource/windows_task_spec.rb +1 -1
  515. data/spec/unit/resource_spec.rb +2 -7
  516. data/spec/unit/user_spec.rb +1 -1
  517. data/spec/unit/user_v1_spec.rb +6 -4
  518. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +2 -2
  519. data/tasks/rspec.rb +15 -7
  520. metadata +45 -404
  521. data/bin/knife +0 -24
  522. data/lib/chef/application/knife.rb +0 -234
  523. data/lib/chef/application/windows_service.rb +0 -338
  524. data/lib/chef/application/windows_service_manager.rb +0 -205
  525. data/lib/chef/chef_fs/knife.rb +0 -160
  526. data/lib/chef/chef_fs/parallelizer/flatten_enumerable.rb +0 -35
  527. data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +0 -278
  528. data/lib/chef/chef_fs/parallelizer.rb +0 -102
  529. data/lib/chef/cookbook_site_streaming_uploader.rb +0 -244
  530. data/lib/chef/knife/acl_add.rb +0 -57
  531. data/lib/chef/knife/acl_base.rb +0 -183
  532. data/lib/chef/knife/acl_bulk_add.rb +0 -78
  533. data/lib/chef/knife/acl_bulk_remove.rb +0 -83
  534. data/lib/chef/knife/acl_remove.rb +0 -62
  535. data/lib/chef/knife/acl_show.rb +0 -56
  536. data/lib/chef/knife/bootstrap/chef_vault_handler.rb +0 -162
  537. data/lib/chef/knife/bootstrap/client_builder.rb +0 -212
  538. data/lib/chef/knife/bootstrap/templates/README.md +0 -11
  539. data/lib/chef/knife/bootstrap/templates/chef-full.erb +0 -242
  540. data/lib/chef/knife/bootstrap/templates/windows-chef-client-msi.erb +0 -278
  541. data/lib/chef/knife/bootstrap/train_connector.rb +0 -336
  542. data/lib/chef/knife/bootstrap.rb +0 -1192
  543. data/lib/chef/knife/client_bulk_delete.rb +0 -104
  544. data/lib/chef/knife/client_create.rb +0 -101
  545. data/lib/chef/knife/client_delete.rb +0 -62
  546. data/lib/chef/knife/client_edit.rb +0 -52
  547. data/lib/chef/knife/client_key_create.rb +0 -73
  548. data/lib/chef/knife/client_key_delete.rb +0 -80
  549. data/lib/chef/knife/client_key_edit.rb +0 -83
  550. data/lib/chef/knife/client_key_list.rb +0 -73
  551. data/lib/chef/knife/client_key_show.rb +0 -80
  552. data/lib/chef/knife/client_list.rb +0 -41
  553. data/lib/chef/knife/client_reregister.rb +0 -58
  554. data/lib/chef/knife/client_show.rb +0 -48
  555. data/lib/chef/knife/config_get.rb +0 -39
  556. data/lib/chef/knife/config_get_profile.rb +0 -37
  557. data/lib/chef/knife/config_list.rb +0 -139
  558. data/lib/chef/knife/config_list_profiles.rb +0 -37
  559. data/lib/chef/knife/config_show.rb +0 -127
  560. data/lib/chef/knife/config_use.rb +0 -61
  561. data/lib/chef/knife/config_use_profile.rb +0 -47
  562. data/lib/chef/knife/configure.rb +0 -150
  563. data/lib/chef/knife/configure_client.rb +0 -48
  564. data/lib/chef/knife/cookbook_bulk_delete.rb +0 -71
  565. data/lib/chef/knife/cookbook_delete.rb +0 -151
  566. data/lib/chef/knife/cookbook_download.rb +0 -142
  567. data/lib/chef/knife/cookbook_list.rb +0 -47
  568. data/lib/chef/knife/cookbook_metadata.rb +0 -106
  569. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -49
  570. data/lib/chef/knife/cookbook_show.rb +0 -98
  571. data/lib/chef/knife/cookbook_upload.rb +0 -292
  572. data/lib/chef/knife/core/bootstrap_context.rb +0 -264
  573. data/lib/chef/knife/core/cookbook_scm_repo.rb +0 -159
  574. data/lib/chef/knife/core/formatting_options.rb +0 -49
  575. data/lib/chef/knife/core/gem_glob_loader.rb +0 -138
  576. data/lib/chef/knife/core/generic_presenter.rb +0 -232
  577. data/lib/chef/knife/core/hashed_command_loader.rb +0 -100
  578. data/lib/chef/knife/core/node_editor.rb +0 -130
  579. data/lib/chef/knife/core/node_presenter.rb +0 -133
  580. data/lib/chef/knife/core/object_loader.rb +0 -115
  581. data/lib/chef/knife/core/status_presenter.rb +0 -147
  582. data/lib/chef/knife/core/subcommand_loader.rb +0 -203
  583. data/lib/chef/knife/core/text_formatter.rb +0 -85
  584. data/lib/chef/knife/core/ui.rb +0 -338
  585. data/lib/chef/knife/core/windows_bootstrap_context.rb +0 -405
  586. data/lib/chef/knife/data_bag_create.rb +0 -81
  587. data/lib/chef/knife/data_bag_delete.rb +0 -49
  588. data/lib/chef/knife/data_bag_edit.rb +0 -74
  589. data/lib/chef/knife/data_bag_from_file.rb +0 -113
  590. data/lib/chef/knife/data_bag_list.rb +0 -42
  591. data/lib/chef/knife/data_bag_secret_options.rb +0 -122
  592. data/lib/chef/knife/data_bag_show.rb +0 -69
  593. data/lib/chef/knife/delete.rb +0 -125
  594. data/lib/chef/knife/deps.rb +0 -156
  595. data/lib/chef/knife/diff.rb +0 -83
  596. data/lib/chef/knife/download.rb +0 -84
  597. data/lib/chef/knife/edit.rb +0 -88
  598. data/lib/chef/knife/environment_compare.rb +0 -128
  599. data/lib/chef/knife/environment_create.rb +0 -52
  600. data/lib/chef/knife/environment_delete.rb +0 -44
  601. data/lib/chef/knife/environment_edit.rb +0 -44
  602. data/lib/chef/knife/environment_from_file.rb +0 -84
  603. data/lib/chef/knife/environment_list.rb +0 -41
  604. data/lib/chef/knife/environment_show.rb +0 -47
  605. data/lib/chef/knife/exec.rb +0 -99
  606. data/lib/chef/knife/group_add.rb +0 -55
  607. data/lib/chef/knife/group_create.rb +0 -49
  608. data/lib/chef/knife/group_destroy.rb +0 -53
  609. data/lib/chef/knife/group_list.rb +0 -43
  610. data/lib/chef/knife/group_remove.rb +0 -56
  611. data/lib/chef/knife/group_show.rb +0 -49
  612. data/lib/chef/knife/key_create.rb +0 -112
  613. data/lib/chef/knife/key_create_base.rb +0 -50
  614. data/lib/chef/knife/key_delete.rb +0 -55
  615. data/lib/chef/knife/key_edit.rb +0 -118
  616. data/lib/chef/knife/key_edit_base.rb +0 -55
  617. data/lib/chef/knife/key_list.rb +0 -90
  618. data/lib/chef/knife/key_list_base.rb +0 -45
  619. data/lib/chef/knife/key_show.rb +0 -53
  620. data/lib/chef/knife/list.rb +0 -177
  621. data/lib/chef/knife/node_bulk_delete.rb +0 -75
  622. data/lib/chef/knife/node_create.rb +0 -47
  623. data/lib/chef/knife/node_delete.rb +0 -46
  624. data/lib/chef/knife/node_edit.rb +0 -70
  625. data/lib/chef/knife/node_environment_set.rb +0 -53
  626. data/lib/chef/knife/node_from_file.rb +0 -51
  627. data/lib/chef/knife/node_list.rb +0 -44
  628. data/lib/chef/knife/node_policy_set.rb +0 -79
  629. data/lib/chef/knife/node_run_list_add.rb +0 -104
  630. data/lib/chef/knife/node_run_list_remove.rb +0 -67
  631. data/lib/chef/knife/node_run_list_set.rb +0 -66
  632. data/lib/chef/knife/node_show.rb +0 -63
  633. data/lib/chef/knife/null.rb +0 -12
  634. data/lib/chef/knife/raw.rb +0 -123
  635. data/lib/chef/knife/recipe_list.rb +0 -32
  636. data/lib/chef/knife/rehash.rb +0 -50
  637. data/lib/chef/knife/role_bulk_delete.rb +0 -66
  638. data/lib/chef/knife/role_create.rb +0 -53
  639. data/lib/chef/knife/role_delete.rb +0 -46
  640. data/lib/chef/knife/role_edit.rb +0 -45
  641. data/lib/chef/knife/role_env_run_list_add.rb +0 -87
  642. data/lib/chef/knife/role_env_run_list_clear.rb +0 -55
  643. data/lib/chef/knife/role_env_run_list_remove.rb +0 -57
  644. data/lib/chef/knife/role_env_run_list_replace.rb +0 -60
  645. data/lib/chef/knife/role_env_run_list_set.rb +0 -70
  646. data/lib/chef/knife/role_from_file.rb +0 -51
  647. data/lib/chef/knife/role_list.rb +0 -42
  648. data/lib/chef/knife/role_run_list_add.rb +0 -87
  649. data/lib/chef/knife/role_run_list_clear.rb +0 -55
  650. data/lib/chef/knife/role_run_list_remove.rb +0 -56
  651. data/lib/chef/knife/role_run_list_replace.rb +0 -60
  652. data/lib/chef/knife/role_run_list_set.rb +0 -69
  653. data/lib/chef/knife/role_show.rb +0 -48
  654. data/lib/chef/knife/search.rb +0 -194
  655. data/lib/chef/knife/serve.rb +0 -65
  656. data/lib/chef/knife/show.rb +0 -72
  657. data/lib/chef/knife/ssh.rb +0 -645
  658. data/lib/chef/knife/ssl_check.rb +0 -284
  659. data/lib/chef/knife/ssl_fetch.rb +0 -161
  660. data/lib/chef/knife/status.rb +0 -95
  661. data/lib/chef/knife/supermarket_download.rb +0 -121
  662. data/lib/chef/knife/supermarket_install.rb +0 -192
  663. data/lib/chef/knife/supermarket_list.rb +0 -76
  664. data/lib/chef/knife/supermarket_search.rb +0 -53
  665. data/lib/chef/knife/supermarket_share.rb +0 -166
  666. data/lib/chef/knife/supermarket_show.rb +0 -66
  667. data/lib/chef/knife/supermarket_unshare.rb +0 -61
  668. data/lib/chef/knife/tag_create.rb +0 -52
  669. data/lib/chef/knife/tag_delete.rb +0 -60
  670. data/lib/chef/knife/tag_list.rb +0 -47
  671. data/lib/chef/knife/upload.rb +0 -86
  672. data/lib/chef/knife/user_create.rb +0 -107
  673. data/lib/chef/knife/user_delete.rb +0 -44
  674. data/lib/chef/knife/user_dissociate.rb +0 -42
  675. data/lib/chef/knife/user_edit.rb +0 -52
  676. data/lib/chef/knife/user_invite_add.rb +0 -43
  677. data/lib/chef/knife/user_invite_list.rb +0 -34
  678. data/lib/chef/knife/user_invite_rescind.rb +0 -63
  679. data/lib/chef/knife/user_key_create.rb +0 -73
  680. data/lib/chef/knife/user_key_delete.rb +0 -80
  681. data/lib/chef/knife/user_key_edit.rb +0 -83
  682. data/lib/chef/knife/user_key_list.rb +0 -73
  683. data/lib/chef/knife/user_key_show.rb +0 -80
  684. data/lib/chef/knife/user_list.rb +0 -42
  685. data/lib/chef/knife/user_reregister.rb +0 -59
  686. data/lib/chef/knife/user_show.rb +0 -48
  687. data/lib/chef/knife/xargs.rb +0 -282
  688. data/lib/chef/knife/yaml_convert.rb +0 -91
  689. data/lib/chef/knife.rb +0 -665
  690. data/lib/chef/resource/user/dscl_user.rb +0 -35
  691. data/spec/data/knife-home/.chef/plugins/knife/example_home_subcommand.rb +0 -0
  692. data/spec/data/knife-site-subcommands/plugins/knife/example_subcommand.rb +0 -0
  693. data/spec/data/knife_subcommand/test_explicit_category.rb +0 -7
  694. data/spec/data/knife_subcommand/test_name_mapping.rb +0 -4
  695. data/spec/data/knife_subcommand/test_yourself.rb +0 -21
  696. data/spec/functional/assets/yumrepo-empty/repodata/01a3b-filelists.sqlite.bz2 +0 -0
  697. data/spec/functional/assets/yumrepo-empty/repodata/401dc-filelists.xml.gz +0 -0
  698. data/spec/functional/assets/yumrepo-empty/repodata/5dc1e-primary.sqlite.bz2 +0 -0
  699. data/spec/functional/assets/yumrepo-empty/repodata/6bf96-other.xml.gz +0 -0
  700. data/spec/functional/assets/yumrepo-empty/repodata/7c365-other.sqlite.bz2 +0 -0
  701. data/spec/functional/assets/yumrepo-empty/repodata/dabe2-primary.xml.gz +0 -0
  702. data/spec/functional/assets/yumrepo-empty/repodata/repomd.xml +0 -55
  703. data/spec/functional/knife/configure_spec.rb +0 -33
  704. data/spec/functional/knife/cookbook_delete_spec.rb +0 -156
  705. data/spec/functional/knife/exec_spec.rb +0 -55
  706. data/spec/functional/knife/rehash_spec.rb +0 -39
  707. data/spec/functional/knife/smoke_test.rb +0 -42
  708. data/spec/functional/knife/ssh_spec.rb +0 -352
  709. data/spec/functional/resource/user/dscl_spec.rb +0 -188
  710. data/spec/functional/resource/windows_service_spec.rb +0 -105
  711. data/spec/functional/win32/service_manager_spec.rb +0 -220
  712. data/spec/integration/client/fips_spec.rb +0 -21
  713. data/spec/integration/knife/chef_fs_data_store_spec.rb +0 -557
  714. data/spec/integration/knife/chef_repo_path_spec.rb +0 -962
  715. data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -200
  716. data/spec/integration/knife/chefignore_spec.rb +0 -301
  717. data/spec/integration/knife/client_bulk_delete_spec.rb +0 -131
  718. data/spec/integration/knife/client_create_spec.rb +0 -70
  719. data/spec/integration/knife/client_delete_spec.rb +0 -64
  720. data/spec/integration/knife/client_key_create_spec.rb +0 -66
  721. data/spec/integration/knife/client_key_delete_spec.rb +0 -43
  722. data/spec/integration/knife/client_key_list_spec.rb +0 -61
  723. data/spec/integration/knife/client_key_show_spec.rb +0 -45
  724. data/spec/integration/knife/client_list_spec.rb +0 -49
  725. data/spec/integration/knife/client_show_spec.rb +0 -37
  726. data/spec/integration/knife/common_options_spec.rb +0 -174
  727. data/spec/integration/knife/config_list_spec.rb +0 -220
  728. data/spec/integration/knife/config_show_spec.rb +0 -192
  729. data/spec/integration/knife/config_use_spec.rb +0 -198
  730. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +0 -113
  731. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +0 -65
  732. data/spec/integration/knife/cookbook_download_spec.rb +0 -72
  733. data/spec/integration/knife/cookbook_list_spec.rb +0 -55
  734. data/spec/integration/knife/cookbook_show_spec.rb +0 -149
  735. data/spec/integration/knife/cookbook_upload_spec.rb +0 -128
  736. data/spec/integration/knife/data_bag_create_spec.rb +0 -125
  737. data/spec/integration/knife/data_bag_delete_spec.rb +0 -59
  738. data/spec/integration/knife/data_bag_edit_spec.rb +0 -105
  739. data/spec/integration/knife/data_bag_from_file_spec.rb +0 -116
  740. data/spec/integration/knife/data_bag_list_spec.rb +0 -44
  741. data/spec/integration/knife/data_bag_show_spec.rb +0 -95
  742. data/spec/integration/knife/delete_spec.rb +0 -1018
  743. data/spec/integration/knife/deps_spec.rb +0 -703
  744. data/spec/integration/knife/diff_spec.rb +0 -605
  745. data/spec/integration/knife/download_spec.rb +0 -1336
  746. data/spec/integration/knife/environment_compare_spec.rb +0 -75
  747. data/spec/integration/knife/environment_create_spec.rb +0 -41
  748. data/spec/integration/knife/environment_delete_spec.rb +0 -37
  749. data/spec/integration/knife/environment_from_file_spec.rb +0 -116
  750. data/spec/integration/knife/environment_list_spec.rb +0 -42
  751. data/spec/integration/knife/environment_show_spec.rb +0 -77
  752. data/spec/integration/knife/list_spec.rb +0 -1060
  753. data/spec/integration/knife/node_bulk_delete_spec.rb +0 -52
  754. data/spec/integration/knife/node_create_spec.rb +0 -47
  755. data/spec/integration/knife/node_delete_spec.rb +0 -48
  756. data/spec/integration/knife/node_environment_set_spec.rb +0 -46
  757. data/spec/integration/knife/node_from_file_spec.rb +0 -59
  758. data/spec/integration/knife/node_list_spec.rb +0 -45
  759. data/spec/integration/knife/node_run_list_add_spec.rb +0 -54
  760. data/spec/integration/knife/node_run_list_remove_spec.rb +0 -36
  761. data/spec/integration/knife/node_run_list_set_spec.rb +0 -41
  762. data/spec/integration/knife/node_show_spec.rb +0 -36
  763. data/spec/integration/knife/raw_spec.rb +0 -297
  764. data/spec/integration/knife/redirection_spec.rb +0 -64
  765. data/spec/integration/knife/role_bulk_delete_spec.rb +0 -52
  766. data/spec/integration/knife/role_create_spec.rb +0 -41
  767. data/spec/integration/knife/role_delete_spec.rb +0 -48
  768. data/spec/integration/knife/role_from_file_spec.rb +0 -96
  769. data/spec/integration/knife/role_list_spec.rb +0 -45
  770. data/spec/integration/knife/role_show_spec.rb +0 -51
  771. data/spec/integration/knife/search_node_spec.rb +0 -40
  772. data/spec/integration/knife/serve_spec.rb +0 -92
  773. data/spec/integration/knife/show_spec.rb +0 -197
  774. data/spec/integration/knife/upload_spec.rb +0 -1616
  775. data/spec/support/shared/functional/knife.rb +0 -37
  776. data/spec/support/shared/functional/win32_service.rb +0 -57
  777. data/spec/support/shared/integration/knife_support.rb +0 -192
  778. data/spec/support/shared/unit/knife_shared.rb +0 -39
  779. data/spec/unit/application/knife_spec.rb +0 -241
  780. data/spec/unit/chef_fs/parallelizer_spec.rb +0 -479
  781. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -198
  782. data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +0 -152
  783. data/spec/unit/knife/bootstrap/client_builder_spec.rb +0 -207
  784. data/spec/unit/knife/bootstrap/train_connector_spec.rb +0 -244
  785. data/spec/unit/knife/bootstrap_spec.rb +0 -2220
  786. data/spec/unit/knife/client_bulk_delete_spec.rb +0 -166
  787. data/spec/unit/knife/client_create_spec.rb +0 -169
  788. data/spec/unit/knife/client_delete_spec.rb +0 -99
  789. data/spec/unit/knife/client_edit_spec.rb +0 -53
  790. data/spec/unit/knife/client_list_spec.rb +0 -34
  791. data/spec/unit/knife/client_reregister_spec.rb +0 -62
  792. data/spec/unit/knife/client_show_spec.rb +0 -52
  793. data/spec/unit/knife/configure_client_spec.rb +0 -81
  794. data/spec/unit/knife/configure_spec.rb +0 -190
  795. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +0 -87
  796. data/spec/unit/knife/cookbook_delete_spec.rb +0 -239
  797. data/spec/unit/knife/cookbook_download_spec.rb +0 -255
  798. data/spec/unit/knife/cookbook_list_spec.rb +0 -88
  799. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +0 -72
  800. data/spec/unit/knife/cookbook_metadata_spec.rb +0 -182
  801. data/spec/unit/knife/cookbook_show_spec.rb +0 -253
  802. data/spec/unit/knife/cookbook_upload_spec.rb +0 -364
  803. data/spec/unit/knife/core/bootstrap_context_spec.rb +0 -287
  804. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +0 -187
  805. data/spec/unit/knife/core/gem_glob_loader_spec.rb +0 -209
  806. data/spec/unit/knife/core/hashed_command_loader_spec.rb +0 -112
  807. data/spec/unit/knife/core/node_editor_spec.rb +0 -211
  808. data/spec/unit/knife/core/object_loader_spec.rb +0 -81
  809. data/spec/unit/knife/core/status_presenter_spec.rb +0 -54
  810. data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -64
  811. data/spec/unit/knife/core/ui_spec.rb +0 -656
  812. data/spec/unit/knife/core/windows_bootstrap_context_spec.rb +0 -238
  813. data/spec/unit/knife/data_bag_create_spec.rb +0 -175
  814. data/spec/unit/knife/data_bag_edit_spec.rb +0 -126
  815. data/spec/unit/knife/data_bag_from_file_spec.rb +0 -174
  816. data/spec/unit/knife/data_bag_secret_options_spec.rb +0 -173
  817. data/spec/unit/knife/data_bag_show_spec.rb +0 -139
  818. data/spec/unit/knife/environment_compare_spec.rb +0 -112
  819. data/spec/unit/knife/environment_create_spec.rb +0 -91
  820. data/spec/unit/knife/environment_delete_spec.rb +0 -71
  821. data/spec/unit/knife/environment_edit_spec.rb +0 -79
  822. data/spec/unit/knife/environment_from_file_spec.rb +0 -90
  823. data/spec/unit/knife/environment_list_spec.rb +0 -54
  824. data/spec/unit/knife/environment_show_spec.rb +0 -52
  825. data/spec/unit/knife/key_create_spec.rb +0 -223
  826. data/spec/unit/knife/key_delete_spec.rb +0 -133
  827. data/spec/unit/knife/key_edit_spec.rb +0 -264
  828. data/spec/unit/knife/key_helper.rb +0 -74
  829. data/spec/unit/knife/key_list_spec.rb +0 -216
  830. data/spec/unit/knife/key_show_spec.rb +0 -126
  831. data/spec/unit/knife/node_bulk_delete_spec.rb +0 -94
  832. data/spec/unit/knife/node_delete_spec.rb +0 -77
  833. data/spec/unit/knife/node_edit_spec.rb +0 -116
  834. data/spec/unit/knife/node_environment_set_spec.rb +0 -61
  835. data/spec/unit/knife/node_from_file_spec.rb +0 -59
  836. data/spec/unit/knife/node_list_spec.rb +0 -62
  837. data/spec/unit/knife/node_policy_set_spec.rb +0 -122
  838. data/spec/unit/knife/node_run_list_add_spec.rb +0 -145
  839. data/spec/unit/knife/node_run_list_remove_spec.rb +0 -106
  840. data/spec/unit/knife/node_run_list_set_spec.rb +0 -115
  841. data/spec/unit/knife/node_show_spec.rb +0 -65
  842. data/spec/unit/knife/raw_spec.rb +0 -43
  843. data/spec/unit/knife/role_bulk_delete_spec.rb +0 -80
  844. data/spec/unit/knife/role_create_spec.rb +0 -80
  845. data/spec/unit/knife/role_delete_spec.rb +0 -67
  846. data/spec/unit/knife/role_edit_spec.rb +0 -77
  847. data/spec/unit/knife/role_env_run_list_add_spec.rb +0 -217
  848. data/spec/unit/knife/role_env_run_list_clear_spec.rb +0 -94
  849. data/spec/unit/knife/role_env_run_list_remove_spec.rb +0 -102
  850. data/spec/unit/knife/role_env_run_list_replace_spec.rb +0 -105
  851. data/spec/unit/knife/role_env_run_list_set_spec.rb +0 -99
  852. data/spec/unit/knife/role_from_file_spec.rb +0 -69
  853. data/spec/unit/knife/role_list_spec.rb +0 -54
  854. data/spec/unit/knife/role_run_list_add_spec.rb +0 -179
  855. data/spec/unit/knife/role_run_list_clear_spec.rb +0 -84
  856. data/spec/unit/knife/role_run_list_remove_spec.rb +0 -92
  857. data/spec/unit/knife/role_run_list_replace_spec.rb +0 -98
  858. data/spec/unit/knife/role_run_list_set_spec.rb +0 -89
  859. data/spec/unit/knife/role_show_spec.rb +0 -59
  860. data/spec/unit/knife/ssh_spec.rb +0 -403
  861. data/spec/unit/knife/ssl_check_spec.rb +0 -256
  862. data/spec/unit/knife/ssl_fetch_spec.rb +0 -222
  863. data/spec/unit/knife/status_spec.rb +0 -112
  864. data/spec/unit/knife/supermarket_download_spec.rb +0 -152
  865. data/spec/unit/knife/supermarket_install_spec.rb +0 -202
  866. data/spec/unit/knife/supermarket_list_spec.rb +0 -70
  867. data/spec/unit/knife/supermarket_search_spec.rb +0 -85
  868. data/spec/unit/knife/supermarket_share_spec.rb +0 -208
  869. data/spec/unit/knife/supermarket_unshare_spec.rb +0 -78
  870. data/spec/unit/knife/tag_create_spec.rb +0 -23
  871. data/spec/unit/knife/tag_delete_spec.rb +0 -25
  872. data/spec/unit/knife/tag_list_spec.rb +0 -23
  873. data/spec/unit/knife/user_create_spec.rb +0 -184
  874. data/spec/unit/knife/user_delete_spec.rb +0 -46
  875. data/spec/unit/knife/user_edit_spec.rb +0 -48
  876. data/spec/unit/knife/user_list_spec.rb +0 -36
  877. data/spec/unit/knife/user_reregister_spec.rb +0 -56
  878. data/spec/unit/knife/user_show_spec.rb +0 -46
  879. data/spec/unit/knife_spec.rb +0 -634
  880. data/spec/unit/provider/user/dscl_spec.rb +0 -699
  881. data/spec/unit/windows_service_spec.rb +0 -118
data/bin/knife DELETED
@@ -1,24 +0,0 @@
1
- #!/usr/bin/env ruby
2
- #
3
- # ./knife - Chef CLI interface
4
- #
5
- # Author:: Adam Jacob (<adam@chef.io>)
6
- # Copyright:: Copyright 2009-2018, Chef Software Inc.
7
- # License:: Apache License, Version 2.0
8
- #
9
- # Licensed under the Apache License, Version 2.0 (the "License");
10
- # you may not use this file except in compliance with the License.
11
- # You may obtain a copy of the License at
12
- #
13
- # http://www.apache.org/licenses/LICENSE-2.0
14
- #
15
- # Unless required by applicable law or agreed to in writing, software
16
- # distributed under the License is distributed on an "AS IS" BASIS,
17
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
-
21
- $:.unshift(File.expand_path(File.join(__dir__, "..", "lib")))
22
- require "chef/application/knife"
23
-
24
- Chef::Application::Knife.new.run
@@ -1,234 +0,0 @@
1
- #
2
- # Author:: Adam Jacob (<adam@chef.io)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
-
18
- require_relative "../knife"
19
- require_relative "../application"
20
- require "mixlib/log"
21
- require "ohai/config"
22
- module Net
23
- autoload :HTTP, "net/http"
24
- end
25
- require "chef-utils/dist" unless defined?(ChefUtils::Dist)
26
-
27
- class Chef::Application::Knife < Chef::Application
28
-
29
- NO_COMMAND_GIVEN = "You need to pass a sub-command (e.g., knife SUB-COMMAND)\n".freeze
30
-
31
- banner "Usage: knife sub-command (options)"
32
-
33
- option :config_file,
34
- short: "-c CONFIG",
35
- long: "--config CONFIG",
36
- description: "The configuration file to use.",
37
- proc: lambda { |path| File.expand_path(path, Dir.pwd) }
38
-
39
- option :config_option,
40
- long: "--config-option OPTION=VALUE",
41
- description: "Override a single configuration option.",
42
- proc: lambda { |option, existing|
43
- (existing ||= []) << option
44
- existing
45
- }
46
-
47
- verbosity_level = 0
48
- option :verbosity,
49
- short: "-V",
50
- long: "--verbose",
51
- description: "More verbose output. Use twice (-VV) for additional verbosity and three times (-VVV) for maximum verbosity.",
52
- proc: Proc.new { verbosity_level += 1 },
53
- default: 0
54
-
55
- option :color,
56
- long: "--[no-]color",
57
- boolean: true,
58
- default: true,
59
- description: "Use colored output, defaults to enabled."
60
-
61
- option :environment,
62
- short: "-E ENVIRONMENT",
63
- long: "--environment ENVIRONMENT",
64
- description: "Set the #{ChefUtils::Dist::Infra::PRODUCT} environment (except for in searches, where this will be flagrantly ignored)."
65
-
66
- option :editor,
67
- short: "-e EDITOR",
68
- long: "--editor EDITOR",
69
- description: "Set the editor to use for interactive commands.",
70
- default: ENV["EDITOR"]
71
-
72
- option :disable_editing,
73
- short: "-d",
74
- long: "--disable-editing",
75
- description: "Do not open EDITOR, just accept the data as is.",
76
- boolean: true,
77
- default: false
78
-
79
- option :help,
80
- short: "-h",
81
- long: "--help",
82
- description: "Show this help message.",
83
- on: :tail,
84
- boolean: true
85
-
86
- option :node_name,
87
- short: "-u USER",
88
- long: "--user USER",
89
- description: "#{ChefUtils::Dist::Server::PRODUCT} API client username."
90
-
91
- option :client_key,
92
- short: "-k KEY",
93
- long: "--key KEY",
94
- description: "#{ChefUtils::Dist::Server::PRODUCT} API client key.",
95
- proc: lambda { |path| File.expand_path(path, Dir.pwd) }
96
-
97
- option :chef_server_url,
98
- short: "-s URL",
99
- long: "--server-url URL",
100
- description: "#{ChefUtils::Dist::Server::PRODUCT} URL."
101
-
102
- option :yes,
103
- short: "-y",
104
- long: "--yes",
105
- description: "Say yes to all prompts for confirmation."
106
-
107
- option :defaults,
108
- long: "--defaults",
109
- description: "Accept default values for all questions."
110
-
111
- option :print_after,
112
- long: "--print-after",
113
- description: "Show the data after a destructive operation."
114
-
115
- option :format,
116
- short: "-F FORMAT",
117
- long: "--format FORMAT",
118
- description: "Which format to use for output.",
119
- in: %w{summary text json yaml pp},
120
- default: "summary"
121
-
122
- option :local_mode,
123
- short: "-z",
124
- long: "--local-mode",
125
- description: "Point knife commands at local repository instead of #{ChefUtils::Dist::Server::PRODUCT}.",
126
- boolean: true
127
-
128
- option :chef_zero_host,
129
- long: "--chef-zero-host HOST",
130
- description: "Host to start #{ChefUtils::Dist::Zero::PRODUCT} on."
131
-
132
- option :chef_zero_port,
133
- long: "--chef-zero-port PORT",
134
- description: "Port (or port range) to start #{ChefUtils::Dist::Zero::PRODUCT} on. Port ranges like 1000,1010 or 8889-9999 will try all given ports until one works."
135
-
136
- option :listen,
137
- long: "--[no-]listen",
138
- description: "Whether a local mode (-z) server binds to a port.",
139
- boolean: false
140
-
141
- option :version,
142
- short: "-v",
143
- long: "--version",
144
- description: "Show #{ChefUtils::Dist::Infra::PRODUCT} version.",
145
- boolean: true,
146
- proc: lambda { |v| puts "#{ChefUtils::Dist::Infra::PRODUCT}: #{::Chef::VERSION}" },
147
- exit: 0
148
-
149
- option :fips,
150
- long: "--[no-]fips",
151
- description: "Enable FIPS mode.",
152
- boolean: true,
153
- default: nil
154
-
155
- option :profile,
156
- long: "--profile PROFILE",
157
- description: "The credentials profile to select."
158
-
159
- # Run knife
160
- def run
161
- ChefConfig::PathHelper.per_tool_home_environment = "KNIFE_HOME"
162
- Mixlib::Log::Formatter.show_time = false
163
- validate_and_parse_options
164
- quiet_traps
165
- Chef::Knife.run(ARGV, options)
166
- exit 0
167
- end
168
-
169
- private
170
-
171
- def quiet_traps
172
- trap("TERM") do
173
- exit 1
174
- end
175
-
176
- trap("INT") do
177
- exit 2
178
- end
179
- end
180
-
181
- def validate_and_parse_options
182
- # Checking ARGV validity *before* parse_options because parse_options
183
- # mangles ARGV in some situations
184
- if no_command_given?
185
- print_help_and_exit(1, NO_COMMAND_GIVEN)
186
- elsif no_subcommand_given?
187
- if want_help? || want_version?
188
- print_help_and_exit(0)
189
- else
190
- print_help_and_exit(2, NO_COMMAND_GIVEN)
191
- end
192
- end
193
- end
194
-
195
- def no_subcommand_given?
196
- ARGV[0] =~ /^-/
197
- end
198
-
199
- def no_command_given?
200
- ARGV.empty?
201
- end
202
-
203
- def want_help?
204
- ARGV[0] =~ /^(--help|-h)$/
205
- end
206
-
207
- def want_version?
208
- ARGV[0] =~ /^(--version|-v)$/
209
- end
210
-
211
- def print_help_and_exit(exitcode = 1, fatal_message = nil)
212
- Chef::Log.error(fatal_message) if fatal_message
213
-
214
- begin
215
- parse_options
216
- rescue OptionParser::InvalidOption => e
217
- puts "#{e}\n"
218
- end
219
-
220
- if want_help?
221
- puts "#{ChefUtils::Dist::Infra::PRODUCT}: #{Chef::VERSION}"
222
- puts
223
- puts "Docs: #{ChefUtils::Dist::Org::KNIFE_DOCS}"
224
- puts "Patents: #{ChefUtils::Dist::Org::PATENTS}"
225
- puts
226
- end
227
-
228
- puts opt_parser
229
- puts
230
- Chef::Knife.list_commands
231
- exit exitcode
232
- end
233
-
234
- end
@@ -1,338 +0,0 @@
1
- #
2
- # Author:: Christopher Maier (<maier@lambda.local>)
3
- # Copyright:: Copyright (c) Chef Software Inc.
4
- # License:: Apache License, Version 2.0
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require_relative "../../chef"
20
- require_relative "../monologger"
21
- require_relative "../application"
22
- require_relative "../client"
23
- require_relative "../config"
24
- require_relative "../handler/error_report"
25
- require_relative "../log"
26
- require_relative "../http"
27
- require "mixlib/cli" unless defined?(Mixlib::CLI)
28
- require "socket" unless defined?(Socket)
29
- require "uri" unless defined?(URI)
30
- require "win32/daemon"
31
- require_relative "../mixin/shell_out"
32
- require "chef-utils/dist" unless defined?(ChefUtils::Dist)
33
-
34
- class Chef
35
- class Application
36
- class WindowsService < ::Win32::Daemon
37
- include Mixlib::CLI
38
- include Chef::Mixin::ShellOut
39
-
40
- option :config_file,
41
- short: "-c CONFIG",
42
- long: "--config CONFIG",
43
- default: "#{Chef::Config.etc_chef_dir}/client.rb",
44
- description: "The configuration file to use for #{ChefUtils::Dist::Infra::PRODUCT} runs."
45
-
46
- option :log_location,
47
- short: "-L LOGLOCATION",
48
- long: "--logfile LOGLOCATION",
49
- description: "Set the log file location."
50
-
51
- option :splay,
52
- short: "-s SECONDS",
53
- long: "--splay SECONDS",
54
- description: "The splay time for running at intervals, in seconds.",
55
- proc: lambda { |s| s.to_i }
56
-
57
- option :interval,
58
- short: "-i SECONDS",
59
- long: "--interval SECONDS",
60
- description: "Set the number of seconds to wait between #{ChefUtils::Dist::Infra::PRODUCT} runs.",
61
- proc: lambda { |s| s.to_i }
62
-
63
- DEFAULT_LOG_LOCATION ||= "#{Chef::Config.c_chef_dir}/client.log".freeze
64
-
65
- def service_init
66
- @service_action_mutex = Mutex.new
67
- @service_signal = ConditionVariable.new
68
-
69
- reconfigure
70
- Chef::Log.info("#{ChefUtils::Dist::Infra::CLIENT} Service initialized")
71
- end
72
-
73
- def service_main(*startup_parameters)
74
- # Chef::Config is initialized during service_init
75
- # Set the initial timeout to splay sleep time
76
- timeout = rand Chef::Config[:splay]
77
-
78
- while running?
79
- # Grab the service_action_mutex to make a chef-client run
80
- @service_action_mutex.synchronize do
81
-
82
- Chef::Log.info("Next #{ChefUtils::Dist::Infra::CLIENT} run will happen in #{timeout} seconds")
83
- @service_signal.wait(@service_action_mutex, timeout)
84
-
85
- # Continue only if service is RUNNING
86
- next if state != RUNNING
87
-
88
- # Reconfigure each time through to pick up any changes in the client file
89
- Chef::Log.info("Reconfiguring with startup parameters")
90
- reconfigure(startup_parameters)
91
- timeout = Chef::Config[:interval]
92
-
93
- # Honor splay sleep config
94
- timeout += rand Chef::Config[:splay]
95
-
96
- # run chef-client only if service is in RUNNING state
97
- next if state != RUNNING
98
-
99
- Chef::Log.info("#{ChefUtils::Dist::Infra::CLIENT} service is starting a #{ChefUtils::Dist::Infra::CLIENT} run...")
100
- run_chef_client
101
- rescue SystemExit => e
102
- # Do not raise any of the errors here in order to
103
- # prevent service crash
104
- Chef::Log.error("#{e.class}: #{e}")
105
- rescue Exception => e
106
- Chef::Log.error("#{e.class}: #{e}")
107
-
108
- end
109
- end
110
-
111
- # Daemon class needs to have all the signal callbacks return
112
- # before service_main returns.
113
- Chef::Log.trace("Giving signal callbacks some time to exit...")
114
- sleep 1
115
- Chef::Log.trace("Exiting service...")
116
- end
117
-
118
- ################################################################################
119
- # Control Signal Callback Methods
120
- ################################################################################
121
-
122
- def service_stop
123
- run_warning_displayed = false
124
- Chef::Log.info("STOP request from operating system.")
125
- loop do
126
- # See if a run is in flight
127
- if @service_action_mutex.try_lock
128
- # Run is not in flight. Wake up service_main to exit.
129
- @service_signal.signal
130
- @service_action_mutex.unlock
131
- break
132
- else
133
- unless run_warning_displayed
134
- Chef::Log.info("Currently a #{ChefUtils::Dist::Infra::PRODUCT} run is happening on this system.")
135
- Chef::Log.info("Service will stop when run is completed.")
136
- run_warning_displayed = true
137
- end
138
-
139
- Chef::Log.trace("Waiting for #{ChefUtils::Dist::Infra::PRODUCT} run...")
140
- sleep 1
141
- end
142
- end
143
- Chef::Log.info("Service is stopping....")
144
- end
145
-
146
- def service_pause
147
- Chef::Log.info("PAUSE request from operating system.")
148
-
149
- # We don't need to wake up the service_main if it's waiting
150
- # since this is a PAUSE signal.
151
-
152
- if @service_action_mutex.locked?
153
- Chef::Log.info("Currently a #{ChefUtils::Dist::Infra::PRODUCT} run is happening.")
154
- Chef::Log.info("Service will pause once it's completed.")
155
- else
156
- Chef::Log.info("Service is pausing....")
157
- end
158
- end
159
-
160
- def service_resume
161
- # We don't need to wake up the service_main if it's waiting
162
- # since this is a RESUME signal.
163
-
164
- Chef::Log.info("RESUME signal received from the OS.")
165
- Chef::Log.info("Service is resuming....")
166
- end
167
-
168
- def service_shutdown
169
- Chef::Log.info("SHUTDOWN signal received from the OS.")
170
-
171
- # Treat shutdown similar to stop.
172
-
173
- service_stop
174
- end
175
-
176
- ################################################################################
177
- # Internal Methods
178
- ################################################################################
179
-
180
- private
181
-
182
- # Initializes Chef::Client instance and runs it
183
- def run_chef_client
184
- # The chef client will be started in a new process. We have used shell_out to start the chef-client.
185
- # The log_location and config_file of the parent process is passed to the new chef-client process.
186
- # We need to add the --no-fork, as by default it is set to fork=true.
187
-
188
- Chef::Log.info "Starting #{ChefUtils::Dist::Infra::CLIENT} in a new process"
189
- # Pass config params to the new process
190
- config_params = " --no-fork"
191
- config_params += " -c #{Chef::Config[:config_file]}" unless Chef::Config[:config_file].nil?
192
- # log_location might be an event logger and if so we cannot pass as a command argument
193
- # but shed no tears! If the logger is an event logger, it must have been configured
194
- # as such in the config file and chef-client will use that when no arg is passed here
195
- config_params += " -L #{resolve_log_location}" if resolve_log_location.is_a?(String)
196
-
197
- # Starts a new process and waits till the process exits
198
-
199
- result = shell_out(
200
- "#{ChefUtils::Dist::Infra::CLIENT}.bat #{config_params}",
201
- timeout: Chef::Config[:windows_service][:watchdog_timeout],
202
- logger: Chef::Log
203
- )
204
- Chef::Log.trace (result.stdout).to_s
205
- Chef::Log.trace (result.stderr).to_s
206
- rescue Mixlib::ShellOut::CommandTimeout => e
207
- Chef::Log.error "#{ChefUtils::Dist::Infra::CLIENT} timed out\n(#{e})"
208
- Chef::Log.error(<<-EOF)
209
- Your #{ChefUtils::Dist::Infra::CLIENT} run timed out. You can increase the time #{ChefUtils::Dist::Infra::CLIENT} is given
210
- to complete by configuring windows_service.watchdog_timeout in your client.rb.
211
- EOF
212
- rescue Mixlib::ShellOut::ShellCommandFailed => e
213
- Chef::Log.warn "Not able to start #{ChefUtils::Dist::Infra::CLIENT} in new process (#{e})"
214
- rescue => e
215
- Chef::Log.error e
216
- ensure
217
- # Once process exits, we log the current process' pid
218
- Chef::Log.info "Child process exited (pid: #{Process.pid})"
219
- end
220
-
221
- def apply_config(config_file_path)
222
- Chef::Config.from_file(config_file_path)
223
- Chef::Config.merge!(config)
224
- end
225
-
226
- # Lifted from Chef::Application, with addition of optional startup parameters
227
- # for playing nicely with Windows Services
228
- def reconfigure(startup_parameters = [])
229
- configure_chef startup_parameters
230
- configure_logging
231
-
232
- Chef::Config[:chef_server_url] = config[:chef_server_url] if config.key? :chef_server_url
233
- unless Chef::Config[:exception_handlers].any? { |h| Chef::Handler::ErrorReport === h }
234
- Chef::Config[:exception_handlers] << Chef::Handler::ErrorReport.new
235
- end
236
-
237
- Chef::Config[:interval] ||= 1800
238
- end
239
-
240
- # Lifted from application.rb
241
- # See application.rb for related comments.
242
-
243
- def configure_logging
244
- Chef::Log.init(MonoLogger.new(resolve_log_location))
245
- if want_additional_logger?
246
- configure_stdout_logger
247
- end
248
- Chef::Log.level = resolve_log_level
249
- end
250
-
251
- def configure_stdout_logger
252
- stdout_logger = MonoLogger.new(STDOUT)
253
- stdout_logger.formatter = Chef::Log.logger.formatter
254
- Chef::Log.loggers << stdout_logger
255
- end
256
-
257
- # Based on config and whether or not STDOUT is a tty, should we setup a
258
- # secondary logger for stdout?
259
- def want_additional_logger?
260
- ( Chef::Config[:log_location] != STDOUT ) && STDOUT.tty? && !Chef::Config[:daemonize]
261
- end
262
-
263
- # Use of output formatters is assumed if `force_formatter` is set or if
264
- # `force_logger` is not set
265
- def using_output_formatter?
266
- Chef::Config[:force_formatter] || !Chef::Config[:force_logger]
267
- end
268
-
269
- def auto_log_level?
270
- Chef::Config[:log_level] == :auto
271
- end
272
-
273
- def resolve_log_location
274
- # STDOUT is the default log location, but makes no sense for a windows service
275
- Chef::Config[:log_location] == STDOUT ? DEFAULT_LOG_LOCATION : Chef::Config[:log_location]
276
- end
277
-
278
- # if log_level is `:auto`, convert it to :warn (when using output formatter)
279
- # or :info (no output formatter). See also +using_output_formatter?+
280
- def resolve_log_level
281
- if auto_log_level?
282
- if using_output_formatter?
283
- :warn
284
- else
285
- :info
286
- end
287
- else
288
- Chef::Config[:log_level]
289
- end
290
- end
291
-
292
- def configure_chef(startup_parameters)
293
- # Bit of a hack ahead:
294
- # It is possible to specify a service's binary_path_name with arguments, like "foo.exe -x argX".
295
- # It is also possible to specify startup parameters separately, either via the Services manager
296
- # or by using the registry (I think).
297
-
298
- # In order to accommodate all possible sources of parameterization, we first parse any command line
299
- # arguments. We then parse any startup parameters. This works, because Mixlib::CLI reuses its internal
300
- # 'config' hash; thus, anything in startup parameters will override any command line parameters that
301
- # might be set via the service's binary_path_name
302
- #
303
- # All these parameters then get layered on top of those from Chef::Config
304
-
305
- parse_options # Operates on ARGV by default
306
- parse_options startup_parameters
307
-
308
- begin
309
- case config[:config_file]
310
- when %r{^(http|https)://}
311
- Chef::HTTP.new("").streaming_request(config[:config_file]) { |f| apply_config(f.path) }
312
- else
313
- ::File.open(config[:config_file]) { |f| apply_config(f.path) }
314
- end
315
- rescue Errno::ENOENT
316
- Chef::Log.warn("*****************************************")
317
- Chef::Log.warn("Did not find config file: #{config[:config_file]}. Using command line options instead.")
318
- Chef::Log.warn("*****************************************")
319
-
320
- Chef::Config.merge!(config)
321
- rescue SocketError
322
- Chef::Application.fatal!("Error getting config file #{Chef::Config[:config_file]}")
323
- rescue Chef::Exceptions::ConfigurationError => error
324
- Chef::Application.fatal!("Error processing config file #{Chef::Config[:config_file]} with error #{error.message}")
325
- rescue Exception => error
326
- Chef::Application.fatal!("Unknown error processing config file #{Chef::Config[:config_file]} with error #{error.message}")
327
- end
328
- end
329
-
330
- end
331
- end
332
- end
333
-
334
- # To run this file as a service, it must be called as a script from within
335
- # the Windows Service framework. In that case, kick off the main loop!
336
- if __FILE__ == $0
337
- Chef::Application::WindowsService.mainloop
338
- end