#!/opt/inspec/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 "aws-eventstream", "= 1.0.3"
  gem "aws-partitions", "= 1.219.0"
  gem "aws-sdk-apigateway", "= 1.35.0"
  gem "aws-sdk-apigatewayv2", "= 1.13.0"
  gem "aws-sdk-athena", "= 1.20.0"
  gem "aws-sdk-autoscaling", "= 1.22.0"
  gem "aws-sdk-budgets", "= 1.25.0"
  gem "aws-sdk-cloudformation", "= 1.25.0"
  gem "aws-sdk-cloudhsm", "= 1.18.0"
  gem "aws-sdk-cloudhsmv2", "= 1.18.0"
  gem "aws-sdk-cloudtrail", "= 1.17.0"
  gem "aws-sdk-cloudwatch", "= 1.28.0"
  gem "aws-sdk-cloudwatchlogs", "= 1.25.0"
  gem "aws-sdk-codecommit", "= 1.28.0"
  gem "aws-sdk-codedeploy", "= 1.26.0"
  gem "aws-sdk-codepipeline", "= 1.25.0"
  gem "aws-sdk-configservice", "= 1.37.0"
  gem "aws-sdk-core", "= 3.68.0"
  gem "aws-sdk-costandusagereportservice", "= 1.17.0"
  gem "aws-sdk-dynamodb", "= 1.35.0"
  gem "aws-sdk-ec2", "= 1.110.0"
  gem "aws-sdk-ecr", "= 1.20.0"
  gem "aws-sdk-ecs", "= 1.51.0"
  gem "aws-sdk-eks", "= 1.26.0"
  gem "aws-sdk-elasticache", "= 1.25.0"
  gem "aws-sdk-elasticbeanstalk", "= 1.25.0"
  gem "aws-sdk-elasticloadbalancing", "= 1.18.0"
  gem "aws-sdk-elasticloadbalancingv2", "= 1.34.0"
  gem "aws-sdk-elasticsearchservice", "= 1.26.0"
  gem "aws-sdk-firehose", "= 1.20.0"
  gem "aws-sdk-iam", "= 1.30.0"
  gem "aws-sdk-kafka", "= 1.12.0"
  gem "aws-sdk-kinesis", "= 1.19.0"
  gem "aws-sdk-kms", "= 1.24.0"
  gem "aws-sdk-lambda", "= 1.30.0"
  gem "aws-sdk-organizations", "= 1.17.0"
  gem "aws-sdk-rds", "= 1.66.0"
  gem "aws-sdk-redshift", "= 1.32.0"
  gem "aws-sdk-route53", "= 1.29.0"
  gem "aws-sdk-route53domains", "= 1.17.0"
  gem "aws-sdk-route53resolver", "= 1.10.0"
  gem "aws-sdk-s3", "= 1.48.0"
  gem "aws-sdk-securityhub", "= 1.13.0"
  gem "aws-sdk-ses", "= 1.26.0"
  gem "aws-sdk-sms", "= 1.16.0"
  gem "aws-sdk-sns", "= 1.19.0"
  gem "aws-sdk-sqs", "= 1.22.0"
  gem "aws-sdk-ssm", "= 1.56.0"
  gem "aws-sigv4", "= 1.1.0"
  gem "azure_graph_rbac", "= 0.17.1"
  gem "azure_mgmt_key_vault", "= 0.17.4"
  gem "azure_mgmt_resources", "= 0.17.6"
  gem "bcrypt_pbkdf", "= 1.0.1"
  gem "builder", "= 3.2.3"
  gem "coderay", "= 1.1.2"
  gem "concurrent-ruby", "= 1.1.5"
  gem "declarative", "= 0.0.10"
  gem "declarative-option", "= 0.1.0"
  gem "diff-lcs", "= 1.3"
  gem "docker-api", "= 1.34.2"
  gem "domain_name", "= 0.5.20190701"
  gem "ed25519", "= 1.2.4"
  gem "equatable", "= 0.6.1"
  gem "erubis", "= 2.7.0"
  gem "excon", "= 0.67.0"
  gem "faraday", "= 0.16.1"
  gem "faraday-cookie_jar", "= 0.0.6"
  gem "faraday_middleware", "= 0.12.2"
  gem "ffi", "= 1.11.1"
  gem "google-api-client", "= 0.23.9"
  gem "googleauth", "= 0.6.7"
  gem "gssapi", "= 1.3.0"
  gem "gyoku", "= 1.3.1"
  gem "hashie", "= 3.6.0"
  gem "htmlentities", "= 4.3.4"
  gem "http-cookie", "= 1.0.3"
  gem "httpclient", "= 2.8.3"
  gem "inifile", "= 3.0.0"
  gem "inquirer", "= 0.2.1"
  gem "inspec", "= 4.17.11"
  gem "inspec-bin", "= 4.17.11"
  gem "jmespath", "= 1.4.0"
  gem "json", "= 2.2.0"
  gem "json-schema", "= 2.8.1"
  gem "jwt", "= 2.2.1"
  gem "license-acceptance", "= 1.0.13"
  gem "little-plugger", "= 1.1.4"
  gem "logging", "= 2.2.2"
  gem "memoist", "= 0.16.0"
  gem "method_source", "= 0.9.2"
  gem "mime-types", "= 3.3"
  gem "mime-types-data", "= 3.2019.0904"
  gem "mixlib-cli", "= 2.1.1"
  gem "mixlib-log", "= 3.0.1"
  gem "mixlib-shellout", "= 3.0.7"
  gem "ms_rest", "= 0.7.4"
  gem "ms_rest_azure", "= 0.11.1"
  gem "multi_json", "= 1.13.1"
  gem "multipart-post", "= 2.1.1"
  gem "necromancer", "= 0.5.0"
  gem "net-scp", "= 2.0.0"
  gem "net-ssh", "= 4.2.0"
  gem "nori", "= 2.6.0"
  gem "os", "= 1.0.1"
  gem "parallel", "= 1.17.0"
  gem "parslet", "= 1.8.2"
  gem "pastel", "= 0.7.3"
  gem "pry", "= 0.12.2"
  gem "public_suffix", "= 4.0.1"
  gem "rb-readline", "= 0.5.5"
  gem "representable", "= 3.0.4"
  gem "retriable", "= 3.1.2"
  gem "rspec", "= 3.8.0"
  gem "rspec-core", "= 3.8.2"
  gem "rspec-expectations", "= 3.8.4"
  gem "rspec-its", "= 1.3.0"
  gem "rspec-mocks", "= 3.8.1"
  gem "rspec-support", "= 3.8.2"
  gem "rubyntlm", "= 0.6.2"
  gem "rubyzip", "= 1.3.0"
  gem "semverse", "= 3.0.0"
  gem "signet", "= 0.11.0"
  gem "sslshake", "= 1.3.0"
  gem "strings", "= 0.1.6"
  gem "strings-ansi", "= 0.1.0"
  gem "term-ansicolor", "= 1.7.1"
  gem "thor", "= 0.20.3"
  gem "timeliness", "= 0.3.10"
  gem "tins", "= 1.21.1"
  gem "tomlrb", "= 1.2.8"
  gem "train", "= 3.0.3"
  gem "train-aws", "= 0.1.11"
  gem "train-habitat", "= 0.2.11"
  gem "train-winrm", "= 0.2.5"
  gem "tty-box", "= 0.4.1"
  gem "tty-color", "= 0.5.0"
  gem "tty-cursor", "= 0.7.0"
  gem "tty-prompt", "= 0.19.0"
  gem "tty-reader", "= 0.6.0"
  gem "tty-screen", "= 0.7.0"
  gem "tty-table", "= 0.11.0"
  gem "uber", "= 0.1.0"
  gem "unf", "= 0.1.4"
  gem "unf_ext", "= 0.0.7.2"
  gem "unicode-display_width", "= 1.6.0"
  gem "unicode_utils", "= 1.4.0"
  gem "winrm", "= 2.3.2"
  gem "winrm-fs", "= 1.3.2"
  gem "wisper", "= 2.0.0"
  gem "inspec-bin", "= 4.17.11"
  gem "bundler" # force activation of bundler to avoid unresolved specs if there are multiple bundler versions
  spec = Gem::Specification.find_by_name("inspec-bin", "= 4.17.11")
else
  spec = Gem::Specification.find_by_name("inspec-bin")
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("inspec")

Kernel.load(bin_file)
