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
Christoph Hartmann
f5448e919b
remove p
2015-10-12 11:10:32 +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
Dominik Richter
28fb05ad97
reduce exposure of context, use backend for os detect
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-10 23:15:05 +02:00
Christoph Hartmann
9904e65923
run os detection in proper context
2015-10-10 01:24:39 +02:00
Christoph Hartmann
22c39bdf62
expose profile context
2015-10-10 01:24:39 +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
90cf62d88e
add bridge to available resources
2015-10-09 15:07:03 +02:00
Christoph Hartmann
337cd6aff8
implement bridge for linux
2015-10-09 15:06:10 +02:00
Dominik Richter
6aee38a23c
feature: add interactive shell
2015-10-08 23:24:14 +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
Dominik Richter
4176d1b227
improvement: add default print method to resources
2015-10-08 11:06:20 +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
949496776e
move comment parser to utils
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
bcde1c6dc7
bugfix: fix typo
2015-10-07 18:27:58 +02:00
Christoph Hartmann
2e1c48bbd6
add windows family as helper function
2015-10-07 18:27:44 +02:00
Christoph Hartmann
01f0ae954c
support OS detection and helper methods in mock backend
2015-10-07 18:27:17 +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
fa4581489f
ignore stderr on file content cat
...
reduced problems on CSH and others...
2015-10-06 15:49:19 +02:00
Dominik Richter
ba288cc86e
bugfix: ensure resource registry is available to backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-06 14:12:32 +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
8005b52921
move backend creation out of runner
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-05 23:00:27 +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
Dominik Richter
5912f0d3f1
feature: add resources to backend accessor
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-05 17:35:50 +02:00
Christoph Hartmann
f38ce7d5f4
bugfix: fix error, where the winrm default path is not set properly by default
2015-10-05 15:35:02 +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
Dominik Richter
5815dda5d0
api: simplify ssl configuration
...
* rename `--winrm-ssl` => `--ssl`, to be used by other transports as well
* rename `--winrm-self-signed` => `--self-signed`, to be used by other transports
2015-10-05 12:52:04 +02:00
Dominik Richter
6278e6924d
feature: support specinfra+winrms:// backend for quick ssl config
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-05 12:52:04 +02:00
Christoph Hartmann
14c5c3f393
lint: remove whitespace
2015-10-05 12:28:28 +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
af8bca193a
add support to hash commands in mock backend
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
Dominik Richter
938d13a7dc
switch from open4 -> mixlib-shellout
2015-10-04 23:24:17 +02:00
Dominik Richter
fede3fb9fd
use target path in configuring specinfra winrm
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-03 23:56:46 +02:00
Dominik Richter
369e61d0cd
feature: add path to target specification
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-03 23:39:09 +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
Dominik Richter
7d27b62794
simplify key assignment in conf
2015-10-02 22:41:25 +02:00
Dominik Richter
5825b4d6d4
rename --key-file to --key on cli
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-02 22:21:35 +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
12888c8dad
bugfix: centos detection in docker centos:7.1.1503
...
It doesnt post the expected information in /etc/redhat-release:
Derived from Red Hat Enterprise Linux 7.1 (Source)
Additionally in /etc/os-release:
NAME="CentOS Linux"
VERSION="7 (Core)"
...
Combine both files to fix the detection.
2015-09-30 13:44:24 +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
8b97bdbaa7
expose simpleconfig groups
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 12:18:09 +02:00
Dominik Richter
2d8b63cb22
feature: support simple config groups
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 12:00:38 +02:00
Dominik Richter
90de8763cf
wrap up linting
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 02:20:47 +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
212f11243b
simplify and fix stat handling
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 01:42:04 +02:00
Dominik Richter
28b3792325
let specinfra backend os support OSCommon methods
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-29 19:34:43 +02:00
Dominik Richter
3508201a5d
split out unix stat
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-29 19:18:48 +02:00
Dominik Richter
15d5cc7ca0
split up specinfra backend helper
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-29 15:27:58 +02:00
Dominik Richter
1e0405bf74
allow for empty config in target_config
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 13:03:05 +02:00
Dominik Richter
78d98388f8
add amazon scientific and xenserver to redhat distros in detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 12:46:46 +02:00
Dominik Richter
4e15e425a4
move darwin to bsd type
...
see: https://en.wikipedia.org/wiki/Darwin_%28operating_system%29#/media/File:Unix_timeline.en.svg
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 12:14:40 +02:00
Dominik Richter
4f0c0d7f21
add unit tests to os common detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:52:50 +02:00
Dominik Richter
c77a0a1c81
api: make mock backend quiet by default
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:27:19 +02:00
Dominik Richter
7019b1f659
generalize and simplify os detect methods
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:15:41 +02:00
Dominik Richter
2eb94f5e2e
be more explicit about detecting unix
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:06:38 +02:00
Dominik Richter
bc98b3330f
feature: add helpers for OS families
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:06:38 +02:00
Dominik Richter
093600b85f
split up os detection for linting
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-26 13:12:52 +02:00
Dominik Richter
d839cbc8f7
lint the profile context
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-26 12:41:13 +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
94ac889ff2
fix robocop lint issues
2015-09-25 19:46:46 +02:00
Christoph Hartmann
7cea90ef3a
fix lint issues
2015-09-25 19:34:25 +02:00
Dominik Richter
3fe0c90733
overhaul rule structure
...
* rename VulcanoBaseRule -> Vulcano::Rule
* initialize rule inside the ProfileContext
* attach all resources to ProfileContext and all rules created within
* rename rule.rb -> dsl.rb, now only containing DSL information
* rename base_rule.rb -> rule.rb, now containing everything for rule
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 19:16:32 +02:00
Christoph Hartmann
ec7a743f21
Merge pull request #51 from chef/ssh-transport
...
Verify ssh transport backend
2015-09-25 15:06:00 +02:00
Dominik Richter
6d7a46a589
bugfix: do not allocate pty on ssh by default
...
PTY will effectively disable stderr output, so avoid it for now.
It will come up very soon when we get back to sudo; see if fifo or other solutions might be used. Stderr is important for accurate command execution...
For reference see this wonderful explanation:
http://unix.stackexchange.com/a/134169
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 13:25:57 +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
Dominik Richter
c3d226e4a2
add os detection to ssh backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 12:37:37 +02:00
Dominik Richter
8fe3b8ad4d
add ssh configuration options
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 12:37:35 +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
Dominik Richter
a051224462
improvement: be explicit on specinfra file content handling
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 09:55:48 +02:00
Dominik Richter
773548551d
bugfix: specinfra file handling on bsd over ssh
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 01:16:39 +02:00
Dominik Richter
5ed71ef444
bugfix: error handling on file backend in specinfra
2015-09-24 22:46:02 +02:00
Dominik Richter
1e5fc59fa8
bugfix: handle selinux label (null)
...
Return nil instead of (null), as it is a special output of stat.
2015-09-24 10:36:21 +02:00
Dominik Richter
7a6675394c
bugfix: linux file dont return selinux label ?
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:21 +02:00
Dominik Richter
3ed1c29039
bugfix: linux file content for folder/missing
...
Dont return empty strings when reading a directory or if the path doesnt exist. Instead return nil.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:21 +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
Christoph Hartmann
52f7ddd899
add comment windows version determination
2015-09-23 13:24:55 +02:00
Christoph Hartmann
18e420bb31
remove windows 2003 r2, shares the same version number as windows 2003, only distinguishes via build number
2015-09-23 13:23:03 +02:00
Dominik Richter
ab155f7db6
bugfix: windows server 2008 detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-23 10:38:46 +02:00
Dominik Richter
1076dcbd52
remove os_ prefix from detect json syntax
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-23 10:25:05 +02:00
Dominik Richter
7ccd88f1a2
improvement: os detection on unix
...
provided the platform family hint == "unix" run tests for all supported unix systems
also clarify the role of linux detection as the last step
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Dominik Richter
a9c129540b
bugfix: file common for linked_to? tests
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Dominik Richter
f472e8a5c0
expose os to docker backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +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
Dominik Richter
5fec383788
bugfix: detect os via unames
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 16:25:17 +02:00
Dominik Richter
c3fa247e6a
bugfix: local file owner
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 14:24:22 +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
Dominik Richter
c56dee4d0f
implement fake os method for mock backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +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
7fb41cdbee
remove conditional or on release for detect util
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +02:00
Dominik Richter
13f7429509
remove commented fedora code
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +02:00
Dominik Richter
e78fbf1b96
move windows OS detection to backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Dominik Richter
94d748efd1
add os name to detect util
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Dominik Richter
f0215a4380
specinfra backwards compatibility for darwin/osX
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Dominik Richter
0ed2f1b535
fix inverted darwin detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Dominik Richter
ca753cdb83
feature: add os resource
2015-09-22 02:27:02 +02:00
Dominik Richter
50dd82e150
feature: OS detection
2015-09-22 02:27:02 +02:00
Christoph Hartmann
34889913b4
bugfix: fix simplified runner configuration
2015-09-22 02:27:02 +02:00
Dominik Richter
9de015ae2d
improvement: simplify runner configuration
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Christoph Hartmann
37783385d4
implement service for FreeBSD
2015-09-22 02:27:02 +02:00
Christoph Hartmann
e06eed2178
Merge pull request #19 from chef/improvements
...
Improvements
2015-09-22 02:27:01 +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
535bddd944
move out local file user/group name
...
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
Dominik Richter
9608e2e29b
bugfix: specinfra selinux label handling
...
as specinfra doesnt work with respond_to?, just call the method and catch the error.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
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
Dominik Richter
6c29580de0
enforce file content encoding to utf8
...
this is also in line with specinfra compatibility
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Christoph Hartmann
046f3fe9e4
fix robocop issues
2015-09-22 02:27:00 +02:00
Dominik Richter
c06fe38981
bugfix: dont strip specinfra file content output
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Christoph Hartmann
8113df6d44
bugfix: fix sysv implementation
2015-09-22 02:27:00 +02:00
Dominik Richter
61e7559489
fix bsd stat detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
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
Dominik Richter
13ce808a90
bugfix: specinfra is missing methods for freebsd
...
Add getter for user/group/mode for freebsd, as specinfra will execute these calls but not return anything.
2015-09-22 02:27:00 +02:00
Christoph Hartmann
7806951051
add fedora support
2015-09-22 02:27:00 +02:00
Dominik Richter
a1a0e10c5a
extend linux file with bsd stat
...
TODO: we must start separating between the different UNIXes and maybe call this something better than LinuxFile, but for now: since most of the things will stay the same, add the bsd stat command as an alternative to the linux stat command and parse its output.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Dominik Richter
82f89aa1db
bugfix: dont fail on specinfra selinux_label on freebsd
...
the call shouldnt be made, but in case it is, dont just fail mit NoMethodError
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
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
Dominik Richter
f18381a7d3
return nil for specinfra content on directories
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:59 +02:00
Dominik Richter
7137a9625b
expose backend file path
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
d16f76c9ce
pull in selinux label on local backend runner
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
b13a1b574d
let specinfra support empty block device content
2015-09-22 02:26:58 +02:00
Dominik Richter
7f19111b1b
bugfix: catch lstat errors on local backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:25:52 +02:00
Dominik Richter
ef9b299319
api: specinfra reports nil on non-existent files
...
Check the responses and make sure we dont blindly return eg: size=0 or group="" or user="" for files that dont exist.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:25:52 +02:00
Dominik Richter
4aef4821cc
bugfix: target_type check for pipe
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:25:52 +02:00
Dominik Richter
b8ae2ee7a3
api: specinfra content returns nil on block_device
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
d2ade9f247
bugfix: nil content on specinfra empty files
...
Only return nil for no content on specinfra files if the file actually has any content. ie. when we were not able to read the content then provide the answer of nil. if the file has no content, return an empty string. this leaves the error case where empty files cannot be read, which will not be signaled via content from specinfra.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
d8dea86e6e
api: return nil for md5/sha256/content empty
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
e0b89e6ae2
bugfix: return nil on file content read errors
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
2c00423c3e
read symlink destination file types
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
6f4f0b570c
inject specinfra backend helper into file
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
5f472d9735
use lstat for local backend to read symlinks
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
3e16407454
rename file link_target -> link_path
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
60f9e643aa
api: specinfra mtime returns unix seconds
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
04a8cfddf4
ignore exit code on linux stat
...
For now: Since stat throws exit code 1 on selinux label checks if no selinux label (or system) is present, it would signal us to disregard results. However, the results are actually complete and can be fully used, with selinux_label becoming "?".
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Dominik Richter
526518fabd
api: set specinfra product_version + file_version to nil
...
whenever the label is empty (typically on all *nix systems) set it to nil instead of ""
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Dominik Richter
55bd535599
api: specinfra set selinux label to nil
...
Whenever the selinux label is empty, set it to nil instead of '?' or ''.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Dominik Richter
534a9ce57a
bugfix: always return file stat
2015-09-22 02:17:29 +02:00
Dominik Richter
c86a68950a
improvement: add optimized local file module
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Christoph Hartmann
6e76dd689e
bugfix: set host for ssh config in specinfra
2015-09-22 02:17:28 +02:00
Dominik Richter
8f45afffcd
move up specinfra property detection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Dominik Richter
48b25e893d
bugfix: specinfra re-detect backend os
...
By default it uses the currently running OS on initialization, instead of the OS configured via backend. Force its reinitialization by resetting all properties.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Christoph Hartmann
dfb330e7e8
use backend os detection in resources
2015-09-22 02:17:28 +02:00
Christoph Hartmann
7b5bbc8a5f
patch specinfra os detection
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
43d49a348f
bugfix: require specinfra backend
2015-09-22 02:17:28 +02:00
Dominik Richter
54b37b0b96
unify reporting on concurrent tests
...
Take control of the rspec runner loop and make sure all of our concurrent tests are executed in one reporting chain. It goes: Start reporting, concurrently run container+test+kill, stop and publish reporting.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Dominik Richter
c6f896cad3
run full docker test in parallel
...
With just one more issue left: the formatter is going to report multiple time, including spitting out errors multiple times. Also need to remove some of the custom formatting around the current state of containers.
As a bonus: This further improved testing speed (30% on the current environment) and will allow us to grow the supported platforms for tests easily.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
37ad8f9531
run test setup concurrently + only once
...
Instead of having RSpec re-run its world multiple times, run it only once with all tests.
Which leaves us with one more thing to solve: we want to start tests as soon as the container is up and they are set up. At the moment, the containers come up and are set up concurrently, including test registry, but the tests themselves are in simple sequence.
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
eb2e18b75d
remove leftover includes
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
945dee74cc
Merge pull request #10 from chef/oneget
...
add oneget resource
2015-09-22 02:17:27 +02:00
Christoph Hartmann
33f9dd8e87
add oneget resource
2015-09-22 02:17:21 +02:00
Christoph Hartmann
d0d9a66e4a
move user default settings to backend
2015-09-22 02:15:43 +02:00
Dominik Richter
3e02e622c5
bugfix: linux file stat parameters and mount
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:43 +02:00
Christoph Hartmann
51fff9104b
bugfix: use instance variable, include winrm
2015-09-22 02:15:43 +02:00
Christoph Hartmann
b03db74798
improvement: set default user at a later stage to support user@target
2015-09-22 02:15:43 +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
4852842bf6
feature: add hash utility for deep_merge
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +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
1345c1d017
update findfiles to work with new backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
f1cc7cbf9b
lint utils
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
753e7775ef
lint detect
...
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
Dominik Richter
74da29c3ed
lint vulcano lib files
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
07cb7efe36
lint targets
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
46b300f409
finish linting backend
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
e5686ea4e2
lint backends
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
cfbd5ccfc0
lint plugins
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Dominik Richter
6e01505414
lint
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:41 +02:00
Dominik Richter
67b5ecc06e
bugfix: force PTY on SSH connection
...
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:41 +02:00
Christoph Hartmann
1570e8e7af
Merge pull request #4 from chef/docker
...
Start Docker + SSH backends
2015-09-22 02:15:41 +02:00