* Dependent profiles fix for any scheme of version used in profiles
* Dependent profile fix when version is blank in dependent profiles
---------
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Co-authored-by: Nikita Mathur <Nik08@users.noreply.github.com>
* Test profile consist of custom resource which has a gem dependency
* CFINSPEC-576 Fix for profile gem depedency loading issue if depedent gem is required in libraries files of the profile
* Fix windows test failure for profile gem dependency
---------
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Matching semver using regex to determine profile name without version in dsl logic
* Testing for selecting control using version in require control dsl
* Documentation for using version with profile name when including or selecting controls in a profile
* Commenting in dsl library about logic for fetching version and matching it
* Comment for regex used to fetch version
* Minor improvement for regex variable placement
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Co-authored-by: Nikita Mathur <Nik08@users.noreply.github.com>
* Revert "Revert "CFINSPEC-240 Extended file format support for waivers (#6193)" (#6366)"
This reverts commit 30146e07fe.
* Waiver support for csv and json
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Removed the word excel from image tag
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Removed excel file format support for attestations file (#6370)
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Update waivers.md
Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>
---------
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>
Co-authored-by: Ian Maddaus <ian.maddaus@progress.com>
* This fixes the undefined method 'summary' for #<Gem::SourceFetchProblem:0x000000000139dc70> (NoMethodError) while invoking any inspec command if the custom plugin is installed and if inspec commands are run in an air gap environment.
This fix removes an earlier call for getting gem specification from rubygems.org which is the cause for above error and replaces it with fetching the summary from a locally saved gemspec file. This will work in both airgap and non-airgap environments.
* Adds test for reading description from local gemspec file.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Failing test for Ruby 3.1 - ERB.new call options changed
* Fix for Ruby 3.1 by using named params to ERB.new
* Restrict test to non-windows systems
* Restrict test to non-windows systems
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
Co-authored-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* We will never be on 2.6 again
* Only run html-proofer test on Ruby 3
* Pin to chef 16 on ruby 2.7, 17+ on Ruby 3
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
Co-authored-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* adding the alicloud in the spec.files
* adding the test for generating inspec profile alicloud
* adding the alicloud profile
* fix lint error
Signed-off-by: Soumyodeep Karmakar <soumyo.k13@gmail.com>
Co-authored-by: Soumyodeep Karmakar <63713087+soumyo13@users.noreply.github.com>
* Oracle DB session resource compatibility with AIX-Cshell
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Fixes in oracledb session unit test using oracle_query_string
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Not applicable if logic addition
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Changes from not applicable if to only applicable if
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Fix to enable placing only_applicable_if at any position in control and for keeping impact zero intact
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Doc change added for only_applicable_if
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Doc Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* Added generic examples that supports cross platform for testing
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Yet another build fix due to changes in test
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Deepa Kumaraswamy <dkumaras@progress.com>
* ENHANCE: Extend lxc resource to test the properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* TEST: Extend test for introduced properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* DOCS: Extend test for introduced properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* FIX: Correct exception class to handle bad yaml
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* Doc Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* FIX: Handle specific exception to handle bad yaml
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Deepa Kumaraswamy <dkumaras@progress.com>
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Sonu Saha <98935583+ahasunos@users.noreply.github.com>
Co-authored-by: Deepa Kumaraswamy <dkumaras@progress.com>
faraday_middleware was already DEPRECATED in 2022-01.
Only FaradayMiddleware::FollowRedirects from faraday_middleware has been
used, and so we can replace it with faraday-follow_redirects.
faraday-follow_redirects 0.3.0 requires faraday ~> 1.0, which is as same
as "faraday_middleware 1.0.0 or higher.
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
Co-authored-by: Takuya N <takninnovationresearch@gmail.com>
* Convenience method skeleton
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Basic support for a config file
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Add features() array method
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Accept config as an option to with_feature
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Accept logger as an option to with_feature
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Refactor to push code into its own files
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Basic logger integration
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Crude validation of feature names, simply issues a warning log message
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Linting
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Add basic tamperproofing to feature config
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Convenience method skeleton
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Basic support for a config file
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Add features() array method
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Accept config as an option to with_feature
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Accept logger as an option to with_feature
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Refactor to push code into its own files
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Basic logger integration
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Crude validation of feature names, simply issues a warning log message
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Linting
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Add basic tamperproofing to feature config
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* CFINSPEC-464 CLI commands declaration using with_feature functionality (#6263)
* Declared inspec cli commands within feature_with function
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added enhanced outcomes, waivers, reporters and streaming reporters within with_feature block
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added with_feature declaration for attestations
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Update features.yaml signature after adding in new feature flags
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
* Fix lint
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Resolved undefined method with_feature in reporters.rb
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fix for features tampered file test failing
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fixed the failing functional test for junit2: Missing the entry in the features.yaml
Added progress-bar reporter entry in features.yaml
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
Co-authored-by: Nikita Mathur <Nik08@users.noreply.github.com>
Co-authored-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Added attestation file option to read attestation in various formats
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added method to add attestation data on control level
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Enhanced outcomes flag to be true when attestation file is passed
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added logic for attestation for reporters
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Attestation integration with streaming reporters and lots of refactoring
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Support for mitre - with frequency, updated and explanation fields'
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* To only revise enhanced outcomes when attestation data is present for the control - fix in streaming reporter
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added test cases for attestation and also added validation warnings
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Attestation test for different formats of attestation file
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Validating presence of status column to be mandtory for attestation files
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Build fix
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Attestation build fix for windows
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* No justification and no status graceful handling
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* New class attestations added for logic and added missing test attestations file
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Code comments and cli doc changes for attestation option
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Moved logic of attestations and enhanced outcomes to the base of streaming reporter
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Attestation documentation added
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added information on what happens if justification is missing in attestation file
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Attestation doc changes as per the review
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* File fields doc changes in attestation doc
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Content Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* Edits
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* Attestation test changes matching regex and separated logic for expiration using frequency and updated date
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Proof-read
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* Name changes for expiry calculation method
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Generic tests in attestations for cross platform
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Deepa Kumaraswamy <dkumaras@progress.com>
* CFINSPEC-368 Adds podman resource. Adds PodmanContainerFilter to handle podman.containers plural resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fix lint errors
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Adds style simple to the filter table fields to flatten the array
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to work with podman images plural resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to work with podman networks plural resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to work with podman pods plural resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to work with info and version parameter
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to work with podman volumes plural resource. Also updated the docs to add pods, networks and other resource parameters details.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-368 Updated podman resource to aspect object id to verify values of specified Podman object.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Updated docs
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Updated column names to keep them same as the field names
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Adds style simple to commands column for podman containers plural resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-360 Adds podman_container resource. Adds podman_object module
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fixed the require path
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fixed deprecation warning in unit test
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fixed indentation issue in the docs.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Renamed the methods names
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Adds skip resource test
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Updated podman.images to fetch only high level information as using query with low level information does not have required fields and represents the data in different way.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* added method to parse command which uses format option to fetch specific placeholders
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Update the podman,containers to fetch only high level information
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Update podman.networks to fetch only hight level information
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Removed style for where it is not required
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Lint fix and some code improvisation
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* It turn out to be the docker object module can be utilized but still there is scope to rename that module to generic and not specific if going to use with other container management tools
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Missing file in earlier commit
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Content Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* CFINSPEC-361: Test for podman_image matchers and properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Add podman_image matchers and properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Documentation for podman_image matchers and properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Fix Rubocop lint issues
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Test for more properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Add more podman_image properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Documentation for podman_image properties
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Test for low-level information of image
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Add inspec_info property to test low-level info
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Documentation for inspec_info property
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Modify resource id to avoid dependency on other methods
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Decouple podman_image from podman plural resource
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Modify unit test and reqd fixtures
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Handle nil scenario of inspect_info
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Add missing property: id
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Update documentation
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Rename method and attribute name as suggested
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Add stderr message in exception
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Remove comment
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-361: Move json_key mapping to a method
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* Content Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* CFINSPEC-361: Remove exception and add nil
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* CFINSPEC-351: failing tests for podman_network resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* CFINSPEC-351 Adds podman_network resource properties
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Fixed typo in the test
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Refactored the code for podman_image to handle non exisiting image and for creating dynamic methods for properties
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Uncommented the image test
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Update the example for podman_network
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Missing test fixture file
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Adds doc for podman_network resource
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Doc Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
* Adds module for podman to group all common methods
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* Updated code to match the stderr string for non existing image and network. Also added the test for the same. Added code comments.
Signed-off-by: Vasu1105 <vasundhara.jagdale@chef.io>
* TEST: Add failing test for podman_volume (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* RESOURCE: Add podman_volume properties & matcher (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* TEST: Add mock cmds and fixtures for test to pass (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* DOCS: Update documentation for podman_volume (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* TEST: Add failing test for podman_pod (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* RESOURCE: Add podman_pod properties & matcher (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* TEST: Add mock cmds and fixtures for test to pass (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* DOCS: Update documentation for podman_pod (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* DOCS: Update properties of podman_volume (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* LINT: Remove trailing whitespaces (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* REFACTOR: Extend existing fixture, remove new fixtures (CFINSPEC-351)
Signed-off-by: Sonu Saha <sonu.saha@progress.com>
* Content Review
Signed-off-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Deepa Kumaraswamy <dkumaras@progress.com>
Co-authored-by: Sonu Saha <sonu.saha@progress.com>
* Added separate waiver file reader and support for csv
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added support for json format waivers
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Added support for xls and xlsx
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Build issues and updated description of gems
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Doc changes for waivers about supports
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Fix added to check final options presense in config
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Renamed variables from inputs to waivers
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Validation changes with other small changes
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Headers validation added for json and yaml
* Linter issues resolved
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Some refactoring and message change
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* exit code check removed from test cases since not req
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
* Doc change for waiver support for excel by showing example
Signed-off-by: Nikita Mathur <nikita.mathur@chef.io>
Co-authored-by: Clinton Wolfe <clintoncwolfe@gmail.com>