Kartik Null Cating-Subramanian
3415359ea2
Merge pull request #961 from chef/ssd/deps-resolver-replace
...
WIP: Replace Molinillo-based resolver
2016-08-23 10:52:41 -04:00
Christoph Hartmann
a381e406c4
add integration tests for file permissions on windows
2016-08-23 16:03:58 +02:00
Steven Danna
366e65b198
Add the start of tests for the Resolver class
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-23 14:50:12 +01:00
Kartik Null Cating-Subramanian
039c760545
Fixup behavior and add functional tests
2016-08-23 03:07:23 +02:00
Kartik Null Cating-Subramanian
33ae22d313
Support controls and describe blocks in InSpec shell
2016-08-19 19:07:23 +02:00
Christoph Hartmann
f72fddb114
fix functional test for compliance plugin
2016-08-19 17:16:19 +02:00
Christoph Hartmann
95029203cd
unique controls for dependency tests
2016-08-19 09:47:41 +02:00
Steven Danna
d779dd53ae
Move all dependency related classes into inspec/dependencies
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-19 09:47:40 +02:00
Steven Danna
2041a08aa2
Fetch deps based on urls
...
This extends the dependency feature to include support for url-based
dependencies. It takes some deviations from the current support for
URLs that we'll likely want to make more consistent.
By default, we store downloaded archives in the cache rather than the
unpacked archive. However, to facilitate debugging, we will prefer the
unpacked archive if we find it in the cache.
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-19 09:47:40 +02:00
Steven Danna
34ae3122e9
Fix recursive deps for path-based deps
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-18 16:02:16 +02:00
Christoph Hartmann
1d8f8bb3e3
restructure unit tests
2016-08-18 13:47:43 +02:00
Chris Evett
3df98b7a19
add iis_site tests and refactor post code review
2016-08-17 06:57:48 -04:00
Christoph Hartmann
c23263f3d0
handle xinetd config with only one entry
2016-08-16 17:23:22 +02:00
Steven Danna
b5cd64d16a
Ignore comment lines in /etc/passwd
...
Most passwd/shadow implementations treat lines that start with '#' as
comments. For example, the implementation in OS X:
if (buf[0] == '#') {
/* skip comments for Rhapsody. */
continue;
}
https://opensource.apple.com/source/remote_cmds/remote_cmds-41/rpc_yppasswdd.tproj/passwd.c
Fixes #725
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-16 10:54:52 +02:00
Victoria Jeffrey
6f198f539b
cleanup
2016-08-16 10:01:10 +02:00
Victoria Jeffrey
cf771ab967
ssh_config parse should be case insensitive
2016-08-16 10:01:10 +02:00
Dominik Richter
5f1d83f196
Merge pull request #912 from chef/ap/port-win-process
...
Windows ports with pid and process name
2016-08-12 20:59:28 +02:00
Alex Pop
353dcf10ec
make netstat default for getting ports and get only listening ones
2016-08-12 16:02:56 +01:00
Christoph Hartmann
97a9e67181
update messages for integration tests
2016-08-12 14:51:23 +02:00
Christoph Hartmann
57bdd3464c
add feature to fetch children from registry key
2016-08-12 14:51:23 +02:00
Christoph Hartmann
571bc14742
support hash params as options for registry key
2016-08-12 14:51:23 +02:00
Steven Danna
9957138909
Fix inheritance tests to account for dependency spike
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-11 16:41:09 +01:00
Christoph Hartmann
92d3702043
add integration test for windows file and directory
2016-08-10 21:41:32 +02:00
Steven Danna
9346f5dd34
travis experiment: lower docker concurrency
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-10 12:52:21 +01:00
Steven Danna
afddebaf3f
Add inspec env
command to configure shell tab-completion
...
This adds a new subcommand:
inspec env [SHELL]
which outputs a shell-appropriate completion script that the user can
source into their shell:
eval "$(inspec env SHELL)"
Currently, we provide completions for ZSH and Bash. The completion
scripts are generated from the data Thor collects.
If the user doesn't provide SHELL we attempt to detect what the user's
shell may be using a number of methods.
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-10 02:07:53 +01:00
Dominik Richter
16bd6a14d5
revert control_summary field in output
...
(1) The field is not yet optimal, the calculations are great!
(2) Changing this field should go together with all other breaking json changes, especially if https://github.com/chef/inspec/pull/811 results in a change.
2016-08-08 11:54:27 +02:00
Kartik Null Cating-Subramanian
470b7bb7d2
Merge pull request #860 from chef/vj/inspec-controls-count
...
Count controls in the summary output. Fix #852
2016-08-05 13:47:45 -04:00
Kartik Null Cating-Subramanian
8094add5b3
Test summary JSON schema
2016-08-05 13:27:30 -04:00
Steven Danna
dea19846a3
Explicitly require docker transport to avoid autoload bug
...
Ruby's autoload feature is not threadsafe. We are hoping requiring the
docker plugin early will fix odd failures we have been seeing.
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-05 17:58:20 +01:00
Kartik Null Cating-Subramanian
0f572df4be
Fix integration test
2016-08-05 10:01:29 -04:00
Steven Danna
13ebea48e1
Allow port to be specified as a string
...
This allows the user to write:
describe port(22) do
it { should be_listening }
end
as well as
describe port('22') do
it { should be_listening }
end
without hitting an error.
Fixes #867
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-05 14:01:08 +02:00
Christoph Hartmann
d9a1a500d0
add params and content method to parse_config
2016-08-05 12:13:56 +02:00
Christoph Hartmann
93a068b8fa
update kitchen container, activate all in travis
2016-08-05 10:52:03 +02:00
Christoph Hartmann
1c9d998afd
do not run runit and upstart in docker since chef run fails
2016-08-05 10:52:03 +02:00
Christoph Hartmann
bb5fb617d5
harmonize cookbooks for integration tests, update docs, remove i386 in vagrant
2016-08-05 10:52:03 +02:00
Steven Danna
57d7275857
Update inspec for os[:family] change in Train
...
Signed-off-by: Steven Danna <steve@chef.io>
2016-08-04 13:32:35 +01:00
Steven Danna
f76bc6b7b4
Be a bit louder when skipping an entire integration suite
2016-08-03 16:41:27 +01:00
Steven Danna
f30902211c
Use either /dev/kcore or /dev/core in tests
...
In many linux distributions a link to /proc/kcore is placed at
`/dev/core`. In TravisCI we see it at `/dev/kcore`. To avoid tests
failing for some developers locally, we support either location.
2016-08-02 14:14:49 +02:00
Dominik Richter
70dd639471
move base_cli to lib/inspec
...
It is not a disconnected library, but a core component of inspec. Fix its location.
2016-07-26 20:11:25 +02:00
Dominik Richter
c2f34932ad
add port resource for windows 2008
...
using `netstat -an`
2016-07-21 14:58:43 +02:00
Dominik Richter
68cf88f701
add suid sgid and sticky support for file resource
2016-07-10 23:08:42 +02:00
Dominik Richter
c6644ebdfe
check service running by ActiveState
...
See http://unix.stackexchange.com/questions/159174/differences-between-inactive-vs-disabled-and-active-vs-enabled-services
2016-07-06 12:57:04 +02:00
Dominik Richter
5da73db6a3
api: report source location with field identifiers
...
Mixing types in an array without specifying what these fields point to is not just confusing, but also causes issues with endpoints that may consume this data and dont process mixed types. We strive to have a stable api for 1.0 and this is a sin that was left after the major overhaul. Time to fix it.
2016-06-28 12:03:20 +02:00
Christoph Hartmann
9bdb01f1d5
improve wmi resource
2016-06-19 23:40:45 +02:00
Christoph Hartmann
f87f25fb07
add boolean support for cmp matcher
2016-06-18 20:33:08 +02:00
Dominik Richter
8660d5d81c
feedback round with @chris-rock
2016-06-16 20:37:51 +02:00
Dominik Richter
211a2e25fb
align inspec detect output
2016-06-16 13:00:09 +02:00
Dominik Richter
e3b20e88b7
provide target info in cli output
2016-06-16 12:26:46 +02:00
Dominik Richter
c34fd350cf
multi-profile reporting in cli formatter
2016-06-16 00:08:50 +02:00
Dominik Richter
4fbdee84cf
use utf-8 characters for default cli formatter
...
see https://github.com/chef/inspec/issues/532
2016-06-15 19:27:56 +02:00
Stephan Renatus
0a00d21113
integer?("0300") should not be true
2016-06-15 18:34:42 +02:00
Dominik Richter
f93084520f
introduce cli report formatter
2016-06-15 17:11:29 +02:00
Christoph Hartmann
f1faf47112
introduce secrets backend
2016-06-14 02:49:47 +02:00
Dominik Richter
2db8d83d56
support intra-libraries file referencing + loading
...
solves https://github.com/chef/inspec/issues/779
2016-06-03 22:54:35 +02:00
Dominik Richter
302a718b48
list arbitrary ports and query it
...
utilizing filter table to make port more flexible and useful.
2016-05-31 03:14:07 +02:00
Dominik Richter
02dae2c3c5
add simple style for filter table data
...
for quick flattening, filtering, and non-nil results. this also simplifies some interal calls and structure
2016-05-31 03:01:03 +02:00
Christoph Hartmann
e9ca7107b0
add tests for os resource
2016-05-31 00:01:26 +02:00
Dominik Richter
d6345ffd17
add resource to filter table blocks
...
i.e. get access to the original resource for more information and calls.
2016-05-30 23:31:14 +02:00
Christoph Hartmann
ba95e461d3
run integration tests in docker
2016-05-16 18:25:17 +02:00
Anirudh Gupta
4a9d9a4757
fixed 'it' statements under file_test
2016-05-16 19:24:14 +05:30
Dominik Richter
67f7a5936c
catch corner-case with symbols on test-objects
2016-05-13 20:39:17 +02:00
Dominik Richter
603e3e21b3
fix construction of ruby objects on string and array handlers
2016-05-13 19:07:43 +02:00
Dominik Richter
dde4433933
use struct for processes list
...
we know all the fields + struct is fully compatible to the curren hash implementation
2016-05-13 11:22:56 +02:00
Christoph Hartmann
1f470971d2
Revert "Add all_match to matchers"
...
This reverts commit 29cf4522e4
.
2016-05-11 23:47:24 +02:00
Christoph Hartmann
48d8694789
Revert "fix contain_match, add none_match"
...
This reverts commit 54b397f3a5
.
2016-05-11 23:47:24 +02:00
Christoph Hartmann
5939e5b2f9
Merge pull request #739 from chef/ap/port-not-nil
...
Return empty array instead of nil for port methods
2016-05-11 23:32:43 +02:00
Alex Pop
2a9d9b5481
return empty array instead of nil to be .each friendly
2016-05-11 22:21:22 +01:00
Christoph Hartmann
03b1ecfac5
Merge pull request #735 from tpcwang/escape-windows-osenv
...
Escape os_env command on Windows to handle env variables containing parentheses.
2016-05-11 23:09:34 +02:00
Alex Pop
54b397f3a5
fix contain_match, add none_match
...
update matchers doc and add more integration tests
allow non-string data types and non-arrays
2016-05-11 12:47:36 +01:00
tpcwang
c8d2991589
Escape os_env command on Windows to handle env variables containing parentheses.
...
Update the mock file to match the new command
2016-05-11 01:09:06 -07:00
Christoph Hartmann
9fd9f8aa69
Merge pull request #733 from chef/vj/add-label-for-processes
...
Expose label for processes only on linux
2016-05-10 22:39:02 +02:00
Victoria Jeffrey
1811eb6666
Expose label for processes only on linux
2016-05-10 13:59:13 -04:00
Victoria Jeffrey
29cf4522e4
Add all_match to matchers
2016-05-10 10:00:55 -04:00
Alex Pop
9ded3b8835
Provide service params as a mash, empty unless systemd for now
2016-05-09 14:54:09 +02:00
Christoph Hartmann
d2a8ba0022
add human-readable output for detect, as well as a --format json
2016-05-09 13:24:49 +02:00
Dominik Richter
5d925b2851
api: make processes return integers for pid/vsz/rss
2016-05-06 16:49:21 +02:00
Christoph Hartmann
6e905c8162
update functional tests
2016-05-06 13:47:22 +02:00
Alex Pop
c518b9edc2
expose systemd service properties via .info
2016-05-06 13:36:42 +02:00
Christoph Hartmann
8258d111ef
rename json to minijson and fulljson to json
2016-05-06 13:27:42 +02:00
Dominik Richter
b14495051a
prevent duplicate profile-loading
...
this happens when the profile is run (exec) and also interpreted (via profile.params). It will load 2 profile context calls (both via Runner) which in turn gets 2 rounds of interpreter+runner executions. This is an issue with auto-generated IDs, due to their random component, which changes in this case
2016-05-06 13:14:40 +02:00
Dominik Richter
20d08a63b5
inspec --format [json|fulljson|rspecjson] overhaul
...
Full rewrite of all formatters. Create a minimal JSON, a full JSON, and a fallback RSpec formatter. The latter is only needed for corner cases and should not really be used. The former 2 are for (1) running `inspec json` followed by `inspec exec` (`--format json`) and (2) running just `inspec exec --format fulljson`.
2016-05-06 13:14:40 +02:00
Dominik Richter
a809097d12
simplify full_id generation
2016-05-06 13:14:40 +02:00
Dominik Richter
fc718267c4
extend filter table to handle soft variable lookup
2016-05-04 15:27:58 +02:00
Dominik Richter
fb91b788a6
use filtertable with passwd resource
2016-05-04 15:27:58 +02:00
Alex Pop
f78afe0d75
Use only strings in resource examples, docs and tests
2016-05-03 23:27:18 +01:00
Anirudh Gupta
738ef69bcf
prefixed hpux to cmd file name
2016-05-03 21:38:39 +05:30
Anirudh Gupta
d839f218bf
hpux support for basic port properties
2016-05-03 14:30:59 +05:30
Alex Pop
56d856531b
support basename parameter and add tests
2016-04-29 13:40:32 -04:00
Dominik Richter
83b4dfbf4d
use the source_path instead of path for file internal reporting
2016-04-28 20:11:21 -04:00
Dominik Richter
0c8e891ee1
add #entries to filter table + remodel configuration
2016-04-28 22:46:39 +02:00
Dominik Richter
048a1584b9
encapsulated filters
2016-04-28 22:46:39 +02:00
Dominik Richter
652f10ad9a
use Inspec::Filter in xinetd resource
2016-04-28 22:46:39 +02:00
Dominik Richter
01caf05020
add cmd for executing calls against the inspec api
2016-04-27 06:31:01 -07:00
Christoph Hartmann
ab9f5f9c1a
Merge pull request #682 from Anirudh-Gupta/hpux
...
Hpux
2016-04-27 06:29:05 -07:00
Anirudh Gupta
045d8c6572
added file permission by user check for hp-ux
2016-04-26 15:08:01 +05:30
Anirudh Gupta
1330e09df5
added file permission by user check for hp-ux
2016-04-26 14:53:28 +05:30
Christoph Hartmann
2242790528
Merge pull request #678 from Anirudh-Gupta/hpux
...
added hpux user and package resource support
2016-04-25 07:22:19 -05:00
Dominik Richter
d0760662ce
bugfix: restore pax_global_header fetcher filter
...
The original tests were deactivated. Reactivate and fix the implementation.
TODO: verify that this matches expectations
2016-04-24 02:38:22 -04:00
Dominik Richter
bc724c81ff
fix legacy supports call
...
as reported by Jeremy Miller and Alex Pop
2016-04-22 11:15:57 -04:00
Anirudh Gupta
75534fdaa5
added hpux user and package resource support
2016-04-21 14:01:56 +05:30