rouster 0.5 → 0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -1
  3. data/.reek +63 -0
  4. data/.travis.yml +11 -0
  5. data/Gemfile +17 -0
  6. data/Gemfile.lock +102 -0
  7. data/README.md +233 -7
  8. data/Rakefile +52 -34
  9. data/Vagrantfile +26 -8
  10. data/examples/aws.rb +85 -0
  11. data/examples/openstack.rb +61 -0
  12. data/examples/passthrough.rb +71 -0
  13. data/lib/rouster.rb +380 -262
  14. data/lib/rouster/deltas.rb +470 -138
  15. data/lib/rouster/puppet.rb +155 -26
  16. data/lib/rouster/testing.rb +205 -46
  17. data/lib/rouster/tests.rb +40 -11
  18. data/lib/rouster/vagrant.rb +311 -0
  19. data/path_helper.rb +3 -4
  20. data/plugins/aws.rb +347 -0
  21. data/plugins/openstack.rb +136 -0
  22. data/test/basic.rb +4 -1
  23. data/test/functional/deltas/test_get_crontab.rb +64 -2
  24. data/test/functional/deltas/test_get_groups.rb +74 -2
  25. data/test/functional/deltas/test_get_os.rb +68 -0
  26. data/test/functional/deltas/test_get_packages.rb +73 -6
  27. data/test/functional/deltas/test_get_ports.rb +26 -1
  28. data/test/functional/deltas/test_get_services.rb +43 -5
  29. data/test/functional/deltas/test_get_users.rb +35 -2
  30. data/test/functional/puppet/test_facter.rb +41 -1
  31. data/test/functional/test_caching.rb +2 -2
  32. data/test/functional/test_inspect.rb +1 -1
  33. data/test/functional/test_is_file.rb +17 -1
  34. data/test/functional/test_is_in_file.rb +40 -0
  35. data/test/functional/test_new.rb +233 -22
  36. data/test/functional/test_passthroughs.rb +94 -0
  37. data/test/functional/test_put.rb +2 -2
  38. data/test/functional/test_validate_file.rb +104 -3
  39. data/test/puppet/test_apply.rb +8 -6
  40. data/test/unit/puppet/resources/puppet_run_with_failed_exec +59 -0
  41. data/test/unit/puppet/resources/puppet_run_with_successful_exec +61 -0
  42. data/test/unit/puppet/test_get_puppet_star.rb +27 -4
  43. data/test/unit/puppet/test_puppet_parsing.rb +44 -0
  44. data/test/unit/test_new.rb +88 -0
  45. data/test/unit/test_parse_ls_string.rb +67 -0
  46. data/test/unit/testing/resources/osx-launchd +285 -0
  47. data/test/unit/testing/resources/rhel-systemd +46 -0
  48. data/test/unit/testing/resources/rhel-systemv +41 -0
  49. data/test/unit/testing/resources/rhel-upstart +20 -0
  50. data/test/unit/testing/test_get_services.rb +178 -0
  51. data/test/unit/testing/test_validate_cron.rb +78 -0
  52. data/test/unit/testing/test_validate_package.rb +36 -10
  53. data/test/unit/testing/test_validate_port.rb +5 -0
  54. metadata +42 -21
  55. data/test/puppet/test_roles.rb +0 -186
@@ -9,6 +9,8 @@ class TestNew < Test::Unit::TestCase
9
9
 
10
10
  def setup
11
11
  @app = nil
12
+ # TODO make this work, don't want to have to instance_variable_get everything..
13
+ #Rouster.send(:public, *Rouster.instance_variables)
12
14
  end
13
15
 
14
16
  # TODO this is an awful pattern, do better
@@ -24,6 +26,92 @@ class TestNew < Test::Unit::TestCase
24
26
  assert_equal(true, @app.uses_sudo?())
25
27
  end
26
28
 
29
+ def test_2_good_instantiation
30
+
31
+ assert_nothing_raised do
32
+ @app = Rouster.new(
33
+ :cache_timeout => 10,
34
+ :name => 'ppm',
35
+ :retries => 3,
36
+ :verbosity => [3,2],
37
+ :unittest => true,
38
+ )
39
+ end
40
+
41
+ assert_equal(10, @app.cache_timeout)
42
+ assert_equal('ppm', @app.name)
43
+ assert_equal(3, @app.retries)
44
+
45
+ assert_equal(3, @app.instance_variable_get(:@verbosity_console))
46
+ assert_equal(2, @app.instance_variable_get(:@verbosity_logfile))
47
+
48
+ end
49
+
50
+
51
+ def test_default_overrides_aws_passthrough
52
+
53
+ key = sprintf('%s/.ssh/id_rsa', ENV['HOME'])
54
+ omit(sprintf('no suitable private key found at [%s]', key)) unless File.file?(key)
55
+
56
+ @app = Rouster.new(
57
+ :name => 'aws',
58
+ :passthrough => {
59
+ :type => :aws,
60
+ :ami => 'ami-1234',
61
+ :keypair => 'you@aws',
62
+ :key => key,
63
+ :key_id => 'key',
64
+ :secret_key => 'secret_access_key',
65
+
66
+ # aws specific overrides
67
+ :region => 'us-east-2',
68
+ :user => 'cloud-user',
69
+
70
+ # generic passthrough overrides
71
+ :ssh_sleep_ceiling => 1,
72
+ :ssh_sleep_time => 1,
73
+ },
74
+
75
+ :unittest => true,
76
+ )
77
+
78
+ passthrough = @app.passthrough
79
+
80
+ assert_equal('us-east-2', passthrough[:region])
81
+ assert_equal('cloud-user', passthrough[:user])
82
+ assert_equal(1, passthrough[:ssh_sleep_ceiling])
83
+ assert_equal(1, passthrough[:ssh_sleep_time])
84
+
85
+ assert_not_nil(passthrough[:ami])
86
+ assert_not_nil(passthrough[:key_id])
87
+ assert_not_nil(passthrough[:min_count])
88
+ assert_not_nil(passthrough[:max_count])
89
+ assert_not_nil(passthrough[:size])
90
+ assert_not_nil(passthrough[:ssh_port])
91
+
92
+ end
93
+
94
+ def test_default_overrides_passthrough
95
+
96
+ @app = Rouster.new(
97
+ :name => 'local',
98
+ :passthrough => {
99
+ :type => :local,
100
+ :paranoid => :secure,
101
+ :ssh_sleep_ceiling => 100,
102
+ },
103
+
104
+ :unittest => true,
105
+ )
106
+
107
+ passthrough = @app.passthrough
108
+
109
+ assert_equal(:secure, passthrough[:paranoid])
110
+ assert_equal(100, passthrough[:ssh_sleep_ceiling])
111
+ assert_not_equal(100, passthrough[:ssh_sleep_time])
112
+ end
113
+
114
+
27
115
  def teardown
28
116
  # noop
29
117
  end
@@ -29,6 +29,7 @@ class TestParseLsString < Test::Unit::TestCase
29
29
  :owner => 'root',
30
30
  :group => 'root',
31
31
  :size => '199',
32
+ :symlink? => false,
32
33
  :executable? => [false, false, false],
33
34
  :readable? => [true, true, true],
34
35
  :writeable? => [false, false, false]
@@ -50,6 +51,7 @@ class TestParseLsString < Test::Unit::TestCase
50
51
  :owner => 'root',
51
52
  :group => 'root',
52
53
  :size => '199',
54
+ :symlink? => false,
53
55
  :executable? => [false, false, false],
54
56
  :readable? => [true, false, false],
55
57
  :writeable? => [false, false, false]
@@ -71,6 +73,7 @@ class TestParseLsString < Test::Unit::TestCase
71
73
  :owner => 'root',
72
74
  :group => 'root',
73
75
  :size => '199',
76
+ :symlink? => false,
74
77
  :executable? => [false, false, false],
75
78
  :readable? => [false, true, false],
76
79
  :writeable? => [false, false, false]
@@ -92,6 +95,7 @@ class TestParseLsString < Test::Unit::TestCase
92
95
  :owner => 'root',
93
96
  :group => 'root',
94
97
  :size => '199',
98
+ :symlink? => false,
95
99
  :executable? => [false, false, false],
96
100
  :readable? => [false, false, true],
97
101
  :writeable? => [false, false, false]
@@ -113,6 +117,7 @@ class TestParseLsString < Test::Unit::TestCase
113
117
  :owner => 'root',
114
118
  :group => 'root',
115
119
  :size => '199',
120
+ :symlink? => false,
116
121
  :executable? => [true, true, true],
117
122
  :readable? => [false, false, false],
118
123
  :writeable? => [false, false, false]
@@ -134,6 +139,7 @@ class TestParseLsString < Test::Unit::TestCase
134
139
  :owner => 'root',
135
140
  :group => 'root',
136
141
  :size => '199',
142
+ :symlink? => false,
137
143
  :executable? => [true, false, false],
138
144
  :readable? => [false, false, false],
139
145
  :writeable? => [false, false, false]
@@ -155,6 +161,7 @@ class TestParseLsString < Test::Unit::TestCase
155
161
  :owner => 'root',
156
162
  :group => 'root',
157
163
  :size => '199',
164
+ :symlink? => false,
158
165
  :executable? => [false, true, false],
159
166
  :readable? => [false, false, false],
160
167
  :writeable? => [false, false, false]
@@ -176,6 +183,7 @@ class TestParseLsString < Test::Unit::TestCase
176
183
  :owner => 'root',
177
184
  :group => 'root',
178
185
  :size => '199',
186
+ :symlink? => false,
179
187
  :executable? => [false, false, true],
180
188
  :readable? => [false, false, false],
181
189
  :writeable? => [false, false, false]
@@ -197,6 +205,7 @@ class TestParseLsString < Test::Unit::TestCase
197
205
  :owner => 'root',
198
206
  :group => 'root',
199
207
  :size => '199',
208
+ :symlink? => false,
200
209
  :executable? => [false, false, false],
201
210
  :readable? => [false, false, false],
202
211
  :writeable? => [true, true, true]
@@ -218,6 +227,7 @@ class TestParseLsString < Test::Unit::TestCase
218
227
  :owner => 'root',
219
228
  :group => 'root',
220
229
  :size => '199',
230
+ :symlink? => false,
221
231
  :executable? => [false, false, false],
222
232
  :readable? => [false, false, false],
223
233
  :writeable? => [true, false, false]
@@ -239,6 +249,7 @@ class TestParseLsString < Test::Unit::TestCase
239
249
  :owner => 'root',
240
250
  :group => 'root',
241
251
  :size => '199',
252
+ :symlink? => false,
242
253
  :executable? => [false, false, false],
243
254
  :readable? => [false, false, false],
244
255
  :writeable? => [false, true, false]
@@ -260,6 +271,7 @@ class TestParseLsString < Test::Unit::TestCase
260
271
  :owner => 'root',
261
272
  :group => 'root',
262
273
  :size => '199',
274
+ :symlink? => false,
263
275
  :executable? => [false, false, false],
264
276
  :readable? => [false, false, false],
265
277
  :writeable? => [false, false, true]
@@ -281,6 +293,7 @@ class TestParseLsString < Test::Unit::TestCase
281
293
  :owner => 'vagrant',
282
294
  :group => 'vagrant',
283
295
  :size => '1909',
296
+ :symlink? => false,
284
297
  :executable? => [false, false, true],
285
298
  :readable? => [false, false, true],
286
299
  :writeable? => [false, false, true]
@@ -302,6 +315,7 @@ class TestParseLsString < Test::Unit::TestCase
302
315
  :owner => 'vagrant',
303
316
  :group => 'root',
304
317
  :size => '0',
318
+ :symlink? => false,
305
319
  :executable? => [false, false, false],
306
320
  :readable? => [true, true, true],
307
321
  :writeable? => [true, false, false]
@@ -312,6 +326,25 @@ class TestParseLsString < Test::Unit::TestCase
312
326
  assert_equal(expectation, res)
313
327
  end
314
328
 
329
+ def test_uid_forced
330
+ uid = 501
331
+ str = "-rw-r--r-- 1 #{uid} root 0 Jun 13 09:35 foo\n"
332
+
333
+ res = @app.exposed_parse_ls_string(str)
334
+
335
+ assert_equal('501', res[:owner])
336
+
337
+ end
338
+
339
+ def test_gid_forced
340
+ gid = 10
341
+ str = "-rw-r--r-- 1 vagrant #{gid} 0 Jun 13 09:35 foo\n"
342
+
343
+ res = @app.exposed_parse_ls_string(str)
344
+
345
+ assert_equal('10', res[:group])
346
+ end
347
+
315
348
  def test_dir_detection
316
349
  dir_str = "drwxrwxrwt 5 root root 4096 May 28 00:26 /tmp/\n"
317
350
  file_str = "-rw-r--r-- 1 root root 906 Oct 2 2012 grub.conf\n"
@@ -327,6 +360,40 @@ class TestParseLsString < Test::Unit::TestCase
327
360
 
328
361
  end
329
362
 
363
+ def test_symlink_detection
364
+ link = "lrwxrwxrwx 1 vagrant vagrant 10 Mar 13 22:53 foo -> /etc/hosts\n"
365
+ file = "-rw-r--r-- 2 root root 166 Mar 13 22:50 /etc/hosts\n"
366
+
367
+ assert_equal(true, @app.exposed_parse_ls_string(link)[:symlink?])
368
+ assert_equal(false, @app.exposed_parse_ls_string(file)[:symlink?])
369
+
370
+ end
371
+
372
+ def test_suid
373
+ str = "drwxr-sr-x 2 root root 4096 Oct 7 17:09 /etc/nagios/objects\n"
374
+
375
+ omit('need to improve (read: implement) actual suid support')
376
+
377
+ expectation = {
378
+ :directory? => true,
379
+ :file? => false,
380
+ :mode => '4755', # right now, we return '0755', if we detect an 's', do we just +4000?
381
+ :name => '/etc/nagios/objects',
382
+ :owner => 'root',
383
+ :group => 'root',
384
+ :size => '4096',
385
+ :symlink? => false,
386
+ :executable? => [true, true, true], # right now, we return [true,false,true]
387
+ :readable? => [true, true, true],
388
+ :writeable? => [true, false, false],
389
+ }
390
+
391
+ res = @app.exposed_parse_ls_string(str)
392
+
393
+ assert_equal(expectation, res)
394
+
395
+ end
396
+
330
397
  def teardown
331
398
  # noop
332
399
  end
@@ -0,0 +1,285 @@
1
+ PID Status Label
2
+ - 0 com.apple.cfpreferences-xpcservice
3
+ - 0 com.apple.qtkitserver
4
+ - 0 com.apple.cmio.registerassistantservice
5
+ - 0 com.apple.DataDetectors.DataDetectorsActionService
6
+ - 0 com.apple.security.XPCKeychainSandboxCheck
7
+ - 0 com.apple.security.XPCTimeStampingService
8
+ 1 - 0x7fd7e963fa00.anonymous.launchd
9
+ 475 - 0x7fd7e963f700.anonymous.launchd
10
+ 1867 - 0x7fd7e963f400.anonymous.lsboxd
11
+ - 0 com.apple.AppSandboxSMLoginItemEnabler
12
+ - 0 com.apple.XType.FontHelper
13
+ - 0 com.apple.hiservices-xpcservice
14
+ 1 - 0x7fd7eb115060.anonymous.launchd
15
+ 68 - 0x7fd7eb102ea0.anonymous.mds
16
+ 1 - 0x7fd7e94135b0.anonymous.launchd
17
+ 1793 - 0x7fd7e94132b0.anonymous.launchd
18
+ 1796 - 0x7fd7e9412fb0.anonymous.distnoted
19
+ - 0 com.apple.security.pboxd
20
+ - 0 com.apple.audio.SandboxHelper
21
+ - 0 com.apple.appkit.xpc.sandboxedServiceRunner
22
+ - 0 com.apple.audio.InfoHelper
23
+ - 0 com.apple.automator.xpc.workflowServiceRunner
24
+ - 0 com.apple.audio.ComponentHelper
25
+ 1 - 0x7fd7eb115680.anonymous.launchd
26
+ 475 - 0x7fd7eb115380.anonymous.launchd
27
+ 1385 - 0x7fd7eb114bb0.anonymous.storeagent
28
+ 1 - 0x7fd7eb007700.anonymous.launchd
29
+ 475 - 0x7fd7eb007400.anonymous.launchd
30
+ 1374 - 0x7fd7eb007100.anonymous.Dash
31
+ - 0 com.apple.HasTRB
32
+ 1 - 0x7fd7eb110a20.anonymous.launchd
33
+ 475 - 0x7fd7eb110720.anonymous.launchd
34
+ 1341 - 0x7fd7eb105ce0.anonymous.mdmclient
35
+ 1 - 0x7fd7e94107b0.anonymous.launchd
36
+ 475 - 0x7fd7e94104b0.anonymous.launchd
37
+ 1343 - 0x7fd7e940bd10.anonymous.imagent
38
+ 1 - 0x7fd7e940c9a0.anonymous.launchd
39
+ 475 - 0x7fd7e940c6a0.anonymous.launchd
40
+ 529 - 0x7fd7e940c300.anonymous.Activity Monito
41
+ 1 - 0x7fd7eb1031a0.anonymous.launchd
42
+ 1031 - 0x7fd7eb110410.anonymous.filecoordinatio
43
+ 1 - 0x7fd7eb10d7e0.anonymous.launchd
44
+ 1014 - 0x7fd7eb10d4e0.anonymous.netbiosd
45
+ - 0 com.apple.coremedia.videodecoder
46
+ - 0 com.apple.imagekit.xpc.sendapplescriptservice
47
+ - 0 com.apple.SceneKit.C3DColladaResourcesCoordinator
48
+ - 0 com.apple.PDFKit.PDFFileRefsValidator
49
+ 1 - 0x7fd7eb107e00.anonymous.launchd
50
+ 475 - 0x7fd7eb102880.anonymous.launchd
51
+ 522 - 0x7fd7eb102570.anonymous.TextWrangler
52
+ 1 - 0x7fd7e9639e30.anonymous.launchd
53
+ 544 - 0x7fd7e963a130.anonymous.com.apple.dock.
54
+ 1 - 0x7fd7e9634cc0.anonymous.launchd
55
+ 475 - 0x7fd7e96349c0.anonymous.launchd
56
+ 534 - 0x7fd7e96346c0.anonymous.Finder
57
+ 1 - 0x7fd7e9407eb0.anonymous.launchd
58
+ 475 - 0x7fd7e9407bb0.anonymous.launchd
59
+ 532 - 0x7fd7e94078b0.anonymous.talagent
60
+ - 0 com.apple.dock.ecti
61
+ 544 - com.apple.dock.extra
62
+ 1 - 0x7fd7e9630d80.anonymous.launchd
63
+ 475 - 0x7fd7e9630a80.anonymous.launchd
64
+ 531 - 0x7fd7e9630780.anonymous.Dock
65
+ 1 - 0x7fd7eb001800.anonymous.launchd
66
+ 475 - 0x7fd7eb001500.anonymous.launchd
67
+ 480 - 0x7fd7eb006e00.anonymous.distnoted
68
+ 1 - 0x7fd7e961afc0.anonymous.launchd
69
+ 71 - 0x7fd7e9618920.anonymous.loginwindow
70
+ 1 - 0x7fd7e94025d0.anonymous.launchd
71
+ 69 - 0x7fd7e9402220.anonymous.mdmclient
72
+ 10613 - 0x7fd7e9410ab0.anonymous.sudo
73
+ 10614 - 0x7fd7e94081b0.anonymous.launchctl
74
+ 517 - 0x7fd7eb11c590.anonymous.Terminal
75
+ 540 - 0x7fd7eb11c290.anonymous.login
76
+ 541 - 0x7fd7eb11bf90.anonymous.bash
77
+ 3309 - 0x7fd7eb11bc90.anonymous.screen
78
+ 3310 - 0x7fd7eb1195f0.anonymous.screen
79
+ 3486 - 0x7fd7eb106f00.anonymous.login
80
+ 3499 - 0x7fd7eb110d20.anonymous.bash
81
+ - 0 com.apple.locum.0F2CBFAC-B361-4962-81A1-B8576190F39F
82
+ - 0 com.apple.xpchelper.59000000-0000-0000-0000-000000000000
83
+ 1793 - com.apple.launchd.peruser.89
84
+ - 0 com.apple.launchd.peruser.92
85
+ - 0 com.apple.launchd.peruser.4294967294
86
+ - 0 com.apple.launchd.peruser.222
87
+ - 0 com.apple.xpchelper.DE000000-0000-0000-0000-000000000000
88
+ 544 - 0x7fd7e9639b30.anonymous.com.apple.dock.
89
+ 510 - 0x7fd7e94075a0.anonymous.eapolclient
90
+ - 0 com.apple.xpchelper.6EE3F24B-0000-0000-0000-000000000000
91
+ 475 - com.apple.launchd.peruser.1274209134
92
+ - 0 com.apple.launchd.peruser.212
93
+ - 0 com.apple.SecurityAgent.00000000-0000-0000-0000-0000000186A4
94
+ - 0 com.apple.authorizationhost.00000000-0000-0000-0000-0000000186A4
95
+ 346 - 0x7fd7eb106c00.anonymous.ruby
96
+ 299 - 0x7fd7eb108100.anonymous.iCoreService
97
+ 1 - 0x7fd7eb107b00.anonymous.launchd
98
+ 303 - 0x7fd7eb107500.anonymous.iCorePluginMgr
99
+ - 0 com.apple.launchd.peruser.0
100
+ - 0 com.apple.xpchelper.00000000-0000-0000-0000-000000000000
101
+ - 0 com.openssh.sshd
102
+ - 0 com.apple.screensharing
103
+ - 0 com.apple.msrpc.wkssvc
104
+ - 0 com.apple.msrpc.srvsvc
105
+ - 0 com.apple.msrpc.netlogon
106
+ - 0 com.apple.msrpc.mdssvc
107
+ - 0 com.apple.msrpc.lsarpc
108
+ - 0 org.x.privileged_startx
109
+ - 0 org.postfix.master
110
+ 52 - org.ntp.ntpd
111
+ 53 - org.cups.cupsd
112
+ - 0 com.vix.cron
113
+ - 0 com.apple.xserve.serial-ports
114
+ - 0 com.apple.xprotectupdater-init
115
+ - 252 com.apple.xprotectupdater
116
+ - 0 com.apple.xpchelper
117
+ 375 - com.apple.WindowServer
118
+ - 0 com.apple.webdavfs_load_kext
119
+ - 0 com.apple.warmd
120
+ - 0 com.apple.vsdbutil
121
+ - 0 com.apple.var-db-shadow-backup
122
+ - 0 com.apple.var-db-dslocal-backup
123
+ - 0 com.apple.UserNotificationCenter
124
+ 11 - com.apple.UserEventAgent-System
125
+ 57 - com.apple.usbmuxd
126
+ - 0 com.apple.unmountassistant.sysagent
127
+ - 0 com.apple.uninstalld
128
+ - 0 com.apple.ucupdate.plist
129
+ - 0 com.apple.TrustEvaluationAgent.system
130
+ - 0 com.apple.taskgated
131
+ - 0 com.apple.taskgated-helper
132
+ 59 - com.apple.SystemStarter
133
+ - 0 com.apple.systempreferences.writeconfig
134
+ - 0 com.apple.systempreferences.install
135
+ - 0 com.apple.systemkeychain
136
+ 17 - com.apple.syslogd
137
+ - 0 com.apple.suhelperd
138
+ - 0 com.apple.storereceiptinstaller
139
+ - 0 com.apple.storeagent
140
+ - 0 com.apple.store_helper
141
+ - 0 com.apple.statd.notify
142
+ 61 - com.apple.stackshot
143
+ - 0 com.apple.spindump_symbolicator
144
+ - 0 com.apple.spindump
145
+ - 0 com.apple.smbfs_load_kext
146
+ - 0 com.apple.smb.preferences
147
+ - 0 com.apple.shutdown_monitor
148
+ - 0 com.apple.ServerPerfLog.aslmanager
149
+ 22 - com.apple.securityd
150
+ - 0 com.apple.SecurityAgent
151
+ - 0 com.apple.security.syspolicy
152
+ - 0 com.apple.scsid
153
+ - 0 com.apple.SCHelper
154
+ - 0 com.apple.sandboxd
155
+ - 0 com.apple.rpmuxd
156
+ - 0 com.apple.rpcbind
157
+ - 0 com.apple.RFBEventHelper
158
+ 64 - com.apple.revisiond
159
+ - 0 com.apple.ReportCrash.Root
160
+ - 0 com.apple.RemoteDesktop.PrivilegeProxy
161
+ - 0 com.apple.racoon
162
+ - 0 com.apple.printtool.daemon
163
+ - 0 com.apple.preferences.timezone.auto
164
+ - 0 com.apple.preferences.timezone.admintool
165
+ 18 - com.apple.powerd
166
+ - 0 com.apple.platform.ptmd
167
+ - 0 com.apple.pfctl
168
+ - 0 com.apple.periodic-weekly
169
+ - 0 com.apple.periodic-monthly
170
+ - 0 com.apple.periodic-daily
171
+ - 0 com.apple.PCIELaneConfigTool
172
+ - 0 com.apple.pcastagentconfigd
173
+ 14 - com.apple.opendirectoryd
174
+ 402 - com.apple.ocspd
175
+ 12 - com.apple.notifyd
176
+ - 0 com.apple.nis.ypbind
177
+ - 0 com.apple.nfsd
178
+ - 0 com.apple.newsyslog
179
+ - 0 com.apple.nlcd
180
+ 1014 - com.apple.netbiosd
181
+ - 0 com.apple.netauth.sys.gui
182
+ - 0 com.apple.netauth.sys.auth
183
+ - 0 com.apple.metadata.mds.spindump
184
+ - 0 com.apple.metadata.mds.scan
185
+ 68 - com.apple.metadata.mds
186
+ - 0 com.apple.mDNSResponderHelper
187
+ 13 - com.apple.mDNSResponder
188
+ 69 - com.apple.mdmclient.daemon
189
+ - 0 com.apple.ManagedClient
190
+ 71 - com.apple.loginwindow
191
+ 446 - com.apple.logind
192
+ - 0 com.apple.locum
193
+ - 0 com.apple.lockd
194
+ - 0 com.apple.locationd
195
+ - 0 com.apple.locate
196
+ - 0 com.apple.kuncd
197
+ 10 - com.apple.kextd
198
+ 73 - com.apple.KernelEventAgent
199
+ - 0 com.apple.Kerberos.kpasswdd
200
+ 74 - com.apple.Kerberos.kdc
201
+ - 0 com.apple.Kerberos.kcm
202
+ - 0 com.apple.Kerberos.kadmind
203
+ - 0 com.apple.Kerberos.digest-service
204
+ - 0 com.apple.kcproxy
205
+ - 0 com.apple.installd
206
+ - 0 com.apple.IFCStart
207
+ 76 - com.apple.hidd
208
+ - 0 com.apple.hdiejectd
209
+ - 0 com.apple.gssd
210
+ 20 - com.apple.fseventsd
211
+ - 0 com.apple.FontWorker
212
+ - 0 com.apple.fontmover
213
+ - 0 com.apple.fontd
214
+ - 0 com.apple.findmymacmessenger
215
+ - 0 com.apple.findmymacd
216
+ 1031 - com.apple.FileCoordination
217
+ 453 - com.apple.familycontrols
218
+ - 0 com.apple.efilogin-helper
219
+ - 0 com.apple.eapolcfg_auth
220
+ 78 - com.apple.dynamic_pager
221
+ - 0 com.apple.dvdplayback.setregion
222
+ - 0 com.apple.DumpPanic
223
+ - 0 com.apple.DumpGPURestart
224
+ - 0 com.apple.dspluginhelperd
225
+ - 0 com.apple.dpd
226
+ 19 - com.apple.distnoted.xpc.daemon
227
+ - 0 com.apple.diskmanagementd
228
+ 15 - com.apple.diskarbitrationd
229
+ - 0 com.apple.DiagnosticReportCleanUp
230
+ 436 - com.apple.cvmsServ
231
+ - 0 com.apple.corestorage.corestoragehelperd
232
+ - 0 com.apple.corestorage.corestoraged
233
+ 27 - com.apple.coreservicesd
234
+ - 0 com.apple.coreservices.appleid.passwordcheck
235
+ - 0 com.apple.CoreRAID
236
+ - 0 com.apple.configureLocalKDC
237
+ 16 - com.apple.configd
238
+ 2814 - com.apple.cmio.VDCAssistant
239
+ - 0 com.apple.cmio.IIDCVideoAssistant
240
+ - 0 com.apple.cmio.AVCAssistant
241
+ - 0 com.apple.bsd.launchdadd
242
+ - 0 com.apple.bsd.dirhelper
243
+ - 0 com.apple.bnepd
244
+ 23 - com.apple.blued
245
+ - 0 com.apple.backupd
246
+ - 0 com.apple.awacsd
247
+ - 0 com.apple.avbdeviced
248
+ - 0 com.apple.automountd
249
+ 83 - com.apple.autofsd
250
+ - 0 com.apple.authorizationhost
251
+ - 0 com.apple.auditd
252
+ 450 - com.apple.audio.coreaudiod
253
+ - 0 com.apple.aslmanager
254
+ - 0 com.apple.applepushserviced
255
+ - 0 com.apple.appleprofilepolicyd
256
+ - 0 com.apple.AOSNotification-FMM
257
+ - 0 com.apple.alf
258
+ - 0 com.apple.airport.updateprefs
259
+ - 0 com.apple.airportd
260
+ - 0 com.apple.AirPort.wps
261
+ - 0 com.apple.afpfs_checkafp
262
+ - 0 com.apple.afpfs_afpLoad
263
+ 1048 - com.apple.ActivityMonitor
264
+ 86 - com.trusteer.rooks.rooksd
265
+ - 0 com.trendmicro.mpm.icore.agent
266
+ 463 - com.snowsoftware.Metering
267
+ - 0 com.snowsoftware.Inventory
268
+ - 0 com.SFDC.CE.WirelessFix
269
+ - 0 com.SFDC.CE.JavaAppletMonitor
270
+ - 0 com.oracle.java.Helper-Tool
271
+ - 0 com.nomachine.server
272
+ - 0 com.microsoft.office.licensing.helper
273
+ - 1 com.leapmotion.leapd
274
+ - 0 com.jamfsoftware.task.Every 30 Minutes
275
+ 94 - com.jamfsoftware.jamf.daemon
276
+ 95 - com.GSI.Servlet
277
+ - 0 com.google.keystone.daemon
278
+ 96 - com.crashplan.engine
279
+ 97 - com.cisco.anyconnect.vpnagentd
280
+ 98 - com.checkpoint.launchd.ppcd
281
+ 99 - com.bjango.istatmenusdaemon
282
+ - 0 com.apple.RemotePairTool
283
+ - 0 com.adobe.fpsaud
284
+ 100 - com.bigfix.BESAgent
285
+ - 0 com.apple.launchctl.System