#!/opt/chef/embedded/bin/ruby --disable-gems
#--APP_BUNDLER_BINSTUB_FORMAT_VERSION=1--
require "rubygems"

begin
  # this works around rubygems/rubygems#2196 and can be removed in rubygems > 2.7.6
  require "rubygems/bundler_version_finder"
rescue LoadError
  # probably means rubygems is too old or too new to have this class, and we don't care
end

# avoid appbundling if we are definitely running within a Bundler bundle.
# most likely the check for defined?(Bundler) is enough since we don't require
# bundler above, but just for paranoia's sake also we test to see if Bundler is
# really doing its thing or not.
unless defined?(Bundler) && Bundler.instance_variable_defined?("@load")
  ENV["GEM_HOME"] = ENV["GEM_PATH"] = nil unless ENV["APPBUNDLER_ALLOW_RVM"] == "true"
  ::Gem.clear_paths

  gem "addressable", "= 2.7.0"
  gem "appbundler", "= 0.13.1"
  gem "ast", "= 2.4.0"
  gem "bcrypt_pbkdf", "= 1.0.1"
  gem "bcrypt_pbkdf", "= 1.0.1"
  gem "bcrypt_pbkdf", "= 1.0.1"
  gem "binding_of_caller", "= 0.8.0"
  gem "builder", "= 3.2.3"
  gem "byebug", "= 11.0.1"
  gem "chef", "= 15.6.10"
  gem "chef", "= 15.6.10"
  gem "chef-bin", "= 15.6.10"
  gem "chef-config", "= 15.6.10"
  gem "chef-utils", "= 15.6.10"
  gem "chef-vault", "= 3.4.3"
  gem "chef-zero", "= 14.0.13"
  gem "cheffish", "= 14.0.4"
  gem "chefstyle", "= 0.14.0"
  gem "coderay", "= 1.1.2"
  gem "crack", "= 0.4.3"
  gem "debug_inspector", "= 0.0.3"
  gem "diff-lcs", "= 1.3"
  gem "docile", "= 1.3.2"
  gem "ed25519", "= 1.2.4"
  gem "equatable", "= 0.6.1"
  gem "erubi", "= 1.9.0"
  gem "erubis", "= 2.7.0"
  gem "faraday", "= 0.17.1"
  gem "faraday_middleware", "= 0.12.2"
  gem "fauxhai-ng", "= 7.5.1"
  gem "ffi", "= 1.11.3"
  gem "ffi", "= 1.11.3"
  gem "ffi", "= 1.11.3"
  gem "ffi-libarchive", "= 0.4.10"
  gem "ffi-yajl", "= 2.3.1"
  gem "fuzzyurl", "= 0.9.0"
  gem "gssapi", "= 1.3.0"
  gem "gyoku", "= 1.3.1"
  gem "hashdiff", "= 1.0.0"
  gem "hashie", "= 3.6.0"
  gem "highline", "= 1.7.10"
  gem "htmlentities", "= 4.3.4"
  gem "httpclient", "= 2.8.3"
  gem "iniparse", "= 1.4.4"
  gem "inspec-core", "= 4.18.39"
  gem "inspec-core-bin", "= 4.18.39"
  gem "ipaddress", "= 0.8.3"
  gem "jaro_winkler", "= 1.5.4"
  gem "json", "= 2.2.0"
  gem "json-schema", "= 2.8.1"
  gem "libyajl2", "= 1.2.0"
  gem "license-acceptance", "= 1.0.13"
  gem "little-plugger", "= 1.1.4"
  gem "logging", "= 2.2.2"
  gem "method_source", "= 0.9.2"
  gem "mixlib-archive", "= 1.0.1"
  gem "mixlib-archive", "= 1.0.1"
  gem "mixlib-authentication", "= 3.0.4"
  gem "mixlib-cli", "= 2.1.1"
  gem "mixlib-config", "= 3.0.5"
  gem "mixlib-log", "= 3.0.1"
  gem "mixlib-shellout", "= 3.0.7"
  gem "mixlib-shellout", "= 3.0.7"
  gem "multi_json", "= 1.14.1"
  gem "multipart-post", "= 2.1.1"
  gem "necromancer", "= 0.5.1"
  gem "net-scp", "= 2.0.0"
  gem "net-sftp", "= 2.1.2"
  gem "net-ssh", "= 5.2.0"
  gem "net-ssh-gateway", "= 2.0.0"
  gem "net-ssh-multi", "= 1.2.1"
  gem "nori", "= 2.6.0"
  gem "ohai", "= 15.6.3"
  gem "parallel", "= 1.19.1"
  gem "parser", "= 2.6.5.0"
  gem "parslet", "= 1.8.2"
  gem "pastel", "= 0.7.3"
  gem "plist", "= 3.5.0"
  gem "proxifier", "= 1.0.3"
  gem "pry", "= 0.12.2"
  gem "pry-byebug", "= 3.7.0"
  gem "pry-remote", "= 0.1.8"
  gem "pry-stack_explorer", "= 0.4.9.3"
  gem "public_suffix", "= 4.0.1"
  gem "rack", "= 2.0.7"
  gem "rainbow", "= 3.0.0"
  gem "rake", "= 12.3.2"
  gem "rb-readline", "= 0.5.5"
  gem "rspec", "= 3.8.0"
  gem "rspec-core", "= 3.8.2"
  gem "rspec-expectations", "= 3.8.6"
  gem "rspec-its", "= 1.3.0"
  gem "rspec-mocks", "= 3.8.2"
  gem "rspec-support", "= 3.8.3"
  gem "rspec_junit_formatter", "= 0.2.3"
  gem "rubocop", "= 0.75.1"
  gem "ruby-prof", "= 1.0.0"
  gem "ruby-progressbar", "= 1.10.1"
  gem "ruby-shadow", "= 2.5.0"
  gem "rubyntlm", "= 0.6.2"
  gem "rubyzip", "= 1.3.0"
  gem "safe_yaml", "= 1.0.5"
  gem "semverse", "= 3.0.0"
  gem "simplecov", "= 0.17.1"
  gem "simplecov-html", "= 0.10.2"
  gem "slop", "= 3.6.0"
  gem "sslshake", "= 1.3.0"
  gem "strings", "= 0.1.8"
  gem "strings-ansi", "= 0.2.0"
  gem "syslog-logger", "= 1.6.8"
  gem "systemu", "= 2.6.5"
  gem "term-ansicolor", "= 1.7.1"
  gem "thor", "= 0.20.3"
  gem "tins", "= 1.22.2"
  gem "tomlrb", "= 1.2.9"
  gem "train-core", "= 3.2.0"
  gem "train-winrm", "= 0.2.5"
  gem "tty-box", "= 0.5.0"
  gem "tty-color", "= 0.5.0"
  gem "tty-cursor", "= 0.7.0"
  gem "tty-prompt", "= 0.20.0"
  gem "tty-reader", "= 0.7.0"
  gem "tty-screen", "= 0.7.0"
  gem "tty-table", "= 0.11.0"
  gem "unicode-display_width", "= 1.6.0"
  gem "unicode_utils", "= 1.4.0"
  gem "uuidtools", "= 2.1.5"
  gem "webmock", "= 3.7.6"
  gem "winrm", "= 2.3.3"
  gem "winrm-fs", "= 1.3.3"
  gem "wisper", "= 2.0.1"
  gem "wmi-lite", "= 1.0.2"
  gem "ohai", "= 15.6.3"
  gem "bundler" # force activation of bundler to avoid unresolved specs if there are multiple bundler versions
  spec = Gem::Specification.find_by_name("ohai", "= 15.6.3")
else
  spec = Gem::Specification.find_by_name("ohai")
end

unless Gem::Specification.unresolved_deps.empty?
  $stderr.puts "APPBUNDLER WARNING: unresolved deps are CRITICAL performance bug, this MUST be fixed"
  Gem::Specification.reset
end

bin_file = spec.bin_file("ohai")

Kernel.load(bin_file)
