inspec/inspec-core.gemspec
Vasundhara Jagdale 20d0a9dc0d
CHEF-6440: Integrates audit logging feature (#6809)
* Adds cli options to enable audit log and configure the audit log

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updated code to validate the audit log options. Audit log options are only valid for inspec exec and inspec shell command as those commands use the backend to execute commands and for file operations

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updates cli options documentation for audit log options

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Disable audit log in test environment unless and until explicitly --enable-audit-log option is provided in test

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Rename enable-audit-log cli option to disable-audit-log

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* CHEF-8210 Enables feature preview flag for audit logging

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Revert "Disable audit log in test environment unless and until explicitly --enable-audit-log option is provided in test"

This reverts commit 50a42f0b44cf2fde6d927a00e444370cdd288a5d.

* Adds functional test for audit logging feature

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updates cli doc for audit loggin feature flag

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Debug why audit log functional test fails in ci environment

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Revert "Rename enable-audit-log cli option to disable-audit-log"

This reverts commit d5169ec705.

* Revert "Debug why audit log functional test fails in ci environment"

This reverts commit 6f43898ad0.

* Removes the --enable-audit-log option from cli as feature flag will handle the enabling and disabling of audit log feature. And introduces few code changes after reverting renaming of --enable-audit-log option

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updates the functional test for audit log

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* REVERT THIS ONCE THE TEST IS GREEN: This is just to test implementation of audit log against the train changes made for audit log

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Removes the right one

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Documentation for inspec audit logging feature

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Renames inspec audit log file

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Edits to audit log docs

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Remove --audit-log-rotation and --audit-log-size option to set from CLI

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Make sure we delete audit log file before running each test

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Appends timestamp and process id to generate audit log file per invocation/execution

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updates functional test for audit logging feature

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Fix typo in audit logging docs

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Appends the timestamp and process id to user provided audit log file so that unique audit log file created per invocation

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Updates the audit log functional test

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Minor code improvements

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Adds exception class for invalid audit log options

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Revert "REVERT THIS ONCE THE TEST IS GREEN: This is just to test implementation of audit log against the train changes made for audit log"

This reverts commit a66137e70b.

* Upgrade train-core version pinning

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

* Docs review

Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>

* Fix titles

Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>

* Update the signature for features.yaml file

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>

---------

Signed-off-by: Vasu1105 <vasundhara.jagdale@progress.com>
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>
Co-authored-by: Clinton Wolfe <clintoncwolfe@gmail.com>
Co-authored-by: Ian Maddaus <ian.maddaus@progress.com>
2023-11-09 10:28:12 -05:00

60 lines
3.5 KiB
Ruby

lib = File.expand_path("lib", __dir__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "inspec/version"
Gem::Specification.new do |spec|
spec.name = "inspec-core"
spec.version = Inspec::VERSION
spec.authors = ["Chef InSpec Team"]
spec.email = ["inspec@chef.io"]
spec.summary = "Infrastructure and compliance testing. Core library."
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.
This has local support only. See the `inspec` gem for full support.
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
spec.homepage = "https://github.com/inspec/inspec"
spec.license = "LicenseRef-Chef-EULA"
spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 2.7"
# the gemfile and gemspec are necessary for appbundler so don't remove it
spec.files =
Dir.glob("{{lib,etc}/**/*,LICENSE,Chef-EULA,Gemfile,inspec-core.gemspec}")
.grep_v(%r{(?<!inspec-init/templates/profiles/)(aws|azure|gcp|alicloud)})
.grep_v(%r{lib/plugins/.*/test/})
.reject { |f| File.directory?(f) }
# Implementation dependencies
spec.add_dependency "chef-telemetry", "~> 1.0", ">= 1.0.8" # 1.0.8+ removes the http dep
spec.add_dependency "license-acceptance", ">= 0.2.13", "< 3.0"
# TODO: We should remove the thor pinning in next upcoming releases currently it's breaking our unit test in cli_args_test for aliases due to
# recent changes made in thor library REF: https://github.com/rails/thor/releases/tag/v1.3.0 & https://github.com/rails/thor/pull/800
spec.add_dependency "thor", ">= 0.20", "< 1.3.0"
spec.add_dependency "method_source", ">= 0.8", "< 2.0"
spec.add_dependency "rubyzip", ">= 1.2.2", "< 3.0"
spec.add_dependency "rspec", ">= 3.9", "<= 3.12"
spec.add_dependency "rspec-its", "~> 1.2"
spec.add_dependency "pry", "~> 0.13"
spec.add_dependency "hashie", ">= 3.4", "< 6.0"
spec.add_dependency "mixlib-log", "~> 3.0"
spec.add_dependency "sslshake", "~> 1.2"
spec.add_dependency "parallel", "~> 1.9"
spec.add_dependency "faraday", ">= 1", "< 3"
spec.add_dependency "faraday-follow_redirects", "~> 0.3"
spec.add_dependency "tty-table", "~> 0.10"
spec.add_dependency "tty-prompt", "~> 0.17"
spec.add_dependency "tomlrb", ">= 1.2", "< 2.1"
spec.add_dependency "addressable", "~> 2.4"
spec.add_dependency "parslet", ">= 1.5", "< 2.0" # Pinned < 2.0, see #5389
spec.add_dependency "semverse", "~> 3.0"
spec.add_dependency "multipart-post", "~> 2.0"
spec.add_dependency "train-core", ">= 3.11.0"
spec.add_dependency "chef-licensing", ">= 0.7.5"
end