2020-12-18 16:49:35 +00:00
lib = File . expand_path ( " lib " , __dir__ )
2015-06-07 17:50:15 +00:00
$LOAD_PATH . unshift ( lib ) unless $LOAD_PATH . include? ( lib )
2019-06-11 22:24:35 +00:00
require " inspec/version "
2015-06-07 17:50:15 +00:00
Gem :: Specification . new do | spec |
2019-06-11 22:24:35 +00:00
spec . name = " inspec "
2015-10-26 03:04:18 +00:00
spec . version = Inspec :: VERSION
2019-06-11 22:24:35 +00:00
spec . authors = [ " Chef InSpec Team " ]
spec . email = [ " inspec@chef.io " ]
spec . summary = " Infrastructure and compliance testing. "
2023-10-11 16:54:24 +00:00
spec . description = <<-EOT
InSpec provides a framework for creating end - to - end infrastructure tests . You can use it for integration or even compliance testing . Create fully portable test profiles and use them in your workflow to ensure stability and security . Integrate InSpec in your change lifecycle for local testing , CI / CD , and deployment verification .
Packaged distributions of Progress ® Chef ® products obtained from RubyGems are made available pursuant to the Progress Chef EULA at https : / / www . chef . io / end - user - license - agreement , unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ( " Master Agreement " ) , in which case the Master Agreement shall govern .
Source code obtained from the Chef GitHub repository is made available under Apache - 2 . 0 , a copy of which is included .
EOT
2019-06-11 22:24:35 +00:00
spec . homepage = " https://github.com/inspec/inspec "
2023-10-11 16:54:24 +00:00
spec . license = " LicenseRef-Chef-EULA "
2020-01-24 21:47:22 +00:00
spec . require_paths = [ " lib " ]
2023-12-12 15:24:28 +00:00
# We want to support ruby 3.0 as Chef is using ruby to support AIX and we want to make sure InSpec works with it. (Ref: https://github.com/chef/chef/pull/13207)
# TODO: Once we have Chef working fully with ruby 3.1 we can drop ruby 3.0
spec . required_ruby_version = " >= 3.0.3 "
2015-06-07 17:50:15 +00:00
2020-01-24 22:56:10 +00:00
# ONLY the aws/azure/gcp files. The rest will come in from inspec-core
# the gemspec is necessary for appbundler so don't remove it
spec . files =
2020-02-10 23:58:49 +00:00
Dir . glob ( " {{lib,etc}/**/*,Gemfile,inspec.gemspec} " )
. grep ( / aws|azure|gcp|gemspec|Gemfile|inspec.gemspec / )
2020-01-24 22:56:10 +00:00
. reject { | f | File . directory? ( f ) }
2015-11-12 23:47:01 +00:00
2020-01-24 22:56:10 +00:00
spec . add_dependency " inspec-core " , " = #{ Inspec :: VERSION } "
2020-01-24 21:47:22 +00:00
2022-06-28 04:33:58 +00:00
spec . add_dependency " train " , " ~> 3.10 "
2020-01-24 21:47:22 +00:00
2021-11-18 03:47:49 +00:00
# cookstyle support for inspec check
# Added here not because they are compiled, but to keep chef-client lightweight
spec . add_dependency " cookstyle "
spec . add_dependency " rake "
2022-02-18 12:41:15 +00:00
# progress bar streaming reporter plugin support
spec . add_dependency " progress_bar " , " ~> 1.3.3 "
2020-01-24 21:47:22 +00:00
# Used for Azure profile until integrated into train
2020-08-04 14:20:02 +00:00
spec . add_dependency " faraday_middleware " , " >= 0.12.2 " , " < 1.1 "
2020-01-24 21:47:22 +00:00
# Train plugins we ship with InSpec
2023-05-16 00:14:15 +00:00
spec . add_dependency " train-habitat " , " ~> 0.1 "
spec . add_dependency " train-aws " , " ~> 0.2 "
spec . add_dependency " train-winrm " , " ~> 0.2 "
spec . add_dependency " train-kubernetes " , " ~> 0.1 "
2021-08-11 17:12:44 +00:00
spec . add_dependency " mongo " , " = 2.13.2 " # 2.14 introduces a broken symlink in mongo-2.14.0/spec/support/ocsp
2021-08-25 10:29:13 +00:00
2015-06-07 17:50:15 +00:00
end