Commit graph

4125 commits

Author SHA1 Message Date
Ryan Davis
3e3dbdc8f1
Merge pull request #4898 from inspec/zenspider/system-plugin/fixes
Distinguish between user plugin gems and system gems and load system gems normally.
2020-02-10 19:12:49 -08:00
Chef Expeditor
2c7336ad32 Bump version to 4.18.88 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-11 02:57:42 +00:00
Chef Expeditor
a27562339b Bump version to 4.18.87 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-11 02:38:50 +00:00
Miah Johnson
7bb0bb2188
Merge pull request #4865 from inspec/jh/schema-improvements
Jh/schema improvements
2020-02-10 18:38:28 -08:00
Miah Johnson
bf7931bc76 ui doesn't exist here yet, we're pre-ui'ish. So lets just call exit
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-02-10 14:55:27 -08:00
Miah Johnson
8be265772b fixup_train_plugin_status should not activate gems.
This is handled by load_all already.

Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-02-10 14:52:12 -08:00
Chef Expeditor
969b9056c8 Bump version to 4.18.86 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-10 20:36:23 +00:00
Clinton Wolfe
774b5944fb
Detect install type via install path (#4856)
Detect install type via install path
2020-02-10 15:36:04 -05:00
Ryan Davis
3eac105498 Distinguish between core gems and system gems and load system gems normally.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-07 14:40:56 -08:00
Chef Expeditor
961b3662c4 Bump version to 4.18.85 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-06 20:25:55 +00:00
Clinton Wolfe
8a05908a87 Don't try to fool Thor's option type checker for --airgap on archive command
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-02-06 11:02:50 -05:00
Miah Johnson
4f642e0942 Clean up schema PR.
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-02-05 17:06:55 -08:00
Jacob Henry
724f82237b Revision of schema to JSON Schema draft 7
Signed-off-by: Jacob Henry <jchenry@mitre.org>
2020-02-05 17:05:47 -08:00
Clinton Wolfe
f8d99eabb9 Move path_exist test code into test file
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-02-05 12:15:48 -05:00
Chef Expeditor
3f1349b054 Bump version to 4.18.84 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-04 19:54:51 +00:00
Chef Expeditor
9f2b621f9b Bump version to 4.18.83 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-04 00:42:29 +00:00
Ryan Davis
cac6b88c03 Fixed error on ruby 2.4 because define_method was private.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
89a0b44c64 Refactored and moved Resource.create_dsl to ProfileContext.
ProfileContext#to_resources_dsl is the only usage of it.
The responsibility for this code should be on ProfileContext.

Refactored a majority of #create_dsl to be a 2-line long Module.new
instead of 36 lines. Much less magic. Still has an anonymous module
but it is now much easier to address and debug.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
fa3122cbff Removed metaprogramming in Inspec::Backend.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
cea752a01d Tweak for aws resources to determine if they're still under test.
Everyone now has an `inspec` method, but the AWS ones still return
nil as their backend hasn't been set up.

This seems wrong...

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
950c79319e Moved __register down to bookkeeping section.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
b38a3b05f9 Reworked Resource.__register's metaprogramming to be as small as possible.
Mostly involved pushing up all the regular initialize code to a
regular method, calling that, THEN doing super up to the resource
initialize.

This brings __register's Class.new to 5 lines.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
43f520b4a8 Merged Inspec::Plugins::Resource to Inspec::Resource.
This also removes Inspec::ResourceBehaviors and Inspec::ResourceDSL.

All class methods look like class methods.
All instance methods look like instance methods.

There is still too much clever going on with __register creating
another anonymous subclass, but I think I can work that out/down too.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:41:37 -08:00
Ryan Davis
44a006a05a Rename Inspec::Resource.supports to support_registry.
To fix an already existing name collision between Inspec::Resource and
Inspec::Plugins::Resource.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:19:32 -08:00
Ryan Davis
f0a5ddd4df Simple refactoring + assign __resource_registry to the current if needed.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:19:32 -08:00
Ryan Davis
81dfe21a98 First pass reworking LibraryEvalContext.
This takes 3 anonymous Class.new w/ no superclasses, no documentation,
and no obvious clue as to what anything is and drops it down to 2
Class.new w/ superclasses, documents what it can, and makes it much
more clear what is going on. (yet, still not clear)

It also actually uses LibraryEvalContext. Having names is important.
Probably more important than any of the rest of this diff.

One extra thing this adds is Module.find_class_instance_variable and
hooks it up to Resource.__resource_registry. This allows it to find a
class-level registry regardless of whether it was hidden in an
anonymous superclass or not.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:19:32 -08:00
Ryan Davis
07631a53e7 Added extra doco on our require method.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:19:32 -08:00
Ryan Davis
d7bae9de30 Mostly minor cleanup, clarification, and comments.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:19:32 -08:00
Ryan Davis
fdc281d19c Clean up the end of our custom require.
There are only 2 options. Shortcutting one of them with a `require` just
makes it messy. Use `if`. It's really basic. Basic is good. Maybe we
should try to push towards basic and good. It would be work but make
us happier in the long run.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:18:56 -08:00
Ryan Davis
51b65f6c2e Overhaul Platform#supported?
+ State normal path first.
+ Use Enumerable to state your logic up front, don't build it into
  loops with breaks/returns.
+ Remove nonsensical duplication of key formats. (should push up or remove)
+ Had to add an extra test case that wasn't covered here but was in
  metadata_test.rb (why?!?)

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:18:56 -08:00
Ryan Davis
10cb92da48 Clean up Platform#params.
State your normal case first, then deal with edge cases, not the other
way around.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:18:56 -08:00
Ryan Davis
aef285a1f6 Don't meta-program if you don't need to.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:18:56 -08:00
Ryan Davis
06ceba3f3d Add test for LEC to expose second-level libraries require.
Not the best test in the world, but it is better than nothing.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 13:18:56 -08:00
Chef Expeditor
3cfd35f98f Bump version to 4.18.82 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-01 02:04:23 +00:00
Ryan Davis
2c7101df26 Fix minor style issues.
I swear... rubocop hates me.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-31 18:01:01 -08:00
Chef Expeditor
4ab4b04bed Bump version to 4.18.81 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-01 01:51:56 +00:00
Chef Expeditor
d09656cdff Bump version to 4.18.80 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-01 01:38:34 +00:00
Ryan Davis
c79245cde3
Merge pull request #4869 from inspec/zenspider/crontab
Refactored crontab resource
2020-01-31 17:38:12 -08:00
Chef Expeditor
c3a37ee126 Bump version to 4.18.79 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-01 00:42:32 +00:00
Ryan Davis
c70f73dc96
Merge pull request #4864 from inspec/zenspider/resource/inspect
Added --inspect option to inspect shell command.
2020-01-31 16:42:00 -08:00
Chef Expeditor
01b9bacaa1 Bump version to 4.18.78 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-01 00:41:46 +00:00
Ryan Davis
cc1393bb9a
Merge pull request #4822 from PiQuer/master
make command.exist? POSIX conform
2020-01-31 16:41:27 -08:00
Chef Expeditor
09e0bc63da Bump version to 4.18.77 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-31 22:29:39 +00:00
Chef Expeditor
d83ead45f9 Bump version to 4.18.76 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-31 01:21:42 +00:00
Chef Expeditor
7e258f8944 Bump version to 4.18.75 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 16:04:33 +00:00
Chef Expeditor
f69d76e4a0 Bump version to 4.18.74 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 00:36:49 +00:00
Ryan Davis
a79eb417a0 the correct, un-panicked fix.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-29 16:35:11 -08:00
Chef Expeditor
fb81c806b5 Bump version to 4.18.73 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 00:25:39 +00:00
Ryan Davis
622ae78d9a bad master merge... rushing this through
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-29 16:24:35 -08:00
Chef Expeditor
5c6be7b936 Bump version to 4.18.72 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 00:19:44 +00:00
Ryan Davis
f2155a64ed
Merge pull request #4843 from michaellihs/master
Add support for yocto linux in service resource
2020-01-29 16:19:27 -08:00
Ryan Davis
19ce5df589
Merge pull request #4827 from inspec/mj/namespaces
Move parsers under Utils
2020-01-29 16:18:43 -08:00
Chef Expeditor
bb70c50961 Bump version to 4.18.71 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 00:08:10 +00:00
Ryan Davis
10406545ca
Merge pull request #4862 from inspec/zenspider/resources
Fix up the platform on etc_hosts, virtualization, ini, and xml resources to fix OS disparity.
2020-01-29 16:07:47 -08:00
Chef Expeditor
eaf2d7ca5b Bump version to 4.18.70 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-30 00:06:50 +00:00
Chef Expeditor
485aa93d90 Bump version to 4.18.69 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-29 23:50:00 +00:00
Ryan Davis
124b56b6ee
Merge pull request #4825 from inspec/zenspider/tarball
Properly report errors with bad tarball files.
2020-01-29 15:49:40 -08:00
Ryan Davis
2ae2bcf6fb
Merge pull request #4818 from JackChance/master
replaced instances of `have_protocols` with `have_protocol` in docume…
2020-01-29 15:46:25 -08:00
Ryan Davis
ceab1cbdac Refactored crontab resource
Specifically the parsing was pretty unreadable. This refactoring
emphasizes using a default hash and merging in the differences for
what was parsed. Everything is funneled through one `merge_crontab`
method that does the actual parsing and the system vs user differences
are merged in after in their respective parse methods.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-29 13:56:11 -08:00
Clinton Wolfe
37455bdd11 Parallelize unit tests
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-29 16:15:58 -05:00
Clinton Wolfe
3419c84233 Make predicates private to reduce namespace pollution; added dockerenv check for docker mode
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-29 11:28:52 -05:00
Chef Expeditor
193905a827 Bump version to 4.18.68 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-29 16:03:44 +00:00
Ryan Davis
15f77941af Some cleanup on the apache_conf resource.
The biggie to know is that all the extra read_content calls were
needlessly redundant with it also being called in initialize.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-28 14:53:37 -08:00
Ryan Davis
9c051da22b Fix platform on apache_conf to include all unix.
Now discovers the first available conf file from a list of known
paths. Might have to expand based on various distros.

Had to tweak the tests because the mock loader mocks EVERYTHING every
time. :/

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-28 14:53:37 -08:00
Ryan Davis
8bd2528ef8 Added --inspect option to inspect shell command.
* Removed Resource#inspect (calling to_s) to make debugging a happy experience.
* Added ResourceBehavior.toggle_inspect to add/remove a basic inspect.
* Added `--inspect` flag to `shell` command. Call toggle_inspect unless --inspect used.
* Cleaned up matchers.rb and removed most explicit calls to inspect.
* Added ResourceInspector to rspec's INSPECTOR_CLASSES.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-28 14:52:04 -08:00
Clinton Wolfe
357cf051b1 PR feedback part 1
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-28 11:06:12 -05:00
Chef Expeditor
41f3927e84 Bump version to 4.18.67 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-28 15:03:18 +00:00
Clinton Wolfe
46ade02401
Use an archive if possible when fetching fails and --airgap is… (#4806)
Use an archive if possible when fetching fails and --airgap is provided
2020-01-28 10:02:57 -05:00
Ryan Davis
df31f744f4 Fix up platform on filesystem resource.
From linux to unix. This should work fine even on AIX, according to
the man pages.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-27 15:34:33 -08:00
Ryan Davis
65c44d22e2 Audited virtualization a bit.
Cleaned up some code.
Reordered virtualization detection by order of probability.
Added TODOs for obvious problems.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-27 15:31:41 -08:00
Ryan Davis
f830ddeca6 Slimmed up and removed "clever" from file resource description.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-27 15:30:48 -08:00
Ryan Davis
b9d49e0fed Fix up the platform on etc_hosts, virtualization, ini, and xml resources to fix OS disparity.
+ File format oriented resources should always be `os`.
+ virtualization should (in theory) be any unix (tho, it currently seems wrong).
+ etc_hosts should be any (reasonable) unix.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-27 15:29:52 -08:00
Clinton Wolfe
76a9c3e590 Install-path based install context detection
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-27 13:29:37 -05:00
Clinton Wolfe
eac3b31095 PR feedback re: cache warming
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-27 11:01:15 -05:00
Chef Expeditor
2089bf80c7 Bump version to 4.18.66 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-27 15:51:46 +00:00
Clinton Wolfe
31d2383285
Missing end quote in oracledb_session (#4852)
Missing end quote in oracledb_session
2020-01-27 10:51:25 -05:00
Chef Expeditor
cafb4f3e3e Bump version to 4.18.65 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-27 15:31:19 +00:00
Miah Johnson
89549bd884 Missing end quote.
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-01-24 12:00:00 -08:00
Chef Expeditor
6434009051 Bump version to 4.18.64 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-24 17:40:12 +00:00
Ryan Davis
faf7833559 Clarified service logic logic for redhat flavors.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-23 16:36:44 -08:00
Ryan Davis
ad6ffcccd6 Switch Service#select_service_mgmt from huge if statement to case.
Having a ton of conditions with `%w{one-string}.include?(platform)` is
incredibly wasteful and slow. Apparently about 17x slower:

```
Calculating -------------------------------------
          include_eh    529.315k (± 3.2%) i/s -      2.675M in   5.058296s
       include_or_eq    909.795k (± 1.5%) i/s -      4.568M in   5.022491s
           case_when      9.043M (± 2.8%) i/s -     45.443M in   5.029499s

Comparison:
           case_when:  9042590.3 i/s
       include_or_eq:   909795.2 i/s - 9.94x  slower
          include_eh:   529315.0 i/s - 17.08x  slower
```

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-23 16:36:36 -08:00
Ryan Davis
8f4bac23eb Refactor some of resources/service.rb
Starting with: normalizing a huge if in select_service_mgmt to only
use strings.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-23 16:33:15 -08:00
Chef Expeditor
d013ac1e47 Bump version to 4.18.63 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-23 18:09:12 +00:00
Noel Georgi
7ac25401bb
Add: content option for x509_certificate
Signed-off-by: Noel Georgi <git@frezbo.com>
2020-01-22 13:49:35 +05:30
Chef Expeditor
7da7c2774b Bump version to 4.18.62 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-21 21:18:34 +00:00
Raimar Sandner
fa2f2c2caa make command.exist? POSIX conform
With the current implementation, on a Linux system without bash
command.exist? always returns false. 'sh -c' is guaranteed to exist on a
POSIX-conform system [1] whereas 'bash -c' only works if bash is
actually installed.

[1] https://pubs.opengroup.org/onlinepubs/9699919799/utilities/sh.html

Obvious fix.
2020-01-19 00:05:33 +01:00
Michael Lihs
edd93eea81 Add support for yocto linux in service resource
Signed-off-by: Michael Lihs <michael.lihs@thoughtworks.com>
2020-01-18 01:26:16 +01:00
Chef Expeditor
356de23c5c Bump version to 4.18.61 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-15 21:02:41 +00:00
Ryan Davis
9bd07954a6
Merge pull request #4833 from inspec/zenspider/mac/groups
Fixed duplicate groups on osx by merging members by gid.
2020-01-15 13:02:24 -08:00
Chef Expeditor
8cede82c20 Bump version to 4.18.60 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-15 20:37:45 +00:00
Clinton Wolfe
4c270efe78
upstream is basic_auth_only not basic_auth (#4834)
upstream is basic_auth_only not basic_auth
2020-01-15 15:37:26 -05:00
Chef Expeditor
d4481b82fb Bump version to 4.18.59 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-14 21:07:12 +00:00
Shawn Foley
83bc974923 winrm_basic_auth_only
Signed-off-by: Shawn Foley <shawn.foley@marketleader.com>
2020-01-14 08:46:06 -08:00
Ryan Davis
ea611634d1 Fixed duplicate groups on osx by merging members by gid.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-13 13:25:05 -08:00
Clinton Wolfe
71e34abae4 Clarify usage message for --airgap option
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-07 21:02:16 -08:00
Miah Johnson
0d57612103 Update references to use new namespace
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-01-07 15:12:42 -08:00
Miah Johnson
0f4538ca4d Move all these modules to live until Inspec::Utils
Signed-off-by: Miah Johnson <miah@chia-pet.org>
2020-01-07 15:12:42 -08:00
Clinton Wolfe
a11c41283c Clarify comment on fallback_to_archive_fetch_failure
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-06 19:48:03 -05:00
Clinton Wolfe
479256fad3 Compress some code
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-06 19:32:13 -05:00
Clinton Wolfe
3a97e5d75b Accept a refactornig suggestion
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-06 19:21:12 -05:00
Clinton Wolfe
835bd2be8c A clumsy but effective way of usually dodging windows filesystem length restrictions.
Still definitely possible to run afoul of that issue, but that is not specific to
this feature, and frankly one might consider increasing thier FS path length
as a solution, as well.

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-06 18:54:23 -05:00
Ryan Davis
0e77af3a77 Fixed resolver_test.rb by making Inspec::Config.cached a lazy accessor.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-03 17:13:18 -08:00
Ryan Davis
885e4f6c71 Fix test failure for call to vendor! w/o options.
Had to make options available for the mocking as well.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-03 17:12:51 -08:00
Clinton Wolfe
9bf8f2f4cd Adjust usage message for --airgap option
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
9ada8362b8 Push up update_from_opts implementation
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
5369b7ac79 make a one-liner per miah
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
b92537aff5 bangify vendor_dependencies
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
6a0f7eeea9 A terrible implementation of fetcher fallback for compliance fetcher
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
f4a3cf9144 Implementation for local fetcher
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
4e0ad4a56b Implementation of archive fallback for the URL fetcher
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
1eb33049e4 Alter resolver to fallback to an archive if in airgap mode
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:05 -05:00
Clinton Wolfe
1806900794 Add an optional API method to update the internal state of a fetcher
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:04 -05:00
Clinton Wolfe
e1941b2d11 When archiving with --airgap, warm the vendor cache from any available local archives
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:04 -05:00
Clinton Wolfe
f9d419f219 Remove constructors from raise statements
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:04 -05:00
Clinton Wolfe
48a97ea60f Add .invalid TLD to test hostanmes
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-01-03 14:15:04 -05:00
Chef Expeditor
395d6d5421 Bump version to 4.18.58 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-03 16:47:38 +00:00
Clinton Wolfe
328302dd48
Fix empty attributes array in json reporter (#4815)
shallow copy of params missed inputs
2020-01-03 11:47:16 -05:00
Ryan Davis
b51da7d037 Properly report errors with bad tarball files.
+ Raise a well-worded error with details and avoid an uncaught exception.
+ Fix error caused when the tar file is already invalid and we try to close it.

Fixes #3765.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-02 16:13:55 -08:00
Chef Expeditor
230ce1532e Bump version to 4.18.57 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-03 00:07:52 +00:00
Ryan Davis
f09595c33d
Merge pull request #4821 from inspec/zenspider/mocha2
Found and fixed more mocha/setup deprecations.
2020-01-02 16:07:35 -08:00
Chef Expeditor
8b5789004a Bump version to 4.18.56 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-01-01 00:59:32 +00:00
Ryan Davis
c57a0e1f13 Found and fixed more mocha/setup deprecations.
This level of duplication is not good.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-31 15:46:47 -08:00
Ryan Davis
a0ffa67b71 Switched from profile_id to __profile_id per feedback.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-31 15:27:12 -08:00
Ryan Davis
6426feeeb4 Removed the last of the metaprogramming from ControlEvalContext.
* Merged CEC.create args into CEC#initialize
* Converted the only call site of CEC.create to just call new.
* Added profile_context and resources_dsl accessors to CEC.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-31 15:27:12 -08:00
Ryan Davis
f6407fb01b Future code cleanup TODO
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-31 15:27:12 -08:00
Ryan Davis
15941279ae Removed 90+% of all metaprogramming from ControlEvalContext
+ Removed ControlEvalContext.rule_context entirely pushing into Rule
+ Gutted ControlEvalContext.create pushing into ControlEvalContext.
+ Added class ivar accessors for ControlEvalContext to bypass need for closures.
+ Converted all define_methods into defs.
+ Added resource_dsl to Rule#initialize

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-31 15:27:12 -08:00
Chef Expeditor
f4815204d9 Bump version to 4.18.55 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-31 22:20:03 +00:00
Nazli Beitollahpour
1486d8d890 issue 4807: shallow copy of params missed inputs
Signed-off-by: Nazli Beitollahpour <nazli.beitollahpour@umontreal.ca>
2019-12-31 13:02:27 -05:00
Cameron Straka
8b037fa9c2 replaced instances of have_protocols with have_protocol in documentation and examples
Signed-off-by: Cameron Straka <strakacameron@hotmail.com>
2019-12-31 10:51:55 -05:00
Ryan Davis
7d95ece60d Remove circular require between fetcher and compliance plugin w/ autoloads.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-24 04:10:48 -08:00
Chef Expeditor
5b957ef776 Bump version to 4.18.54 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-17 22:05:59 +00:00
Ryan Davis
83f7504d7c
Merge pull request #4789 from Perceptyx/add-freebsd-package
Add suport for freebsd package resource
2019-12-17 14:05:40 -08:00
Chef Expeditor
ee20fc5789 Bump version to 4.18.53 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-17 22:04:39 +00:00
Ryan Davis
409cd17551
Merge pull request #4794 from Perceptyx/add-freebsd-postfix_conf
postfix_conf: Changed supported platform to unix
2019-12-17 14:04:22 -08:00
Chef Expeditor
80d63db71e Bump version to 4.18.52 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-17 22:02:36 +00:00
Felipe Zipitria
824c3f4e89
Changed supported platform to unix
Signed-off-by: Felipe Zipitria <fzipitria@perceptyx.com>
2019-12-17 12:16:35 -03:00
Felipe Zipitria
bff3fa960d
Add suport for freebsd package resource
Signed-off-by: Felipe Zipitria <fzipitria@perceptyx.com>
2019-12-17 08:39:43 -03:00
Trevor Vaughan
21edc712bd
Fix auditd resource processing of action and list
Per auditctl(8), the -a option can have either list,action or
action,list. This PR matches against valid actions for the action field
and passed the remainder off to the list field.

Closes #4664

Signed-off-by: Trevor Vaughan <tvaughan@onyxpoint.com>
2019-12-12 17:38:47 -05:00
Chef Expeditor
2ed57d5d82 Bump version to 4.18.51 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-11 22:07:06 +00:00
Miah Johnson
cf0159b7e2
Merge pull request #4754 from inspec/jb/hab_template
remove inspec from pkg_deps/pkg_build_deps in template
2019-12-11 14:06:48 -08:00
Chef Expeditor
263e798cb7 Bump version to 4.18.50 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-10 19:56:56 +00:00
Ryan Davis
4811606b00
Merge pull request #4766 from inspec/zenspider/fix-warnings/method-redefined
Fix warnings coming from ruby -w
2019-12-10 11:56:37 -08:00
Chef Expeditor
2825e8df64 Bump version to 4.18.49 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-09 20:10:36 +00:00
Chef Expeditor
14e81b88f7 Bump version to 4.18.48 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-09 20:09:53 +00:00
Ryan Davis
5d8a0af8ce
Merge pull request #4768 from inspec/zenspider/bug628
Wire up backend to rspec metadata, allowing for example groups to use resources
2019-12-09 12:09:41 -08:00
Ryan Davis
77ce1b6559 Wire up backend to rspec metadata, allowing for example groups to use resources
Fixes #628.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-06 17:07:22 -08:00
Chef Expeditor
b9f8d1ea59 Bump version to 4.18.47 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-05 19:23:34 +00:00
Clinton Wolfe
7d2733df23
Make fetchers fail consistently (#4736)
Make fetchers fail consistently
2019-12-05 14:23:14 -05:00
Ryan Davis
11a22c63c7 Removed duplicate method warning in shadow resource.
Removed from filtertable because the deprecations are in the regular
methods.

Fixes #4213.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-04 17:13:39 -08:00
Ryan Davis
4942a572bb Fix warnings coming from ruby -w
This first pass fixes all our circular requires and duplicate method
warnings that come from:

```
ruby -w -Ilib:test test/functional/helper.rb
```

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-04 17:07:37 -08:00
Chef Expeditor
55664f753a Bump version to 4.18.46 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-04 20:23:35 +00:00
Ryan Davis
eca23385ea
Merge pull request #4760 from inspec/zenspider/detect+logger
Hook up logger to inspec detect.
2019-12-04 12:23:17 -08:00
Clinton Wolfe
84d4325516 Linting
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:35:13 -05:00
Clinton Wolfe
b6cb418af6 Flatten a conditional
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:58 -05:00
Clinton Wolfe
bba6d70b3b Raise FetcherFailure for url headers missing
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:58 -05:00
Clinton Wolfe
8c53e8a6b9 Remove constructors from raise statements
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:58 -05:00
Clinton Wolfe
b34d489f5c Add .invalid TLD to test hostanmes
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:58 -05:00
Clinton Wolfe
4bda0ddeeb fixture and implementation for git fetcher failure handling
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:19 -05:00
Clinton Wolfe
8a3213861a Fixture and implementation for URL fetcher
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:32:19 -05:00
Clinton Wolfe
72f1011979 Fixture and implementation for local fetcher error handling
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-12-04 13:30:08 -05:00
Chef Expeditor
31e4fea3ff Bump version to 4.18.45 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-04 02:43:54 +00:00
Ryan Davis
af494c193f Hook up logger to inspec detect.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-12-03 18:43:52 -08:00
Josh Brand
3af3df34d7 remove inspec/jq from pkg_deps/pkg_build_deps
It's included as a dep in the scaffolding itself, and the multiple
dependencies cause failures when building (ty @smacfarlane <3)

`jq` is also no longer needed, it was an artifact of legacy testing

Signed-off-by: Josh Brand <jbrand@chef.io>
2019-12-03 18:04:51 -05:00
Chef Expeditor
41897d3beb Bump version to 4.18.44 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-02 21:28:06 +00:00
Miah Johnson
b174273034
Merge pull request #4724 from mbaitelman/add_last_login_user
Add last login date to WindowsUser
2019-12-02 13:27:45 -08:00
Chef Expeditor
b133a48487 Bump version to 4.18.43 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-02 21:27:22 +00:00
Chef Expeditor
bc3d6e634b Bump version to 4.18.42 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-12-02 18:41:25 +00:00
Chef Expeditor
5d09cfce2f Bump version to 4.18.41 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-29 21:08:37 +00:00
Ryan Davis
f2e4fb549c Address and fix all our ruby 2.7 warnings & errors.
This does NOT include fixes for our dependencies that are also having
2.7 warnings (which cause our functional tests to fail because for
some reason we expect stderr to be empty, which is brittle).

I've got upstream PRs to fix all of those. My tests pass locally. I
could push a commit that modifies the Gemfile to use my forks, but I'd
like to see how this fares for now.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-27 15:42:52 -08:00
Chef Expeditor
f0533846fb Bump version to 4.18.40 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-25 19:56:25 +00:00
Clinton Wolfe
6adf7b13be
Merge pull request #4734 from inspec/cw/move-fetchers
Move lib/fetchers to lib/inspec/fetchers and re-namspace
2019-11-25 14:56:06 -05:00
Clinton Wolfe
9792bae00d Move the registry cache object
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-11-22 10:09:51 -05:00
Clinton Wolfe
d9f55bf85c Singularize the fetchers directory name
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-11-22 09:57:28 -05:00
Clinton Wolfe
7807c3fa01 Re-namespace core Fetchers
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-11-18 13:20:35 -05:00
Clinton Wolfe
80ef0eeeba Take back the Inspec::Fetcher namespace
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-11-15 16:23:00 -05:00
Chef Expeditor
61f6207fdf Bump version to 4.18.39 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-14 23:30:37 +00:00
Clinton Wolfe
b39d47bda7 Move fetcher files
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2019-11-14 15:25:43 -05:00
Mendy Baitelman
4ba95a0236 Fix syntax, start tests
Signed-off-by: Mendy Baitelman <mendy@baitelman.com>
2019-11-13 23:08:23 -08:00
Mendy Baitelman
311d7ee9c9 Syntax fix
Signed-off-by: Mendy Baitelman <mendy@baitelman.com>
2019-11-13 21:28:43 -08:00
Mendy Baitelman
8205a78fd2 Add last login to WindowsUser
Signed-off-by: Mendy Baitelman <mendy@baitelman.com>
2019-11-13 21:20:58 -08:00
Chef Expeditor
b9a55682dc Bump version to 4.18.38 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-13 23:51:04 +00:00
Chef Expeditor
741fcc3564 Bump version to 4.18.37 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-13 23:48:32 +00:00
Ryan Davis
540521031b
Merge pull request #4707 from inspec/zenspider/apt-fix
Fixes parsing of apt config files with arch specifier.
2019-11-13 15:48:15 -08:00
Chef Expeditor
95a8b55dcb Bump version to 4.18.36 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-13 20:35:08 +00:00
Chef Expeditor
4d705f31c0 Bump version to 4.18.35 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-13 20:34:03 +00:00
Ryan Davis
4e818faeb4 Fixes parsing of apt config files with arch specifier.
Fixes #4683.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 15:08:06 -08:00
Ryan Davis
d829fa2d61 Changed FileProvider to try to encode UTF-8 and convert newlines.
For Windows compatibility.
2019-11-12 14:51:56 -08:00
Ryan Davis
2a680058f4 Missing require?
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 14:51:56 -08:00
Ryan Davis
a27eef1d0b Fixed env vars on functional plugin tests for windows.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 14:51:56 -08:00
Ryan Davis
ead386df14 Fixed inspec_init_plugin_test.rb
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 14:51:56 -08:00
Ryan Davis
a598356e12 Strip down plugin helper and change windows prefix execution.
Powershell doesn't use "&&" and we have it all over the tests.
Changing to ";".

Also starting to unify the plugin helper w/ the functional helper
since it has a LOT of duplication.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 14:51:56 -08:00
Ryan Davis
e60dc84188 Cleaned up inspec artifact testing.
Removed redundant test/functional/inspec_artifact_test.rb
Cleaned up lib/plugins/inspec-artifact/test/functional/inspec_artifact_test.rb
Made an error on windows (install-profile fails) raise instead of just print.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-12 14:50:39 -08:00
Ryan Davis
2cb5f26998 Rearrange a require in metadata.rb to break circularity is load.
For some reason this works fine in linux & osx but fails on windows
but only when some things are loaded in isolation. *shrug*
2019-11-12 14:50:39 -08:00
Chef Expeditor
fb163ad294 Bump version to 4.18.34 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-12 21:01:36 +00:00
Clinton Wolfe
1db2941a9e
Fix for invocation when calling npm under sudo (#4548)
Fix for invocation when calling npm under sudo
2019-11-12 16:01:07 -05:00
Chef Expeditor
d9339eab02 Bump version to 4.18.33 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-12 20:31:02 +00:00
Bryan McLellan
e4a096ba83
Merge pull request #4680 from inspec/btm/warn-objects
Deprecate inspec/object/* classes
2019-11-12 15:30:45 -05:00
Chef Expeditor
91511c0ca4 Bump version to 4.18.32 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-12 20:21:53 +00:00
Ryan Davis
b1c2af209b Corresponding fixes for the move from test/unit/mock to test/fixtures.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2019-11-08 19:20:12 -08:00
Chef Expeditor
ad0e9abd33 Bump version to 4.18.31 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2019-11-09 00:08:00 +00:00