Commit graph

1068 commits

Author SHA1 Message Date
Christoph Hartmann
d470803c37 improve command.exist? for more operating systems 2015-11-02 12:06:42 +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
Christoph Hartmann
cdb30c356f add apache base config 2015-10-27 02:20:29 +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
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
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
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
45f7057f30 lint 2015-10-26 04:39:16 +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
3c76ed6e37 integration test for file 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
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
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
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
c1f105bab8 improve iptables resource 2015-10-12 10:34:24 +02:00
Christoph Hartmann
ac4f0de673 simple iptables implementation 2015-10-12 10:34:24 +02:00
Christoph Hartmann
6af966e08b bugfix: return function if data is already cached 2015-10-12 00:18:58 +02:00
Christoph Hartmann
60618723ef fix typo 2015-10-10 23:29:44 +02:00
Christoph Hartmann
abb10db376 add apt implementation 2015-10-10 23:28:03 +02:00
Christoph Hartmann
f4ed4cf7f5 optimize ping on windows 2015-10-09 19:21:12 +02:00
Christoph Hartmann
38ac1ea931 host resource for linux and windows 2015-10-09 19:10:10 +02:00
Christoph Hartmann
6f1181bc27 add windows support for bridge 2015-10-09 15:26:31 +02:00
Christoph Hartmann
337cd6aff8 implement bridge for linux 2015-10-09 15:06:10 +02:00
Christoph Hartmann
9d92abf524 add windows support to network adapter 2015-10-08 13:01:50 +02:00
Christoph Hartmann
153c670952 introduce better network interface abstraction, add test cases 2015-10-08 13:01:50 +02:00
Christoph Hartmann
932b34e8de externalize linux handling in separate provider 2015-10-08 13:01:50 +02:00
Christoph Hartmann
4223d5b1ef implement interface for linux 2015-10-08 13:01:50 +02:00
Dominik Richter
285c83ba06 lint: dont use undefined vars
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-08 11:27:18 +02:00
Christoph Hartmann
93df1656b5 simplify os detection 2015-10-07 18:46:24 +02:00
Christoph Hartmann
2499fc72f9 improve etc_group parser, keep parsed data internally instead of raw data 2015-10-07 18:45:08 +02:00
Christoph Hartmann
d2997400df add author information 2015-10-07 18:45:08 +02:00
Christoph Hartmann
94662bed12 improvement: identify groups case insensitive 2015-10-07 18:45:08 +02:00
Christoph Hartmann
b7739a84be implement group resource for windows 2015-10-07 18:45:08 +02:00
Christoph Hartmann
9fb51b44a2 modify etc_group to return complete group info 2015-10-07 18:45:08 +02:00
Christoph Hartmann
537728b41b test case where group or os is not available 2015-10-07 18:45:08 +02:00
Christoph Hartmann
8c5453a4da implement group resource for linux/unix 2015-10-07 18:45:07 +02:00
Christoph Hartmann
e57505739e improvement: return gids in etc_group as integer 2015-10-07 18:45:07 +02:00
Christoph Hartmann
3e9526d992 improvement: run etc_group on unix only 2015-10-07 18:45:07 +02:00
Christoph Hartmann
028e7f977e filter comments in /etc/group 2015-10-07 18:45:07 +02:00
Christoph Hartmann
55e09963c8 improvement: expose os detector function in os resource 2015-10-07 18:28:34 +02:00
Christoph Hartmann
c85d042f53 remove inherited methods 2015-10-07 13:15:04 +02:00
Christoph Hartmann
9295a60913 add test case for script resource 2015-10-07 13:13:37 +02:00
Christoph Hartmann
05bdb44bf2 switch user resource to use new script resource 2015-10-07 13:05:04 +02:00
Christoph Hartmann
67f6ae5be2 implement run script resource for windows 2015-10-07 13:04:40 +02:00
Christoph Hartmann
8fff2ee989 add author header 2015-10-06 18:55:44 +02:00
Dominik Richter
3439a34d16 bugfix: expose path in file resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-06 14:12:32 +02:00
Dominik Richter
5662bb7383 migrate transport runner tests 2015-10-06 00:06:13 +02:00
Dominik Richter
56d8379fc9 move all resources to use the command resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-05 18:54:47 +02:00
Dominik Richter
76572df292 api: wrap transport and add resources to backend
What is currently available as `vulcano` inside resources (e.g. to call `vulcano.file(...)`, is now wrapped inside `vulcano.backend`. All other resources are now added to `vulcano.<RESOURCE>`, e.g. `vulcano.user`.
2015-10-05 18:48:07 +02:00
Christoph Hartmann
d82eeb045e bugfix: use account instead of user, otherwise we get a response that falsifies the existence of a user 2015-10-05 14:57:09 +02:00
Christoph Hartmann
c5fa98c8eb bugfix: deal with non-array return values 2015-10-05 14:55:49 +02:00
Christoph Hartmann
bb0734f8f3 cache requests 2015-10-05 11:50:49 +02:00
Christoph Hartmann
6b2064ad89 return password expiry information for linux 2015-10-05 11:50:49 +02:00
Christoph Hartmann
5dfb54e389 improve error case handling in user resource 2015-10-05 11:50:49 +02:00
Christoph Hartmann
e0b66b1380 bugfix: shell and home detection for freebsd 2015-10-05 11:50:49 +02:00
Christoph Hartmann
cef7f7e785 implement home and shell for user resource on linux and freebsd 2015-10-05 11:50:49 +02:00
Christoph Hartmann
7bf78059d8 remove dub functions from passwd 2015-10-05 11:50:49 +02:00
Christoph Hartmann
57676d88a1 externalize passwd parser 2015-10-05 11:42:20 +02:00
Christoph Hartmann
535fc10b5d rewrite passwd resource to extract parser 2015-10-05 11:42:20 +02:00
Christoph Hartmann
3ff4a5d769 improve verification that a user exists 2015-10-05 11:42:20 +02:00
Christoph Hartmann
70a57de90c windows support for user resource 2015-10-05 11:42:20 +02:00
Christoph Hartmann
77f48cfcf3 move line-split to simple config 2015-10-05 11:42:20 +02:00
Christoph Hartmann
ceadaaca4a add basic support for freebsd 2015-10-05 11:42:19 +02:00
Christoph Hartmann
4c43c88778 implement basic user resource for linux and mac 2015-10-05 11:42:19 +02:00
Christoph Hartmann
b40ab55710 fix: rubucop lint 2015-10-03 14:02:34 +02:00
Christoph Hartmann
0a7dfce1e6 add author 2015-10-03 13:27:20 +02:00
Christoph Hartmann
47e0b38a10 bugfix: catch case where we retrieve an arrray 2015-10-03 13:27:20 +02:00
Christoph Hartmann
f387dbbb9e improvement: skip oneget if it is not running on windows 2015-10-03 13:27:20 +02:00
Delivery Server
92b82a3cbf Merged change 24637cb4-1d10-4e45-b683-27d9e1ca9a4f
From review branch _reviews/master/bugfix-gem/3 into master

Signed-off-by: drichter <drichter@chef.io>
2015-10-02 15:37:59 +00:00
Christoph Hartmann
1eed6bcf11 use separate method to determine the pip command 2015-10-01 23:29:31 +02:00
Christoph Hartmann
54603e9545 optimize pip resource for windows 2015-10-01 23:26:56 +02:00
Christoph Hartmann
2a5736b8f9 bugfix: fix gem to string 2015-10-01 23:25:46 +02:00
Dominik Richter
ae10fefd15 fix warnings 2015-10-01 16:43:36 +02:00
Dominik Richter
aa4593ff71 replace parseconfig with simpleconfig
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 12:19:55 +02:00
Dominik Richter
dd46027195 bugfix: require yaml in resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 01:48:59 +02:00
Dominik Richter
1efb61ab80 lint service
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-26 12:25:02 +02:00
Dominik Richter
d28c5a85fe lint mysql
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-26 12:25:02 +02:00
Dominik Richter
9885e7683b lint port resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-26 12:25:02 +02:00
Christoph Hartmann
ea75b361a7 bugfix: systemd is default on debian 8 2015-09-25 12:58:17 +02:00
Christoph Hartmann
007d292890 rewrite systemv service implementation, read enabled services from rc 2015-09-25 12:58:03 +02:00
Christoph Hartmann
11ffdeddad improvement: return nil, if no description for service is available 2015-09-25 12:54:08 +02:00
Christoph Hartmann
9ac2e6e00b improvement: use onestatus instead of status for freebsd, return nil as service description for freebsd 2015-09-25 12:51:25 +02:00
Christoph Hartmann
d5d517af0a improve service handling for mac and add unit tests 2015-09-25 12:51:12 +02:00
Christoph Hartmann
36ad0dd5a0 add arch linux support for service resource 2015-09-25 12:48:57 +02:00
Christoph Hartmann
f302ca7087 bugfix: fix regular expression to parse systemd results 2015-09-25 12:48:38 +02:00
Christoph Hartmann
cb3d170ce6 add centos 7 unit mock for service resource 2015-09-25 12:48:21 +02:00
Christoph Hartmann
2a3c3270b3 bugfix: use volcano.os instead of os 2015-09-25 11:52:33 +02:00
Christoph Hartmann
3e16791f52 bugfix: catch case in service resource, where the OS is not supported 2015-09-25 11:52:33 +02:00
Christoph Hartmann
5151f42d7d add package unit test for unsupported os 2015-09-23 23:30:31 +02:00
Christoph Hartmann
af0591ab70 fix lint 2015-09-23 23:30:31 +02:00
Christoph Hartmann
a9c96dfbab fix: resolve unit test errors for arch and centos 2015-09-23 23:30:31 +02:00
Christoph Hartmann
968ed7a576 add todos for windows 2015-09-23 23:15:40 +02:00
Christoph Hartmann
476ac63036 return more detailed protocol information: tcp, udp, tcp6, udp6 2015-09-23 23:15:40 +02:00
Christoph Hartmann
563785d8a6 return arrays, since a port may run on multiple interfaces 2015-09-23 23:15:40 +02:00
Christoph Hartmann
a7b0520289 simplify check if port is available 2015-09-23 23:15:40 +02:00
Dominik Richter
a3e5984763 simplify a few calls
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-23 23:15:40 +02:00
Christoph Hartmann
d889f0b0b1 port resource support for FreeBSD 2015-09-23 23:08:54 +02:00
Christoph Hartmann
b47ec509fd port resource support for Windows 2015-09-23 23:08:19 +02:00
Christoph Hartmann
4eeb84945c port resource support for MacOS 2015-09-23 23:07:07 +02:00
Christoph Hartmann
c187230336 implement port resource for linux 2015-09-23 18:12:51 +02:00
Dominik Richter
fc14706a0a expose link_path in file resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Christoph Hartmann
6b3365682d fix comment 2015-09-22 02:27:04 +02:00
Christoph Hartmann
7ccc8baa37 improvement: switch back from OpenStruct to Hash 2015-09-22 02:27:04 +02:00
Christoph Hartmann
cf3dddf1a3 add csv support 2015-09-22 02:27:04 +02:00
Christoph Hartmann
b9d4fc6d8c add yaml resource 2015-09-22 02:27:04 +02:00
Christoph Hartmann
0e43d4ca6a add json resource 2015-09-22 02:27:04 +02:00
Dominik Richter
6be9c6822d fix issue with premature matching
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:04 +02:00
Christoph Hartmann
42a989606b implement kernel_parameter resource 2015-09-22 02:27:04 +02:00
Christoph Hartmann
ef9471e86c implement kernel_module resource 2015-09-22 02:27:04 +02:00
Christoph Hartmann
8b6fccee92 implement windows_feature resource 2015-09-22 02:27:03 +02:00
Dominik Richter
bb18ce52e2 update function+test calls from exists? -> exist? 2015-09-22 02:27:03 +02:00
Dominik Richter
366bc44d0d rename command().exists? -> command().exist?
This is in line with Ruby 2.1 changes in renaming File and Dir exists? to exist?
See previous commit

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +02:00
Dominik Richter
0b7eb60028 File.exists? is deprecated in ruby 2.1
See:
http://ruby-doc.org/core-2.1.0/File.html#method-c-exists-3F

Same for Dir:
http://ruby-doc.org/core-2.1.0/Dir.html#method-c-exists-3F

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +02:00
Christoph Hartmann
78fea3d3a2 support package for windows 2015-09-22 02:27:03 +02:00
Christoph Hartmann
f9501577e4 improve code style 2015-09-22 02:27:03 +02:00
Christoph Hartmann
5019664d4d bugfix: catch cases, where no service is available 2015-09-22 02:27:03 +02:00
Dominik Richter
ca753cdb83 feature: add os resource 2015-09-22 02:27:02 +02:00
Christoph Hartmann
37783385d4 implement service for FreeBSD 2015-09-22 02:27:02 +02:00
Dominik Richter
4965bfd36d make installed? always return true/false
Dont return nil als a falsy result.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
38a77efb4a fix failing tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
bef9cbf3e7 prevent yum repo shortname matching to nil
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
4d7c11b980 lazy eval ssh config params
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
dcc790b8a9 simplify nested params retrieval
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
55a26cfba7 align pip resource with info handling
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
10926935e2 align oneget resource with info handling
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
f395ebf6df lazy eval ntp conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
508a6889d1 align npm resource with info handling
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
fc9764aa36 lazy eval login.defs
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
3508219428 lazy eval limits.conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
6a6c1fd7c8 lazy eval inetd conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
075313b10e cache gem package results
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
bfad1e1509 lazy eval auditd conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Christoph Hartmann
341a4ba98d improvement: simplify readability of nil checks 2015-09-22 02:27:01 +02:00
Christoph Hartmann
db81929dd7 minor style improvement 2015-09-22 02:27:01 +02:00
Christoph Hartmann
c081cfac82 improve reliability of method_missing 2015-09-22 02:27:01 +02:00
Christoph Hartmann
05dd53b5b4 improvement: skip package resource if not supported on OS 2015-09-22 02:27:00 +02:00
Christoph Hartmann
a88304d030 remove method missing for yum resource 2015-09-22 02:27:00 +02:00
Christoph Hartmann
046f3fe9e4 fix robocop issues 2015-09-22 02:27:00 +02:00
Christoph Hartmann
8113df6d44 bugfix: fix sysv implementation 2015-09-22 02:27:00 +02:00
Christoph Hartmann
2e46e0781a bugfix: fix initctl matcher to detect enabled services 2015-09-22 02:27:00 +02:00
Christoph Hartmann
7806951051 add fedora support 2015-09-22 02:27:00 +02:00
Christoph Hartmann
2484623220 add comments 2015-09-22 02:26:59 +02:00
Christoph Hartmann
d2e110e183 add debian support and improve regex 2015-09-22 02:26:59 +02:00
Christoph Hartmann
7239c7ced5 add service implementation for systemv 2015-09-22 02:26:59 +02:00
Christoph Hartmann
eb8c9411c7 remove comments 2015-09-22 02:26:59 +02:00
Christoph Hartmann
05e95477e3 add support for macos in service resource 2015-09-22 02:26:59 +02:00
Christoph Hartmann
6b07372bb9 bugfix: handle nil for service info 2015-09-22 02:26:59 +02:00
Christoph Hartmann
1b5e6fa7af select init system by os version for now 2015-09-22 02:26:59 +02:00
Christoph Hartmann
4479001763 add upstart implementation for service resource 2015-09-22 02:26:59 +02:00
Christoph Hartmann
b8d0edecfb add systemd implementation for service 2015-09-22 02:26:59 +02:00
Christoph Hartmann
204e6f5021 skip resource, if os is not supported 2015-09-22 02:26:59 +02:00
Christoph Hartmann
9da4e7674e use volcano.os 2015-09-22 02:26:59 +02:00
Christoph Hartmann
9aa0b1cf4a rename service_info to info 2015-09-22 02:26:59 +02:00
Christoph Hartmann
21040b9b03 implement service resource for windows 2015-09-22 02:26:59 +02:00
Christoph Hartmann
dfb330e7e8 use backend os detection in resources 2015-09-22 02:17:28 +02:00
Christoph Hartmann
1bf94016a7 rename Command to Cmd 2015-09-22 02:17:28 +02:00
Christoph Hartmann
33f9dd8e87 add oneget resource 2015-09-22 02:17:21 +02:00
Dominik Richter
2db06783fb update find_files for all other resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:43 +02:00
Dominik Richter
165c08799f bugfix: deep merge mysql conf parameters
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:43 +02:00
Dominik Richter
58fa9bc6c7 update mysql_conf to work with new find_files
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
486c5fde1c fix code complexity lint
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
0d5ee00ac5 reduce branch size complexity mysql (lint)
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
470c2ef920 wrap up core resource linting
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
903b9642e4 lint resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Christoph Hartmann
238f1b2016 add pip resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
bdb859b730 add npm resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
0171b2e2f2 add gem resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
9783751741 implement package resource 2015-09-22 02:15:41 +02:00
Christoph Hartmann
a7efec310b implement yum resource 2015-09-22 01:10:56 +02:00
Christoph Hartmann
7e9eb2920d add usage header for audit resource 2015-09-21 14:12:34 +02:00
Christoph Hartmann
62d0b217f9 optimize comments for audit_policy resource 2015-09-21 14:09:43 +02:00
Christoph Hartmann
e57e5f3fd6 bugfix: use new volcano backend for registry key 2015-09-21 14:09:10 +02:00
Christoph Hartmann
92ff33cbba improvement: use separate object to hold filter state, optimize users output 2015-09-21 14:07:58 +02:00
Christoph Hartmann
d40ab9a9ad bugfix: set default path for inetd_conf 2015-09-21 14:06:01 +02:00
Christoph Hartmann
0d7d01efbd bugfix: set default path for limits.conf 2015-09-21 14:04:02 +02:00
Christoph Hartmann
797d24c14a add login_def resource unit test 2015-09-21 14:01:51 +02:00
Christoph Hartmann
9358ac3035 rename env.rb to os_env.rb 2015-09-21 13:58:47 +02:00
Christoph Hartmann
672f03a0dd improve output of ntp resource for single value arrays 2015-09-21 13:58:03 +02:00
Christoph Hartmann
7295e4c16f improve handling on uid data view 2015-09-21 13:56:08 +02:00
Christoph Hartmann
852e5ae627 improvement: remove class variables from security policy implementation 2015-09-21 13:52:49 +02:00
Christoph Hartmann
53eb3b6990 bugfix: escape string before regex, fix regular expression to identify key 2015-09-21 13:52:33 +02:00
Christoph Hartmann
e9e24a6bd5 use new volcano backend for security policy 2015-09-21 13:51:27 +02:00
Christoph Hartmann
cdf15b9dd1 bugfix: support multiple values in ssh config like 'HostKey', improve readability by extracting the first value from array, if we have only one value 2015-09-21 13:43:09 +02:00
Christoph Hartmann
0e8651bf26 fix rubocop issues 2015-09-05 16:07:54 +02:00
Christoph Hartmann
36c9de7529 more rubocop fixes 2015-09-04 09:59:30 +02:00
Christoph Hartmann
bbbb8380ca replace raise with fail 2015-09-03 23:24:42 +02:00
Christoph Hartmann
556bb5a0f0 remove empty lines 2015-09-03 23:20:53 +02:00
Christoph Hartmann
1773d20178 use single quotes 2015-09-03 23:18:28 +02:00
Christoph Hartmann
5c137a7ab1 remove redundant return 2015-09-03 20:45:37 +02:00
Christoph Hartmann
349d5bf9f1 harmonize method definition style 2015-09-03 20:43:58 +02:00
Christoph Hartmann
7bdcc00e94 add utf-8 header 2015-09-03 20:36:46 +02:00
Christoph Hartmann
5612752b82 use single quotes 2015-09-03 20:35:23 +02:00
Christoph Hartmann
7db6941219 feature: add bond resource implementation 2015-09-03 17:34:11 +02:00
Dominik Richter
c9fcb2913a complete all file tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 16:17:52 +02:00
Dominik Richter
29a143a67f remove file ctime
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 15:43:30 +02:00
Dominik Richter
e08787d14e move file interface + helpers to backend plugin
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-02 00:50:52 +02:00
Dominik Richter
f60b7580d5 complete specinfra file backend
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-01 11:48:50 +02:00
Dominik Richter
a64597594e minor bugfixes
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-01 11:11:34 +02:00
Dominik Richter
601abe2579 rename backend reference @vulcano -> vulcano
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 19:33:15 -07:00
Dominik Richter
b2e031c056 start serverspec migration
This project is inspired by Serverspec and all the wonderful contributions that went into it. Thank you all so much! We have used Serverspec as our audit base and have now a slightly different perspective. We hope to continue the spirit on this path. Hopefully both projects will find their way together.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 17:36:05 -07:00
Dominik Richter
d292ed6ea5 migrate directory resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 17:24:34 -07:00
Dominik Richter
e5daa52064 fix ssh config path
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 17:18:37 -07:00
Dominik Richter
1bbe67682e start migrating file resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 17:14:17 -07:00
Dominik Richter
50a5803427 rename is_file? -> file?
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 17:13:53 -07:00
Dominik Richter
84102b89de rename contents -> content
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 02:10:36 -07:00
Dominik Richter
5a8bcf2b93 migrate file resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-29 00:44:16 -07:00
Dominik Richter
1d805aca2c migrate group policy
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 16:09:35 -07:00
Dominik Richter
554accdedc reimplement command resource
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 16:08:24 -07:00
Dominik Richter
e0459c4116 migrate all of audit
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 16:04:52 -07:00
Dominik Richter
2a8b8d3394 migrate env and apache conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 13:02:18 -07:00
Dominik Richter
dddc9daed0 migrated inetd config and etc group
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:52:59 -07:00
Dominik Richter
2103a4485b migrate limits and login defs
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:47:37 -07:00
Dominik Richter
8004d6f129 migrate all mysql resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:41:48 -07:00
Dominik Richter
1a45f32f0b migrated all postgres resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:37:03 -07:00
Dominik Richter
83d846ac7f migrate ntp conf and parse_config
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:32:17 -07:00
Dominik Richter
d9d67e943a migrate passwd and processes
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 12:27:35 -07:00
Dominik Richter
dc0f61a0ef migrate registry_key + security_policy
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 11:52:22 -07:00
Dominik Richter
3bf8037638 move to a simpler plugin structure
This has been inspired in its calling structure by the wonderful work done in Vagrant. Kudos to all contributors!

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-28 10:10:03 -07:00
Dominik Richter
9e7ea1ef5d move ssh_conf to new structure
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-27 20:02:38 -07:00
Dominik Richter
7e1f9b8a15 move resources lib
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-08-27 13:58:07 -07:00
Dominik Richter
5e8af49561 runtime bugfixes
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 23:39:43 -07:00
Dominik Richter
61f5f95147 make sure etc group values in where clause are strings
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:49:55 -07:00
Dominik Richter
b72ba08c06 trip whitespace
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:37:58 -07:00
Dominik Richter
a48d032cec double-check if data is read from conf apache/postgres/mysql
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:35:18 -07:00
Dominik Richter
df8be769af skip apache conf if file doesn't exist
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:28:32 -07:00
Dominik Richter
9621b1c9e9 skip postgres+mysql conf if file doesn't exist
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:27:34 -07:00
Dominik Richter
93065b9dda use FindFiles for postgres conf
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:17:07 -07:00
Dominik Richter
c733a577da improvement: unify FindFiles
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 20:11:01 -07:00
Dominik Richter
e9ee17c176 bugfix: find included files on remote host
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 19:50:49 -07:00
Dominik Richter
178ca83a4b specify inetd_conf path
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 19:34:24 -07:00
Dominik Richter
07edef95ad flatten users of groups
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 18:56:14 -07:00
Dominik Richter
3682a8279d make sure to get conditions as symbols
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 18:49:05 -07:00
Dominik Richter
e0b0b52af3 feature: etc_group with where-function overhaul
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 18:42:05 -07:00
Dominik Richter
53112f4156 move resource methods to respective library files
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 17:40:08 -07:00
Dominik Richter
42c3f95b41 move local parseconfig resources to library file
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 17:25:27 -07:00
Dominik Richter
6faf07aa7d rename parse_config back to parse_config_file
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-02 17:24:15 -07:00
Dominik Richter
1344fba629 configurable limits_conf path
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:52:55 +02:00
Dominik Richter
70a6130335 move ssh_config + sshd_config with paths to the resource file
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:43:38 +02:00
Dominik Richter
cc28749adf configurable paths for postgres + mysql confs
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:38:52 +02:00
Dominik Richter
700e2bab26 feature: add mysql resource
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:31:57 +02:00
Dominik Richter
f2fed3fa6d api: change default of multiple_values true -> false in SimpleConfig
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:23:02 +02:00
Dominik Richter
9bf968838c rename conf_ssh -> ssh_config
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:22:25 +02:00
Dominik Richter
0c5a28431d feature: postgres information based on OS
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-08-01 09:21:32 +02:00
Dominik Richter
f51e89d3b1 shorten mysql and postgres session resources
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-07-30 18:28:57 +02:00
Christoph Hartmann
378a98797e rename config_file resource 2015-07-27 23:26:10 +02:00
Christoph Hartmann
44f5ecef77 add apache config parser 2015-07-27 23:26:10 +02:00
Christoph Hartmann
bd6a294ac5 bugfix: add toString method for resources 2015-07-26 22:45:44 +02:00
Christoph Hartmann
345d7fb5cb improvement: parse config can be configured 2015-07-26 22:45:18 +02:00
Christoph Hartmann
d926a67596 feature: resource for ntp configuration 2015-07-26 22:44:33 +02:00
Christoph Hartmann
24e9210160 feature: resources for audit daemon 2015-07-26 22:44:01 +02:00
Christoph Hartmann
34b8ab5f2a refactor audit policy 2015-07-26 22:43:24 +02:00
Christoph Hartmann
32c4575642 add inetd resource 2015-07-26 12:53:29 +02:00
Christoph Hartmann
17476fd634 add limits.conf resource 2015-07-26 12:30:46 +02:00
Christoph Hartmann
8e16decccd refactor types 2015-07-26 12:30:12 +02:00
Christoph Hartmann
5d4e44872c remove puts 2015-07-16 01:51:26 +02:00
Christoph Hartmann
fd4bb5f467 bugfix: fix id 2015-07-16 01:40:37 +02:00
Christoph Hartmann
0268d44052 add types 2015-07-16 01:09:54 +02:00
Christoph Hartmann
db8ff02313 add logindef and parse_config type 2015-07-15 16:33:39 +02:00
Christoph Hartmann
018601480d add etc_group implementation 2015-07-15 15:16:10 +02:00
Christoph Hartmann
dc94f2c2b5 add description for passwd file format 2015-07-15 15:15:53 +02:00
Christoph Hartmann
37f0ea7d6a update copyright header 2015-07-15 15:15:18 +02:00
Christoph Hartmann
6ab07121de add line feed 2015-07-15 00:50:42 +02:00
Christoph Hartmann
dbbad50c09 add passwd extraction of passwords 2015-07-15 00:50:19 +02:00
Christoph Hartmann
8c17ab29a5 add passwd support 2015-07-15 00:47:17 +02:00
Christoph Hartmann
4ff1687f6e add env support 2015-07-15 00:47:04 +02:00
Christoph Hartmann
f165e51e1f return nil, if we haven't received a value 2015-06-27 21:29:57 +02:00
Dominik Richter
3440f6f69e bugfix scope
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 18:21:09 +02:00
Dominik Richter
8d0976a4cc bugfix: scoping for ubuntu's ruby version
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 17:57:07 +02:00
Dominik Richter
e832a1f2c8 bugfix: typo
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 17:27:05 +02:00
Dominik Richter
6b8cd1078a bugfix: mysql dynamic describe
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 16:33:22 +02:00
Dominik Richter
b3495e9fc5 bugfix: mysql resouce skipping and checking
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 16:18:40 +02:00
Dominik Richter
40ed9799b7 feature: mysql config resource updated
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 15:51:44 +02:00
Dominik Richter
232de91d9a feature: mysql resource with debian login + skipping policy
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-22 15:24:35 +02:00
Dominik Richter
cb3e067a1f feature: helper method to check if a default command exists
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-21 18:19:04 +02:00
Dominik Richter
7a721dba7e feature: skip ssh config if file isn't readable/found
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-21 16:33:08 +02:00
Dominik Richter
e0e7fb8996 bugfix: indicate that file resource is really working with paths
Signed-off-by: Dominik Richter <dominik@vulcanosec.com>
2015-06-21 11:23:30 +02:00
Dominik Richter
64d90c326f feature: add rules with IDs
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-06-07 17:09:02 +02:00
Dominik Richter
14eebb88e0 capitalize ssh conf name
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-05-14 18:30:38 +02:00
Dominik Richter
18277ddfad bugfix: postgres connection error detection fixed
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-05-14 18:29:55 +02:00
Dominik Richter
21d604820a feature: add windows resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-04-17 15:37:17 +02:00
Dominik Richter
e87af25d07 bugfix: ssh is simpleconf w/o multiassignemnt
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-04-17 15:36:55 +02:00
Dominik Richter
985552731a import resources
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-04-09 22:01:23 +02:00