Commit graph

9264 commits

Author SHA1 Message Date
Miah Johnson
7bb0bb2188
Merge pull request #4865 from inspec/jh/schema-improvements
Jh/schema improvements
2020-02-10 18:38:28 -08:00
Ryan Davis
dc3d0728c6 artifact-habitat should be triggered via PR.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -08:00
Ryan Davis
77acd330e5 Fix our inspec.gemspec for appbundler.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -08:00
Ryan Davis
e8b6ff219f Turn off interactive and coloring for hab builds.
Our logs on BK were >1mb.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -08:00
Ryan Davis
81142952e5 Changing the rakefile setup so all gems get built.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -08:00
Ryan Davis
b1fd3bcf85 Change windows hab builds to hopefully be more obvious when they fail.
Also change the appbundle order to lowest build/dep first.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -08:00
Ryan Davis
947365719a Fix artifact-habitat testing for inspec.
Needed a fallback on `ENV["project_root"]` not being defined.

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-10 18:34:00 -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
Clinton Wolfe
73b3336e30 Test feedback
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-02-10 15:12:32 -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
581e24094e Executed '.expeditor/update_dockerfile.sh'
Obvious fix; these changes are the result of automation not creative thinking.
2020-02-06 23:01:53 +00: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
Ryan Davis
fb6685bcac
Merge pull request #4892 from inspec/cw/silence-thor-warning
Don't try to fool Thor's option type checker for --airgap on archive
2020-02-06 12:25:36 -08: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
Miah Johnson
40966bc039
Merge pull request #4887 from inspec/switch_windows
Pull Ruby installer for windows from S3 not GitHub
2020-02-05 12:10:04 -08:00
Tim Smith
70723000a8 Pull Ruby installer for windows from S3 not GitHub
This should prevent failures when we get throttled pulling it from GitHub.

Signed-off-by: Tim Smith <tsmith@chef.io>
2020-02-05 10:26:24 -08:00
Clinton Wolfe
f52b195d7d ...
Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
2020-02-05 12:21:14 -05: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
Ryan Davis
5f2a9a2031
Merge pull request #4876 from inspec/zenspider/yamllint
Fix up indentation of .expeditor config according to yamllint.
2020-02-04 14:08:10 -08:00
Ryan Davis
ee2401cb13
Merge pull request #4884 from inspec/zenspider/mocha/quiet
Please stop warning about mocha.
2020-02-04 12:59:47 -08:00
Ryan Davis
b2d1b12600 Fix up indentation of .expeditor config according to yamllint.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-04 12:58:58 -08:00
Ryan Davis
093af59ea2
Merge pull request #4885 from inspec/zenspider/habitat/retry
Habitat builds blow up enough that we should try again.
2020-02-04 12:57:39 -08: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
Clinton Wolfe
64c35b78f9
issue 4807: test for inputs in profiles (#4883)
issue 4807: test for inputs in profiles
2020-02-04 14:54:29 -05:00
Ryan Davis
0cd73994da Might as well do it for hab artifact as well.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 17:16:11 -08:00
Ryan Davis
65a0f09add Habitat builds blow up enough that we should try again.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 17:15:06 -08: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
102cea673a
Merge pull request #4814 from inspec/zenspider/unmeta2/electric-profile-eval-context
Removed as much metaprogramming from LibraryEvalContext & Resource as currently possible.
2020-02-03 16:42:09 -08:00
Ryan Davis
6330fa486f Please also stop warning about VERSION being defined.
This removes ::InspecPlugins::TestFixture in installer_test and
loader_test on every test.

Please... no more output in our test runs...

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 16:38:25 -08:00
Ryan Davis
327e571ce9 Please stop warning about mocha.
Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-02-03 14:49:47 -08: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
07d5e84eb7 Improved the unit/profiles/* tests.
Use better assertions for better failure messages.

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
ae0dead7be This is all dead. Removed.
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