Christoph Hartmann
c6c9d0278c
0.10.1
2016-02-05 18:52:44 +01:00
Dominik Richter
bb264897f4
wrap basecli in inspec module
...
Take care of a rare error which has Inspec undefined
2016-02-05 18:25:40 +01:00
Christoph Hartmann
be7aa8f0c4
0.10.0
2016-02-05 17:18:07 +01:00
Christoph Hartmann
b7a88dbd7a
fix linting and unit test
2016-02-05 16:57:51 +01:00
Christoph Hartmann
f826c07af5
minor improvements
2016-02-05 14:55:12 +01:00
Christoph Hartmann
7e88f56917
move plugin to bundles
2016-02-05 14:48:55 +01:00
Christoph Hartmann
a55a4869d9
extract base cli class
2016-02-05 14:20:32 +01:00
Christoph Hartmann
7494854c60
implement profile upload
2016-02-05 14:18:05 +01:00
Christoph Hartmann
368f6ed56a
refactor compliance plugin
2016-02-05 14:18:05 +01:00
Christoph Hartmann
2cb3d6f90f
bugfix: rescue url error in url target helper
2016-02-05 14:15:57 +01:00
Christoph Hartmann
6c1b9fff9d
do not try to load a profile if we have no token available
2016-02-05 14:15:57 +01:00
Christoph Hartmann
7f57b12258
refactor cli
2016-02-05 14:15:57 +01:00
Christoph Hartmann
823e30e9cf
re-introduce compliance exec
2016-02-05 14:14:34 +01:00
Christoph Hartmann
0958327f06
improve url target helper, match github url with trailing /
2016-02-05 14:14:34 +01:00
Christoph Hartmann
6cf8ecf304
add target helper for compliance plugin, extract API methods from CLI
2016-02-05 14:14:34 +01:00
Christoph Hartmann
0b59dab9ea
initial version of compliance plugin
2016-02-05 14:13:22 +01:00
Christoph Hartmann
bab7eb1986
improve styling
2016-02-05 14:06:55 +01:00
Christoph Hartmann
589db0bcd0
add registry for cli plugins
2016-02-05 14:06:55 +01:00
Stephan Renatus
f63a8ad1d5
upstart_service: add version fallback, fix regexp
...
before this regexp change, a service called "running" (hello integration
tests) would always be "running" ;)
2016-02-05 13:49:18 +01:00
Christoph Hartmann
e6ff20f91e
add metadata warnings in structured hash
2016-02-04 18:46:11 +01:00
Christoph Hartmann
d7cb5a9ae0
adapt unit tests
2016-02-04 18:05:40 +01:00
Christoph Hartmann
ea63a39b40
improve code style
2016-02-04 17:01:38 +01:00
Christoph Hartmann
14a3100e41
simplify result value from profile check
2016-02-04 16:47:33 +01:00
Christoph Hartmann
7e19c5eec6
fix ignore errors option use in archive method
2016-02-04 16:41:59 +01:00
Christoph Hartmann
1796c3271b
generate hash output for check and use it in inspec cli
2016-02-04 16:41:14 +01:00
Christoph Hartmann
6b7e5818fb
expose source location in rule
2016-02-04 16:38:57 +01:00
Christoph Hartmann
d50b634879
bugfix: fix control tests
2016-02-04 16:38:57 +01:00
Christoph Hartmann
826d059b19
optimize json logger for line delimited JSON
2016-02-04 16:38:57 +01:00
Christoph Hartmann
907a4e1f33
add json stream logger for inspec check
2016-02-04 16:38:57 +01:00
Dominik Richter
ecb78e3a19
establish plugin loading dock
2016-02-04 14:43:51 +01:00
Stephan Renatus
e8c7452acf
Inspec::Profile: document that it always reads with ignore_supports
2016-02-03 16:47:52 +01:00
Stephan Renatus
828d6ad443
Inspec::Profile fix @metadata
2016-02-03 16:47:49 +01:00
Stephan Renatus
cc60fa1e23
tar/zip: return empty-string if an entry is empty; zip: return ref
2016-02-03 14:38:46 +01:00
Stephan Renatus
1510f330a9
read and return metadata from archives, too
...
Note that this adds `ref: some/where/in/tarball/file` to the file
contents hash; it wasn't there before but it may be useful for error
reporting nonetheless.
2016-02-03 14:38:46 +01:00
Stephan Renatus
f335865377
WIP: kill all the checks that fail with tarballs.
...
current output:
$ inspec check test/unit/mock/profiles/complete-profile.tgz
I, [2016-02-03T10:22:21.377650 #13207 ] INFO -- : Checking profile in test/unit/mock/profiles/complete-profile.tgz
I, [2016-02-03T10:22:21.377745 #13207 ] INFO -- : Found 1 rules.
I, [2016-02-03T10:22:21.377771 #13207 ] INFO -- : Rule definitions OK.
2016-02-03 14:38:46 +01:00
Stephan Renatus
889be88543
remove stray require
2016-02-03 14:04:55 +01:00
Stephan Renatus
79d171fb2c
rubocop
2016-02-03 14:04:55 +01:00
Stephan Renatus
45f0cbff03
inspec/rspec: decouple reporting and formatting
...
If reporting is requested, register a "reporting formatter", i.e.,
Inspec::RSpecReporter, that does the same things JsonFormatter does, but
suppresses output.
When the report is then requested, it returns the output hash that
JsonFormatter aggregates.
2016-02-03 14:04:55 +01:00
Stephan Renatus
6789e089d7
Inspec::Runner: provide a report
2016-02-03 14:04:55 +01:00
Stephan Renatus
ff682532cf
fix warning in #find_files[_or_error]
2016-02-01 16:32:47 +01:00
Dominik Richter
34bc94d13f
mock resource operating systems for tests
2016-01-29 21:55:08 +01:00
Dominik Richter
4c1b6f7509
remove os check exposure in file resource
2016-01-29 21:55:08 +01:00
Christoph Hartmann
9cfc69cf15
0.9.11
2016-01-29 18:34:12 +01:00
Stephan Renatus
6fbd28c2bb
runit_service: fix resource, improve integration tests
...
Turns out using `/usr/bin/yes` to imitate a daemon process is a TERRIBLE idea.
2016-01-29 17:03:05 +01:00
Christoph Hartmann
317b0cae9d
lint check in user resource
2016-01-28 21:11:13 +01:00
Christoph Hartmann
6ccfbe5e95
bugfix: use freebsd netstat parser instead of linux netstat parser for solaris
2016-01-28 21:08:52 +01:00
Christoph Hartmann
35899ebce6
optimize style in user resource
2016-01-28 18:30:39 +01:00
Christoph Hartmann
202190ea56
fix user resource unit test
2016-01-28 18:30:39 +01:00
Christoph Hartmann
ef3dbbb35c
improvement: make port parsing on solaris more reliable
2016-01-28 18:30:38 +01:00
Christoph Hartmann
678ee2b473
parse port information on solaris 10 and 11 via netstat
2016-01-28 18:30:38 +01:00
Christoph Hartmann
59f3214817
use id -a for solaris
2016-01-28 18:30:38 +01:00
Christoph Hartmann
bd1e5e4085
service resource for solaris 10 and 11
2016-01-28 18:30:38 +01:00
Christoph Hartmann
913191fb9e
package resource for solaris 10 and 11
2016-01-28 18:30:38 +01:00
Christoph Hartmann
dd59dd9a5a
use os.linux and os.windows where possible
2016-01-28 18:30:38 +01:00
Christoph Hartmann
a5f526b368
use freebsd file permission checks for solaris
2016-01-28 18:30:38 +01:00
Christoph Hartmann
2fd6aea357
extend etc_group support for all unix systems
2016-01-28 18:30:38 +01:00
Christoph Hartmann
058ec27d64
0.9.10
2016-01-25 17:45:43 +01:00
Stephan Renatus
56f22a1d2a
resource/postgres_session: add integration tests, change error handling
...
this makes it work (tested with default-ubuntu-1404), but doesn't
improve the error handling (i.e., the skip_resource doesn't really
prevent the failure)
2016-01-25 16:44:53 +01:00
Stephan Renatus
9821c4c754
resource/launchd_service: correctly match non-running services
2016-01-25 16:29:08 +01:00
Christoph Hartmann
5506319ad8
Merge pull request #389 from chef/dr/write-id-to-json
...
bugfix: write given ID to metadata json
2016-01-25 07:22:19 -08:00
Dominik Richter
88d2b26387
bugfix: write given ID to metadata json
...
Whenever the user provides an ID under which the profile is scoped, write it out to JSON during generation.
2016-01-25 15:48:56 +01:00
Christoph Hartmann
cc0db43813
optimize the error output for missing registry keys to nil
2016-01-25 13:55:47 +01:00
Christoph Hartmann
b30720f926
Merge pull request #380 from chef/sr/service-override
...
add service overrides for picking specific service managers, add runit_service
2016-01-21 13:35:23 +01:00
Stephan Renatus
ef77e01229
service resources: fix service_ctl default/override handling
2016-01-21 11:35:34 +01:00
Dominik Richter
d10207caca
warn about legacy supports fields in metadata
...
I.e.: Prevent users from writing `supports: linux` and similar. These are deprecated and will be removed. Also improve the warning to indicate what the user should do instead. Finally add tests to make sure we get all these.
2016-01-21 11:05:26 +01:00
Stephan Renatus
492c7f8146
runit_service: cleanup; fix "non-running-runit-service" test + recipe
2016-01-21 09:05:29 +01:00
Stephan Renatus
c761b8b40d
service resources: further simplifications, debian/centos handling
...
I've recovered the debian/centos special handling of the `service`
binary, although I doubt that it's necessary.
2016-01-21 08:22:04 +01:00
Dominik Richter
cac102aeac
add profile tests (non-legacy)
2016-01-20 21:57:23 +01:00
Stephan Renatus
3f39b35502
add runit_service resource, fix service_ctl handling
2016-01-20 17:54:16 +01:00
Stephan Renatus
709e4ca9e0
some code simplifications
2016-01-20 16:05:20 +01:00
Stephan Renatus
0e410df69d
add *_service overrides, allowing for different control binaries
2016-01-20 15:33:18 +01:00
Dominik Richter
20b138778e
bugfix: expose tests for docker unit-tests
2016-01-19 15:48:06 +01:00
Dominik Richter
c713a0af87
lint
2016-01-19 15:48:06 +01:00
Dominik Richter
22c6fa871d
add code docs to rspec runner
2016-01-19 15:48:06 +01:00
Dominik Richter
611487e956
clearly identify legacy profile tests and fix identification
2016-01-19 15:48:06 +01:00
Dominik Richter
8c464965c1
extract example group creation
...
and restore profile tests that had been completely mocked until now
2016-01-19 15:48:06 +01:00
Dominik Richter
dd2d93fd6f
completely separate rspec runner parts
2016-01-19 15:48:06 +01:00
Dominik Richter
21a92a0c4e
isolate rspec-dsl in profile context
2016-01-19 15:48:06 +01:00
Dominik Richter
b991dd03bb
flatten creation of profile context
2016-01-19 15:48:06 +01:00
Dominik Richter
21d9ae7e1d
move resource dsl creation to resource plugin
2016-01-19 15:48:06 +01:00
Jason Reed
1807c688b8
Fix typo
2016-01-19 09:07:24 -05:00
Dominik Richter
b0ffe684ab
freeze those versions
2016-01-15 21:41:20 +01:00
Christoph Hartmann
e9b94d55d1
0.9.9
2016-01-15 15:20:04 -05:00
Dominik Richter
acbc345321
make metadata.rb legacy mode consistent for supports
...
Before introducing InSpec profiles in https://github.com/chef/inspec/pull/252 we had `metadata.rb` keep all information. This included an undisclosed field called `supports`. However, this field was never actually used in practice. So for legacy profiles, this means that `supports` was ignored. In order to keep old profiles running in exactly the way they were before, ignore this field when reading from metadata.rb
2016-01-15 18:58:18 +01:00
Christoph Hartmann
b9978b5606
new rubocop fixes
2016-01-14 23:15:10 -05:00
Christoph Hartmann
46d85c2cbc
fail test if lsof is not available
2016-01-14 23:03:51 -05:00
Jeremy W. Chalfant
9e40e6d9f3
my rubocop is different
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
0681562fcd
rubocop is nuts
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
98a7e6303e
fix remaining rubocop complaints
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
2fc8ba1b83
fix lint complaint
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
2d8c892298
use formmated lsof output to ensure accuracy and consistency across platforms
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
adbc5b8ef4
sanity check and AIX tests
2016-01-14 23:03:26 -05:00
Jeremy W. Chalfant
2e7ab9bad7
fix rubocop complaint
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
388937e9b4
add aix user support
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
3b87e385d7
my rubocop is different
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
6cd801fbb9
rubocop is nuts
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
94a286929f
fix remaining rubocop complaints
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
420aef7cb9
fix lint complaint
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
c8c676e1d6
use formmated lsof output to ensure accuracy and consistency across platforms
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
f31a9f35b5
sanity check and AIX tests
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
5a6b1bbddf
fix rubocop complaint
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
fbe79d1bc4
add aix user support
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
b167854c18
my rubocop is different
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
bbed0e7164
rubocop is nuts
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
88656c9ea8
fix remaining rubocop complaints
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
2aceba417c
fix lint complaint
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
d5a7bad414
superflous chomp
2016-01-14 23:03:25 -05:00
Jeremy W. Chalfant
b6649dd581
use formmated lsof output to ensure accuracy and consistency across platforms
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
55d7faec8a
sanity check and AIX tests
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
a0bbb175c2
AIX packages
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
1d99afe623
fix rubocop complaint
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
3168e4d100
add aix user support
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
d51d86e6d8
disable cops
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
6bdb06fbe9
move lsof parsing to seperate method
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
c982daaf6e
my rubocop is different
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
3211071b9f
simplify lsof call
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
221d27423e
rubocop is nuts
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
f817840d38
fix remaining rubocop complaints
2016-01-14 23:03:24 -05:00
Jeremy W. Chalfant
3a90ea3a74
fix lint complaint
2016-01-14 23:03:23 -05:00
Jeremy W. Chalfant
2c5cb06990
superflous chomp
2016-01-14 23:03:23 -05:00
Jeremy W. Chalfant
b9ce468886
add AIX service support
2016-01-14 23:03:23 -05:00
Jeremy W. Chalfant
d855602efe
use formmated lsof output to ensure accuracy and consistency across platforms
2016-01-14 23:03:23 -05:00
Jeremy W. Chalfant
aef7f6de39
sanity check and AIX tests
2016-01-14 23:00:10 -05:00
Jeremy W. Chalfant
bc503f080d
rename etc_group to etc_group_spec and etc_group test success on AIX
2016-01-14 23:00:10 -05:00
Jeremy W. Chalfant
db43739951
AIX packages
2016-01-14 23:00:10 -05:00
Jeremy W. Chalfant
506b0ea996
fix rubocop complaint
2016-01-14 23:00:10 -05:00
Jeremy W. Chalfant
26afecf857
add aix user support
2016-01-14 23:00:09 -05:00
Mark Harrison
f5780b69a4
Correctly detect UDP ports on linux
...
netstat on UDP lines doesn't display a port state (e.g. LISTEN), so make this
field optional when parsing the netstat line.
2016-01-14 22:53:38 -05:00
Christoph Hartmann
454a7e466d
bugfix: only skip regkey if required
2016-01-14 22:39:17 -05:00
Dominik Richter
375f65c903
casecmp == 0 if both entries are the same
2016-01-15 04:18:48 +01:00
Dominik Richter
4092691a78
lint
2016-01-15 04:07:25 +01:00
Stephan Renatus
5c17f8b643
regexp github url targets, add tests for Inspec::Targests::UrlHelper
...
replacing occuring http:// with https:// is probably ok, github
redirects to https anyways
2016-01-14 12:05:58 -05:00
Jacob McCann
f25ab3a373
Fix systemd service enabled check
2016-01-11 15:32:33 -06:00
Christoph Hartmann
ab88c23ab6
0.9.8
2016-01-11 12:48:36 -05:00
Stephan Renatus
ee62499fc0
bugfix: ignore supports when generating a profile's json representation
...
without this, `inspec json PATH` does never contain rules != {}, because
of the usage of the mock backend
2016-01-11 09:16:06 +01:00
Christoph Hartmann
a1ddbe4cf2
explicitly ignore supports for inspec check
2016-01-10 23:59:57 -05:00
Stephan Renatus
a26dbe146d
fix reading profiles bug
...
For reading the profiles metadata, we're using the train mock backend
through Inspec::Runner. The new `supports` feature never agrees with the
mock backend.
Now, it we figure out if this is a mock class and then just say that it
supports whatever we're asking for.
Tl;dr: there's probably a more beautiful solution to this.
Added a test case, but it fails -- while the command line interface
works fine.
2016-01-07 15:16:49 -08:00
Stephan Renatus
3ce8cd7d16
support old "supports" field in metadata
...
current compliance-profiles still have
```yaml
supports:
- linux
```
and we might want to be a little backwards compatible, too.
2016-01-05 22:50:56 +01:00
Dominik Richter
26c0cd0871
lint
2016-01-03 09:49:40 +01:00
Dominik Richter
8953278204
unfortunately Enumerator#last is not supported
2016-01-03 09:40:17 +01:00
Christoph Hartmann
e1d7d30919
add deprecation warning for serverspec users
2016-01-03 00:03:24 +01:00
Christoph Hartmann
a72ba94f10
handle mount results with multiple entries
2016-01-03 00:03:24 +01:00
Christoph Hartmann
9930773f37
restrict mount functionality to linux
2016-01-03 00:03:24 +01:00
Christoph Hartmann
a5acb03e49
add mount
resource
2016-01-03 00:03:24 +01:00
Christoph Hartmann
772df929f6
implement be_mounted.with
for file resources
2016-01-03 00:03:24 +01:00
Christoph Hartmann
19ed6be39f
more fine-grained utils parser
2016-01-02 22:41:58 +01:00
Christoph Hartmann
3be9ea18cc
use 1.8 syntax for dash key values to be compatible with older ruby versions
2016-01-02 22:29:31 +01:00
Christoph Hartmann
c11c36058a
separate os check
2016-01-02 21:25:22 +01:00
Dominik Richter
d6f48d3534
catch empty support clause
2015-12-31 17:57:59 +01:00
Dominik Richter
af8e4e93ca
add supports keyword to profiles
2015-12-31 17:54:13 +01:00
Dominik Richter
2e0da6e9e8
unify metadata resolution
2015-12-31 12:49:18 +01:00
Dominik Richter
3db2dd756d
resolve metadata from profile targets
2015-12-31 12:49:18 +01:00
Dominik Richter
e7b7f166cf
dry folder resolver
2015-12-31 12:49:18 +01:00
Dominik Richter
96c9794cbf
bugfix: reload inspec DSL after loading libraries
2015-12-29 19:27:00 +01:00
Dominik Richter
526932584d
fix metadata validation
2015-12-28 13:35:38 +01:00
Dominik Richter
cfa2b9a39c
fix metadata reading and parsing
2015-12-28 13:16:09 +01:00
Dominik Richter
cdc95df5ca
keep metadata checks in metadata.rb
2015-12-28 13:07:21 +01:00
Dominik Richter
aef0cabde8
fix method length in inspec.check
2015-12-28 13:01:27 +01:00
Christoph Hartmann
0ab46ff5b1
rename metadata.yml
to inspec.yml
2015-12-28 12:53:42 +01:00
Christoph Hartmann
1d4295ee4d
remove owner/name restriction
2015-12-28 12:53:42 +01:00
Christoph Hartmann
06c1265b38
add support for .tgz extension. Thanks @srenatus
2015-12-28 12:53:42 +01:00
Christoph Hartmann
31c8509092
lint profile implementation
2015-12-28 12:53:42 +01:00
Christoph Hartmann
27150e5341
feature: generate profile archive
2015-12-28 12:53:42 +01:00
Christoph Hartmann
9da0e32f3d
bugfix: only add path to load path if the test is located on filesystem
2015-12-28 12:53:42 +01:00
Christoph Hartmann
ebe54efd67
feature: load tests from zip and tar.gz
2015-12-28 12:53:42 +01:00
Christoph Hartmann
43c778078c
feature: add support for metadata.yml
2015-12-28 12:53:42 +01:00
Christoph Hartmann
9e8e64319e
improvement: better detection of directory types
2015-12-28 12:53:42 +01:00
Christoph Hartmann
bb97044338
bugfix: fix profile check
2015-12-28 12:53:38 +01:00
Christoph Hartmann
9fda6d3e89
bugfix: use skip_control
instead of skip_rule
as default
2015-12-28 12:07:57 +01:00
Christoph Hartmann
e122e48ae5
change profile directory from 'test' to 'controls'
2015-12-28 12:07:57 +01:00
Dominik Richter
7473dea1f2
ignore auto-generated controls during verify check
2015-12-23 11:11:49 +01:00
Dominik Richter
b2e0fac625
change check errors on summary+title to warnings
2015-12-23 09:18:59 +01:00
Dominik Richter
d2509f745e
reference correct fields from metadata in inspec check
2015-12-23 09:18:59 +01:00
Dominik Richter
25706b3612
0.9.7
2015-12-21 16:31:48 +01:00
Christoph Hartmann
ca33ac9288
Merge pull request #321 from jeremymv2/security_policy_fixes
...
Fixing issue with security policy always returning nil
2015-12-17 17:55:01 +01:00
Jeremy J. Miller
f1e8483cd8
Removed extra whitespace
2015-12-17 08:56:43 -05:00
Stephan Renatus
3a1dcb7669
teach cmp
matcher octal tricks
2015-12-16 11:32:31 +01:00
Jeremy J. Miller
af55cb41d8
Added ensure block to always delete file
2015-12-15 14:40:57 -05:00
Jeremy J. Miller
652392918d
Fixing issue with security policy always returning nil
2015-12-15 10:29:54 -05:00
Stephan Renatus
a5a780f920
reset rspec configuration when initializing Inspec::Runner
...
fixes https://github.com/chef/kitchen-inspec/issues/15
2015-12-15 14:00:53 +01:00
troyready
29f954f7f3
add release to el pkg version & catch missing linebreaks
...
Package release info (e.g. '19.el7') is often required to determine if
a system has been properly patched.
Lines like the following from rpm are messing up the version returned
by the package resource:
"...\nVersion : 1.8.6p3 Vendor: Red Hat, Inc.\n..."
Correcting this with a new conditional check.
2015-12-11 13:05:22 -08:00
Dominik Richter
cc67d8d4c0
0.9.6
2015-12-11 18:34:15 +01:00
Dominik Richter
494ed708d4
Merge pull request #318 from chef/chris-rock/cmp-matcher
...
matcher for less-restrictive comparison
2015-12-11 17:58:47 +01:00
Christoph Hartmann
0185751ff5
lint exception
2015-12-11 17:48:05 +01:00
Christoph Hartmann
52cd0b38d1
update style of float?
detection
2015-12-11 17:26:46 +01:00
Christoph Hartmann
31f8863701
update failure message for cmp
matcher
2015-12-11 17:19:28 +01:00
Christoph Hartmann
53728ee03a
lint fix
2015-12-11 17:17:01 +01:00
Christoph Hartmann
9f0755be99
add new cmp
matcher that eases the comparison for values
2015-12-11 17:02:48 +01:00
Christoph Hartmann
b2c457cf22
lint: remove redundant return
2015-12-11 15:39:49 +01:00
Christoph Hartmann
6badbf4dc9
bugfix: abort registry_key resource if the os is not supported
2015-12-11 15:39:49 +01:00
Christoph Hartmann
90e1eb9e39
bugfix: always ensure the script resource is properly initialized, even if the os is not supported
2015-12-11 15:39:49 +01:00
Christoph Hartmann
7422306ba7
lint fix
2015-12-11 14:34:28 +01:00
Christoph Hartmann
95c7ba8fe5
simplify prompt color setting
2015-12-11 14:29:31 +01:00
Christoph Hartmann
100df85b27
improve shell prompt and help
2015-12-11 14:03:36 +01:00
Stephan Renatus
652d51e9dc
[resource/port] add port(addr, port)
variant
2015-12-08 20:33:36 +01:00
Stephan Renatus
8532dd7034
[resource/port] change attribute names to plural, indicating arrays
...
see discussion in #256
2015-12-08 20:33:36 +01:00
Adam Leff
c146a76679
File permission checks should return false unless file exists
...
Currently, #readable?, #writeable?, and #executable? will incorrectly
return true if the file does not exist.
In addition, I took the opportunity to refactor the File resource to
make it easier to write unit tests and supplied a full unit test
suite for this resource.
2015-12-08 19:57:34 +01:00
Stephan Renatus
7a1cd660c3
[resources/processes] add users, states attribute; update docs
...
processes('bash').user does not actually make much sense for a resource
that is a list -- different entries can belong to different users.
Analogous for processes('bash').state.
The attributes 'users' and 'states' expose the unique values
corresponding to that property of entries in the process list.
Fixes #295 .
2015-12-08 13:06:27 +01:00
Stephan Renatus
bf15c05f7f
Merge pull request #299 from chef/chris-rock/os-resource
...
support string and symbol for os resource
2015-12-07 12:22:58 +01:00
Stephan Renatus
33f2fe3dde
hide summary output when running interactively (inspec shell)
2015-12-07 11:12:41 +01:00
Stephan Renatus
17a80d32a9
remove second welcome
2015-12-07 11:12:41 +01:00
Stephan Renatus
c6fd8c5880
mention help [resource]
2015-12-07 11:12:41 +01:00
Christoph Hartmann
dcb09802d3
support string and symbol for os resource
2015-12-07 11:11:55 +01:00
Stephan Renatus
79f48afa6c
[resources/apache_conf]: add tests, fix bug
...
before, the resource would throw an exception when include_files
returned nil (i.e., [].flatten!)
added basic unit tests capturing the include_files behaviour
2015-12-07 10:50:48 +01:00
Christoph Hartmann
7c393a1891
Merge pull request #291 from chef/sr/fix-find_files
...
revert to old find_files interface
2015-12-04 14:41:36 +01:00
Stephan Renatus
324ba14a6b
fix optional type argument handling
2015-12-04 14:27:32 +01:00
Stephan Renatus
390e0fcca7
restore old find_files interface
...
- fixes #276
- basic test for find_files
2015-12-04 14:15:45 +01:00
Adam Leff
e0c356dae7
Adding support for Wind River Linux
...
WRL is used as the OS on Cisco Nexus devices and acts like a Red
Hat variant. These changes add support for WRL.
2015-12-03 17:41:11 -05:00
Christoph Hartmann
766fe47b87
add inline documentation
2015-12-01 10:56:47 +01:00
Christoph Hartmann
6a6cff1526
feature: add help command for resources
2015-12-01 10:56:47 +01:00
Christoph Hartmann
2c8a8ccb25
improvement: add etc_group support for centos and add integration test
2015-12-01 10:40:12 +01:00
Dominik Richter
762562b967
0.9.5
2015-11-25 15:43:31 +01:00
Dominik Richter
468159772f
0.9.4
2015-11-24 20:04:31 +01:00
Christoph Hartmann
a822dcee1a
optimize code structure
2015-11-24 18:39:32 +01:00
Christoph Hartmann
0bd7f557d5
bugfix: do manual split of id result because we cannot use whitespace
2015-11-24 18:35:10 +01:00
Christoph Hartmann
be62b76dc2
improvement: add checks to ensure the requested file is available
2015-11-24 16:46:17 +01:00
Christoph Hartmann
60e2a3512f
add init resource
2015-11-24 16:46:17 +01:00
Christoph Hartmann
0657525f4d
lint json resource
2015-11-24 16:46:17 +01:00
Christoph Hartmann
62ecdf6a1f
rewrite extraction of values
2015-11-24 16:46:17 +01:00
Christoph Hartmann
b70ba447b2
simplify method returns
2015-11-24 10:41:46 +01:00
Christoph Hartmann
129395141b
bugfix: make registry_key case-insensitive for properties
2015-11-23 16:26:17 +01:00
Dominik Richter
75d8b9388b
0.9.3
2015-11-20 23:33:18 +01:00
Seth Chisamore
606f618fc7
ensure all test directories are on the runner $LOAD_PATH
...
This change builds on chef/kitchen-inspec#12 . All test directories should
be on the `$LOAD_PATH` when `Inspec::Runner` executes the test suites with
`RSpec::Core::Runner`. This will allow things like `require 'spec_helper'`
to work as expected.
2015-11-20 00:14:57 -05:00
Seth Chisamore
beade346bf
Add Windows support to the os_env
resource
...
This change allows checks like:
```
describe os_env('PATH') do
its('split') { should include('C:\wix') }
end
```
2015-11-19 15:41:00 +01:00
Dominik Richter
a04ff021c6
bugfix: support multiple computed calls to describe
...
fixes #246
2015-11-19 14:28:42 +01:00
Christoph Hartmann
b899430541
bugfix: add attribute reader to make the command accessible to script resource
2015-11-17 22:40:07 +01:00
Christoph Hartmann
cb95951e03
simplify script resource
2015-11-17 22:28:11 +01:00
Christoph Hartmann
cd35d82326
improvement: reimplement registry key resource
2015-11-17 22:28:11 +01:00
Christoph Hartmann
c6166e335b
lint: fix lint error
2015-11-17 12:29:33 +01:00
Christoph Hartmann
850af710b0
improvement: add v6 protocol detection, it netstat does not deliver the information
2015-11-17 12:15:49 +01:00
Christoph Hartmann
9e3dccbfa3
improvement: restrice rescue to URI parse error
2015-11-17 12:14:05 +01:00
Christoph Hartmann
a4c47e1cd7
bugfix: fix regular expression to leave port colon
2015-11-17 12:12:59 +01:00
Christoph Hartmann
0de7549a64
lint: remove trailing whitespace
2015-11-16 21:44:12 +01:00
Christoph Hartmann
7898c1d29c
improvement: optimize regular expression, catch parse errors and ignore header lines
2015-11-16 20:33:49 +01:00
Christoph Hartmann
83e6f46724
add centos support for port
2015-11-16 20:32:43 +01:00
Dominik Richter
17ce88b63d
api: don't force root on os_env
2015-11-13 12:10:22 +01:00
Dominik Richter
069075b48a
lint
2015-11-13 10:46:04 +01:00
Christoph Hartmann
7b179872bd
extend upstart implementation to support systemv services
2015-11-13 09:54:30 +01:00
Dominik Richter
6cbe3466fb
update rubocop 0.35.1
2015-11-13 01:03:15 +01:00
Dominik Richter
007594eef7
lint
2015-11-13 00:48:52 +01:00
Dominik Richter
b47409fd73
0.9.2
2015-11-05 18:40:24 +01:00
Dominik Richter
faa0b41803
bugfix: correct add_content call to new param structure
...
this was breaking inspec shell
2015-11-05 18:35:38 +01:00
Dominik Richter
b31501ab93
0.9.1
2015-11-04 00:51:16 +01:00
Dominik Richter
6c36720bd1
0.9.0
2015-11-03 03:04:57 +01:00
Dominik Richter
6e548364f4
bugfix: dont skip controls during json generation
2015-11-03 01:10:05 +01:00
Dominik Richter
ea66947b36
dont warn on command not existing on mock backend
2015-11-03 00:35:45 +01:00
Dominik Richter
6e8c4f02a1
fix typo
2015-11-03 00:35:45 +01:00
Christoph Hartmann
9d32bc7f81
improvement: fail properly if os is not supported
2015-11-02 22:58:20 +00:00
Christoph Hartmann
b1153685a4
bugfix: relax fail for command.exist? for inspec check command
2015-11-02 22:52:04 +00:00
Dominik Richter
7a07c02b4d
alias rule instead of recreating it
2015-11-02 22:43:20 +01:00
Dominik Richter
ccabe55608
api: change require/include_rules -> require/include_controls
2015-11-02 22:26:20 +01:00
Dominik Richter
f976730a27
api: make control the default keyword
2015-11-02 22:26:20 +01:00
Dominik Richter
9aec339d9f
disable class length metrics on profile context for now
2015-11-02 17:47:04 +01:00
Dominik Richter
de8437caa6
feature: introduce group title for files
2015-11-02 17:31:56 +01:00
Dominik Richter
93ee171dfa
bugfix: use full path when resolving files
2015-11-02 16:43:39 +01:00
Dominik Richter
31d42b0212
lint: ignore line length on runner for now
2015-11-02 15:06:48 +01:00
Dominik Richter
421d7ecaa9
feature: auto-load libraries in profiles
2015-11-02 15:06:48 +01:00
Dominik Richter
f410ee3dba
simplify folder resolver
2015-11-02 15:06:48 +01:00
Dominik Richter
22bf549e0b
api: change library loading from /lib -> /libraries
2015-11-02 15:06:48 +01:00
Christoph Hartmann
d470803c37
improve command.exist? for more operating systems
2015-11-02 12:06:42 +01:00
Dominik Richter
13a6538acf
temporarily disable rubocop metric on profile
2015-11-02 10:06:35 +01:00
Christoph Hartmann
ea47c5add8
use new internal structure for inspect check
2015-11-02 09:59:15 +01:00
Christoph Hartmann
4a676f55c3
remove dup method users, use usernames, fix example
2015-11-02 00:22:08 +01:00
Dominik Richter
d328919370
simplify resiliance
2015-11-01 23:48:29 +01:00
Christoph Hartmann
cdab39079a
improvement: make os_env command more robust
2015-11-01 23:22:01 +01:00
Christoph Hartmann
1be689b77e
remove exit_status and only call split if we have a string
2015-11-01 23:21:08 +01:00
Christoph Hartmann
324fa4881f
do not offer stderr method via os_env
2015-11-01 23:14:12 +01:00
Christoph Hartmann
1941606b9e
deactivate group policy for now
2015-11-01 22:39:30 +01:00
Christoph Hartmann
9e53556379
fix os_env example
2015-10-31 11:55:10 +01:00
Dominik Richter
24451469ca
api: method_missing doesnt resolve hashmaps
...
Since #its has its(pun) own way of handling calls with a dot-notation, the full call is never passed to the resource. For example:
```ruby
describe json('file') do
its('a.b.c') { should eq 123 }
end
```
This is resolved to calling `json('file').a.b.c` and thus doesnt work as an intended `json('file').send('a.b.c'). For now use
regular its-behavior of calling `json('file').params ... its(%w{a b c}) { should ... }`.
Its' behavior must be improved.
2015-10-27 16:35:43 +01:00
Dominik Richter
8daf8dfa86
lint
2015-10-27 03:07:38 +01:00
Dominik Richter
59a8ca6639
construct profile in legacy structure
...
This is a temporary commit to achieve compliance with other components. It will be overturned before the final release.
2015-10-27 02:29:11 +01:00
Dominik Richter
5720aa3294
bugfix: detect filename+line for all example blocks
2015-10-27 02:29:11 +01:00
Dominik Richter
32e5e3ec29
move to symbols-based fields in profile params
2015-10-27 02:29:11 +01:00
Christoph Hartmann
cdb30c356f
add apache base config
2015-10-27 02:20:29 +01:00
Dominik Richter
b280203d03
consistently set an empty logger in non-verbose mode
2015-10-26 18:27:46 +01:00
Dominik Richter
471a723b83
restore parse_passwd_line to be public, thanks @chris-rock
2015-10-26 17:16:05 +01:00
Dominik Richter
d5973d1189
bugfix: harmonize postgres session handling
2015-10-26 16:59:46 +01:00
Dominik Richter
e76b83a24e
bugfix: mysql conf and session handling
2015-10-26 16:58:42 +01:00
Dominik Richter
5485111907
bugfix: support missing conf path for postgres_conf
2015-10-26 16:50:49 +01:00
Dominik Richter
414bf6b1fa
bugfix: handle empty processes result
2015-10-26 16:49:26 +01:00
Dominik Richter
ec6d1e680a
support postgres_session resource
2015-10-26 16:47:45 +01:00
Dominik Richter
ee0e9fc7c1
mock outer dsl attributes method
2015-10-26 16:44:20 +01:00
Dominik Richter
1613add894
bugfix: group policy needs a name for init
2015-10-26 16:40:21 +01:00
Dominik Richter
6dc0a3b638
rename inetd_config -> inetd_conf
...
be consistent with the filename
2015-10-26 16:21:51 +01:00
Dominik Richter
0ac3c412aa
bugfix: support empty content in simpleconfig
2015-10-26 16:16:42 +01:00
Dominik Richter
03fe892899
bugfix: handle empty parseconfig options
2015-10-26 16:13:48 +01:00
Dominik Richter
69be6acae8
bugfix: fail on missing access to /etc/group
2015-10-26 16:11:28 +01:00
Dominik Richter
95242bf9c2
add content parser tests
2015-10-26 15:50:57 +01:00
Dominik Richter
9d1dcef469
bugfix: remove '/' prefix from folder
2015-10-26 13:06:44 +01:00
Dominik Richter
090281fb0b
lint
2015-10-26 12:34:35 +01:00
Dominik Richter
b58a4b3f43
rename vulcanosec -> inspec
2015-10-26 12:34:15 +01:00
Christoph Hartmann
4bcfc76f27
simplify auditd name
2015-10-26 12:15:29 +01:00
Dominik Richter
05eb8df687
lint
2015-10-26 12:09:43 +01:00
Dominik Richter
76f7282e2c
add yard header to profile#check
2015-10-26 12:07:03 +01:00
Dominik Richter
83082b2e7b
feature: bring back profile check
2015-10-26 11:58:41 +01:00
Dominik Richter
b0bef37b06
support chef audit folder structure
2015-10-26 11:53:09 +01:00
Dominik Richter
9c1f258707
dont fail on missing rule body source
2015-10-26 11:46:43 +01:00
Dominik Richter
9703f3c747
bugfix: provide source code for rules in json
2015-10-26 11:46:43 +01:00
Dominik Richter
80b8b319d9
api: auto-include library files for inspec profile
2015-10-26 11:46:43 +01:00
Dominik Richter
07e3d749be
skip empty file content
2015-10-26 11:46:43 +01:00
Dominik Richter
8f0c9c890e
bugfix: fix path prefix in folder resolution
2015-10-26 11:46:43 +01:00
Dominik Richter
73b7b3c99a
bugfix: point to metadata.rb instead of vmetadata.rb
2015-10-26 11:46:43 +01:00
Dominik Richter
45f7057f30
lint
2015-10-26 04:39:16 +01:00
Dominik Richter
c326e08739
remove old verify code
2015-10-26 00:35:18 +01:00
Dominik Richter
93b4db01ca
add rules to profile information
2015-10-26 00:35:18 +01:00
Dominik Richter
a62ce0e14b
create json from profile metadata
2015-10-26 00:35:18 +01:00
Christoph Hartmann
24e23f3db4
bugfix: fix regular expression for apt
2015-10-25 22:32:50 +01:00
Christoph Hartmann
b7777d265e
improve fail warning. thanks @arlimus
2015-10-25 21:47:27 +01:00
Christoph Hartmann
d75e16546c
improvement: file resource check precondition and add file permission check
2015-10-25 21:35:35 +01:00
Christoph Hartmann
98d5a40686
generalize matcher
2015-10-25 21:33:36 +01:00
Christoph Hartmann
3c76ed6e37
integration test for file
2015-10-24 11:15:53 +02:00
Christoph Hartmann
25783ea283
fail with warning, if users use contain matcher
2015-10-24 11:15:53 +02:00
Christoph Hartmann
a407e3b6ce
bugfix: parse " with apt urls
2015-10-24 11:15:52 +02:00
Christoph Hartmann
0bbb70302d
bugfix: fix kernel_module in combination with CentOS 5 & sudo
2015-10-23 13:57:37 +02:00
Christoph Hartmann
66a2be7f33
improvement: add complete linux support for kernel_module
2015-10-23 13:57:03 +02:00
Christoph Hartmann
4574c07954
improvement: support all linux os for kernel_parameter
2015-10-23 13:30:14 +02:00
Christoph Hartmann
c177a511fa
add opensuse support for user resource
2015-10-23 12:14:00 +02:00
Christoph Hartmann
20afebc1a6
improvement: support package for opensuse
2015-10-23 12:14:00 +02:00
Christoph Hartmann
022ec31529
bugfix: rpm does not return exit code if package is not available, work around that
2015-10-23 12:14:00 +02:00
Christoph Hartmann
86bdb9903b
bugfix: only return true and false for package installed?
2015-10-23 12:14:00 +02:00
Christoph Hartmann
773bd0e971
improvement: add opensuse support for service resource
2015-10-23 12:14:00 +02:00
Christoph Hartmann
28c497a492
bugfix: support for sudo and service on debian
2015-10-23 12:14:00 +02:00
Christoph Hartmann
807ee03e8b
bugfix: fix regular expression to detect services on freebsd
2015-10-23 12:14:00 +02:00
Christoph Hartmann
eca6476ced
bugfix: use absolute path for SysV service to work well with sudo on CentOS 5
2015-10-23 12:14:00 +02:00
Christoph Hartmann
836697585b
bugfix: Ubuntu 10.04 initctl does not support show-config
2015-10-23 12:14:00 +02:00
Christoph Hartmann
579e465b88
0.8.0
2015-10-21 21:49:07 +02:00
Christoph Hartmann
e3cc942f60
bugfix: always return false instead of nil in case a service could not be determined
2015-10-21 20:54:46 +02:00
Christoph Hartmann
3d2bca2eaf
add centos support to service resource
2015-10-21 20:54:46 +02:00
Christoph Hartmann
571de7fc68
fix typos in os skip message
2015-10-21 20:54:46 +02:00
Christoph Hartmann
17279f9ef8
add centos support
2015-10-21 20:54:46 +02:00
Christoph Hartmann
20bbb4c960
add more usage headers
2015-10-21 19:30:01 +02:00
Christoph Hartmann
035e39ee8c
simplify yum implementation
2015-10-20 19:57:00 +02:00
Dominik Richter
cea48ceb5a
remove leftover comments
2015-10-19 12:07:14 +02:00
Dominik Richter
20dae26925
split methods for processing rules and checks after loading
2015-10-19 09:49:40 +02:00
Dominik Richter
08707eb2d2
temporarily attach the dsl to all example objects
...
TODO: Remove this!! It is very dangerous to do this here. The goal of this is to make the audit DSL available to all describe blocks. Right now, these blocks are executed outside the scope of this run, thus not gaining ony of the DSL pieces. To circumvent this, the full DSL is attached to the examples
2015-10-18 19:50:12 +02:00
Dominik Richter
d66f874e1c
feature: support expect keyword in rules
2015-10-18 19:14:22 +02:00
Dominik Richter
2cebd3fc31
allow loading without file and line info
...
i.e. dynamic loading only
2015-10-18 19:11:56 +02:00
Dominik Richter
c6cc45c28e
bugfix: add rspec core dsl to profile context
2015-10-18 19:11:56 +02:00
Christoph Hartmann
89f003f61b
bugfix: add missing uri import
2015-10-17 19:33:52 +02:00
Dominik Richter
c01e1f2c74
lint: make sure variables are defined
2015-10-17 00:03:41 +02:00
Dominik Richter
df07e768d0
lint: replace obsolete URI.regexp
2015-10-17 00:03:37 +02:00
Dominik Richter
9224d5db58
bugfix: support ruby 1.9.3
2015-10-15 23:28:37 +02:00
Dominik Richter
56b88cba1d
create factory for backend creation
2015-10-15 22:42:06 +02:00
Dominik Richter
6a51a5be00
remove rake tasks for runner tests
...
they are now found in train
2015-10-15 14:36:34 +02:00
Dominik Richter
132019a6d9
move backend creation to profile context
...
keeping it in the runner will create conflicts with rspec runners
2015-10-14 23:44:15 +02:00
Dominik Richter
be614e9056
migrate backend to Train project
2015-10-14 23:13:49 +02:00
Christoph Hartmann
693af465f6
fix lint issue
2015-10-12 13:23:11 +02:00
Christoph Hartmann
03f07e1a3e
add to_s methods to resources, fixes #98
2015-10-12 13:01:58 +02:00
Christoph Hartmann
c5924b697c
0.7.0
2015-10-12 12:11:53 +02:00