chook 1.0.0.b1

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 (61) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +174 -0
  3. data/README.md +259 -0
  4. data/bin/chook-server +28 -0
  5. data/data/sample_handlers/RestAPIOperation-executable +91 -0
  6. data/data/sample_handlers/RestAPIOperation.rb +45 -0
  7. data/data/sample_handlers/SmartGroupComputerMembershipChange-executable +47 -0
  8. data/data/sample_handlers/SmartGroupComputerMembershipChange.rb +33 -0
  9. data/data/sample_jsons/ComputerAdded.json +27 -0
  10. data/data/sample_jsons/ComputerCheckIn.json +27 -0
  11. data/data/sample_jsons/ComputerInventoryCompleted.json +27 -0
  12. data/data/sample_jsons/ComputerPolicyFinished.json +27 -0
  13. data/data/sample_jsons/ComputerPushCapabilityChanged.json +27 -0
  14. data/data/sample_jsons/JSSShutdown.json +14 -0
  15. data/data/sample_jsons/JSSStartup.json +14 -0
  16. data/data/sample_jsons/MobileDeviceCheckIn.json +26 -0
  17. data/data/sample_jsons/MobileDeviceCommandCompleted.json +26 -0
  18. data/data/sample_jsons/MobileDeviceEnrolled.json +26 -0
  19. data/data/sample_jsons/MobileDevicePushSent.json +26 -0
  20. data/data/sample_jsons/MobileDeviceUnEnrolled.json +26 -0
  21. data/data/sample_jsons/PatchSoftwareTitleUpdated.json +14 -0
  22. data/data/sample_jsons/PushSent.json +11 -0
  23. data/data/sample_jsons/README +4 -0
  24. data/data/sample_jsons/RestAPIOperation.json +15 -0
  25. data/data/sample_jsons/SCEPChallenge.json +10 -0
  26. data/data/sample_jsons/SmartGroupComputerMembershipChange.json +13 -0
  27. data/data/sample_jsons/SmartGroupMobileDeviceMembershipChange.json +13 -0
  28. data/lib/chook.rb +38 -0
  29. data/lib/chook/configuration.rb +198 -0
  30. data/lib/chook/event.rb +153 -0
  31. data/lib/chook/event/handled_event.rb +154 -0
  32. data/lib/chook/event/handled_event/handlers.rb +206 -0
  33. data/lib/chook/event/test_event.rb +140 -0
  34. data/lib/chook/event_handling.rb +40 -0
  35. data/lib/chook/event_testing.rb +43 -0
  36. data/lib/chook/foundation.rb +33 -0
  37. data/lib/chook/handled_events.rb +33 -0
  38. data/lib/chook/handled_subjects.rb +33 -0
  39. data/lib/chook/procs.rb +46 -0
  40. data/lib/chook/server.rb +121 -0
  41. data/lib/chook/server/routes.rb +27 -0
  42. data/lib/chook/server/routes/handle_webhook_event.rb +39 -0
  43. data/lib/chook/server/routes/home.rb +37 -0
  44. data/lib/chook/subject.rb +143 -0
  45. data/lib/chook/subject/computer.rb +121 -0
  46. data/lib/chook/subject/handled_subject.rb +84 -0
  47. data/lib/chook/subject/jss.rb +56 -0
  48. data/lib/chook/subject/mobile_device.rb +115 -0
  49. data/lib/chook/subject/patch_software_title_update.rb +55 -0
  50. data/lib/chook/subject/push.rb +38 -0
  51. data/lib/chook/subject/randomizers.rb +506 -0
  52. data/lib/chook/subject/rest_api_operation.rb +62 -0
  53. data/lib/chook/subject/samplers.rb +360 -0
  54. data/lib/chook/subject/scep_challenge.rb +32 -0
  55. data/lib/chook/subject/smart_group.rb +50 -0
  56. data/lib/chook/subject/test_subject.rb +195 -0
  57. data/lib/chook/subject/validators.rb +117 -0
  58. data/lib/chook/test_events.rb +33 -0
  59. data/lib/chook/test_subjects.rb +33 -0
  60. data/lib/chook/version.rb +32 -0
  61. metadata +129 -0
metadata ADDED
@@ -0,0 +1,129 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: chook
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.b1
5
+ platform: ruby
6
+ authors:
7
+ - Chris Lasell
8
+ - Aurica Hayes
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2017-10-17 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: sinatra
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - '='
19
+ - !ruby/object:Gem::Version
20
+ version: 1.4.8
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - '='
26
+ - !ruby/object:Gem::Version
27
+ version: 1.4.8
28
+ description: |2
29
+ Chook is a Ruby module which implements a framework for working with webhook events
30
+ sent by the JSS, the core of Jamf Pro, a management tool for Apple devices.
31
+
32
+ Chook also provides a simple, sinatra-based HTTP server, for handling those Events,
33
+ and classes for sending simulated TestEvents to a webhook handling server.
34
+ email: chook@pixar.com
35
+ executables: []
36
+ extensions: []
37
+ extra_rdoc_files:
38
+ - README.md
39
+ - LICENSE.txt
40
+ files:
41
+ - LICENSE.txt
42
+ - README.md
43
+ - bin/chook-server
44
+ - data/sample_handlers/RestAPIOperation-executable
45
+ - data/sample_handlers/RestAPIOperation.rb
46
+ - data/sample_handlers/SmartGroupComputerMembershipChange-executable
47
+ - data/sample_handlers/SmartGroupComputerMembershipChange.rb
48
+ - data/sample_jsons/ComputerAdded.json
49
+ - data/sample_jsons/ComputerCheckIn.json
50
+ - data/sample_jsons/ComputerInventoryCompleted.json
51
+ - data/sample_jsons/ComputerPolicyFinished.json
52
+ - data/sample_jsons/ComputerPushCapabilityChanged.json
53
+ - data/sample_jsons/JSSShutdown.json
54
+ - data/sample_jsons/JSSStartup.json
55
+ - data/sample_jsons/MobileDeviceCheckIn.json
56
+ - data/sample_jsons/MobileDeviceCommandCompleted.json
57
+ - data/sample_jsons/MobileDeviceEnrolled.json
58
+ - data/sample_jsons/MobileDevicePushSent.json
59
+ - data/sample_jsons/MobileDeviceUnEnrolled.json
60
+ - data/sample_jsons/PatchSoftwareTitleUpdated.json
61
+ - data/sample_jsons/PushSent.json
62
+ - data/sample_jsons/README
63
+ - data/sample_jsons/RestAPIOperation.json
64
+ - data/sample_jsons/SCEPChallenge.json
65
+ - data/sample_jsons/SmartGroupComputerMembershipChange.json
66
+ - data/sample_jsons/SmartGroupMobileDeviceMembershipChange.json
67
+ - lib/chook.rb
68
+ - lib/chook/configuration.rb
69
+ - lib/chook/event.rb
70
+ - lib/chook/event/handled_event.rb
71
+ - lib/chook/event/handled_event/handlers.rb
72
+ - lib/chook/event/test_event.rb
73
+ - lib/chook/event_handling.rb
74
+ - lib/chook/event_testing.rb
75
+ - lib/chook/foundation.rb
76
+ - lib/chook/handled_events.rb
77
+ - lib/chook/handled_subjects.rb
78
+ - lib/chook/procs.rb
79
+ - lib/chook/server.rb
80
+ - lib/chook/server/routes.rb
81
+ - lib/chook/server/routes/handle_webhook_event.rb
82
+ - lib/chook/server/routes/home.rb
83
+ - lib/chook/subject.rb
84
+ - lib/chook/subject/computer.rb
85
+ - lib/chook/subject/handled_subject.rb
86
+ - lib/chook/subject/jss.rb
87
+ - lib/chook/subject/mobile_device.rb
88
+ - lib/chook/subject/patch_software_title_update.rb
89
+ - lib/chook/subject/push.rb
90
+ - lib/chook/subject/randomizers.rb
91
+ - lib/chook/subject/rest_api_operation.rb
92
+ - lib/chook/subject/samplers.rb
93
+ - lib/chook/subject/scep_challenge.rb
94
+ - lib/chook/subject/smart_group.rb
95
+ - lib/chook/subject/test_subject.rb
96
+ - lib/chook/subject/validators.rb
97
+ - lib/chook/test_events.rb
98
+ - lib/chook/test_subjects.rb
99
+ - lib/chook/version.rb
100
+ homepage: https://github.com/PixarAnimationStudios/chook
101
+ licenses:
102
+ - Nonstandard
103
+ metadata: {}
104
+ post_install_message:
105
+ rdoc_options:
106
+ - --title
107
+ - Chook
108
+ - --line-numbers
109
+ - --main
110
+ - README.md
111
+ require_paths:
112
+ - lib
113
+ required_ruby_version: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ required_rubygems_version: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - '>'
121
+ - !ruby/object:Gem::Version
122
+ version: 1.3.1
123
+ requirements: []
124
+ rubyforge_project:
125
+ rubygems_version: 2.6.8
126
+ signing_key:
127
+ specification_version: 4
128
+ summary: A Ruby framework for simulating and processing Jamf Pro Webhooks
129
+ test_files: []