Commit graph

3974 commits

Author SHA1 Message Date
Chef Expeditor
b557eaff7e Bump version to 4.18.90 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-11 21:07:54 +00:00
Chef Expeditor
38919fbd18 Bump version to 4.18.89 by Chef Expeditor
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-11 03:13:05 +00:00
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
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