inspec/lib
Adam Leff 8269d0da9e Support vendored profiles in Habitat-packaged profiles
This change adds support in Habitat-packaged profiles for
profiles that depend on other profiles. When `inspec habitat
profile create` or `inspec habitat profile upload` is run,
it will see if the profile's dependencies have been vendored
yet, and if not, it will vendor them before creating the
habitat artifact.

For the git and URL fetchers, more explicit creation of the
target directories for the vendored profiles is done. This
is implicitly done via normal CLI interactions a user may
go through, but in our case, we want to ensure those directories
are there before the fetchers try to write out content.

By adding this support, we also fix a bug experienced in Habitat
where a profile that was packaged before an `inspec exec` was run
for the profile would cause a failure in Habitat. This is caused
by `inspec exec` doing a vendor of the dependencies if necessary
and generating the inspec.lock file. In Habitat, the package dir
is not writable by the hab user and InSpec would fail to run due
to an inability to write out an inspec.lock.

Signed-off-by: Adam Leff <adam@leff.co>
2017-03-29 10:22:20 +02:00
..
bundles Support vendored profiles in Habitat-packaged profiles 2017-03-29 10:22:20 +02:00
fetchers Support vendored profiles in Habitat-packaged profiles 2017-03-29 10:22:20 +02:00
inspec add tag object (#1590) 2017-03-22 13:41:44 -04:00
matchers Address rubocop violations 2017-02-08 16:49:16 -06:00
resources Fix port resource for invalid IP address in netstat output 2017-03-29 08:33:50 +02:00
source_readers Provide better error message when inspec.yml is invalid 2017-03-09 18:03:01 +01:00
utils add inspec json schema validation to functional tests 2017-03-22 09:42:36 +01:00
inspec.rb move force encoding to binary only, so that it does not affect the use of inspec in lib mode 2016-09-13 16:18:40 +02:00