boris 1.0.0.beta.1 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. data/CHANGELOG.md +11 -0
  2. data/README.md +114 -32
  3. data/Rakefile +19 -0
  4. data/lib/boris.rb +0 -13
  5. data/lib/boris/connectors.rb +25 -7
  6. data/lib/boris/connectors/snmp.rb +24 -4
  7. data/lib/boris/connectors/ssh.rb +32 -6
  8. data/lib/boris/connectors/wmi.rb +109 -54
  9. data/lib/boris/errors.rb +1 -1
  10. data/lib/boris/helpers/array.rb +62 -62
  11. data/lib/boris/helpers/constants.rb +22 -19
  12. data/lib/boris/helpers/hash.rb +7 -7
  13. data/lib/boris/helpers/network.rb +68 -0
  14. data/lib/boris/helpers/scrubber.rb +53 -51
  15. data/lib/boris/helpers/string.rb +148 -26
  16. data/lib/boris/lumberjack.rb +74 -47
  17. data/lib/boris/options.rb +28 -16
  18. data/lib/boris/profiler.rb +19 -0
  19. data/lib/boris/profilers/linux/redhat.rb +74 -0
  20. data/lib/boris/{profiles → profilers}/linux_core.rb +13 -4
  21. data/lib/boris/{profiles → profilers}/unix/solaris.rb +25 -15
  22. data/lib/boris/{profiles → profilers}/unix_core.rb +90 -85
  23. data/lib/boris/profilers/windows/windows2003.rb +11 -0
  24. data/lib/boris/profilers/windows/windows2008.rb +26 -0
  25. data/lib/boris/profilers/windows/windows2012.rb +11 -0
  26. data/lib/boris/{profiles → profilers}/windows_core.rb +36 -14
  27. data/lib/boris/structure.rb +173 -167
  28. data/lib/boris/target.rb +110 -168
  29. data/lib/boris/version.rb +3 -0
  30. metadata +32 -115
  31. data/boris.gemspec +0 -28
  32. data/doc/Array.html +0 -437
  33. data/doc/Boris.html +0 -230
  34. data/doc/Boris/ConnectionAlreadyActive.html +0 -123
  35. data/doc/Boris/ConnectionFailed.html +0 -127
  36. data/doc/Boris/Connector.html +0 -794
  37. data/doc/Boris/InvalidCredentials.html +0 -131
  38. data/doc/Boris/InvalidOption.html +0 -123
  39. data/doc/Boris/InvalidTargetName.html +0 -123
  40. data/doc/Boris/Lumberjack.html +0 -466
  41. data/doc/Boris/MissingCredentials.html +0 -123
  42. data/doc/Boris/NoActiveConnection.html +0 -123
  43. data/doc/Boris/NoProfileDetected.html +0 -123
  44. data/doc/Boris/Options.html +0 -783
  45. data/doc/Boris/Profiles.html +0 -117
  46. data/doc/Boris/Profiles/Linux.html +0 -1151
  47. data/doc/Boris/Profiles/RedHat.html +0 -875
  48. data/doc/Boris/Profiles/Solaris.html +0 -1230
  49. data/doc/Boris/Profiles/Structure.html +0 -2050
  50. data/doc/Boris/Profiles/UNIX.html +0 -893
  51. data/doc/Boris/Profiles/Windows.html +0 -1846
  52. data/doc/Boris/Profiles/Windows/Windows2003.html +0 -304
  53. data/doc/Boris/Profiles/Windows/Windows2008.html +0 -379
  54. data/doc/Boris/Profiles/Windows/Windows2012.html +0 -304
  55. data/doc/Boris/SNMPConnector.html +0 -512
  56. data/doc/Boris/SSHConnector.html +0 -633
  57. data/doc/Boris/Target.html +0 -2002
  58. data/doc/Boris/WMIConnector.html +0 -1134
  59. data/doc/BorisLogger.html +0 -217
  60. data/doc/Hash.html +0 -195
  61. data/doc/String.html +0 -1246
  62. data/doc/_index.html +0 -420
  63. data/doc/class_list.html +0 -53
  64. data/doc/css/common.css +0 -1
  65. data/doc/css/full_list.css +0 -57
  66. data/doc/css/style.css +0 -328
  67. data/doc/file.README.html +0 -183
  68. data/doc/file_list.html +0 -55
  69. data/doc/frames.html +0 -28
  70. data/doc/index.html +0 -183
  71. data/doc/js/app.js +0 -214
  72. data/doc/js/full_list.js +0 -173
  73. data/doc/js/jquery.js +0 -4
  74. data/doc/method_list.html +0 -1468
  75. data/doc/top-level-namespace.html +0 -126
  76. data/lib/boris/profiles/linux/redhat.rb +0 -77
  77. data/lib/boris/profiles/windows/windows2003.rb +0 -15
  78. data/lib/boris/profiles/windows/windows2008.rb +0 -23
  79. data/lib/boris/profiles/windows/windows2012.rb +0 -15
  80. data/test/connector_tests/test_snmp.rb +0 -35
  81. data/test/connector_tests/test_ssh.rb +0 -51
  82. data/test/connector_tests/test_wmi.rb +0 -129
  83. data/test/helper_tests/test_array.rb +0 -25
  84. data/test/helper_tests/test_hash.rb +0 -10
  85. data/test/helper_tests/test_string.rb +0 -136
  86. data/test/profile_tests/test_core_skeleton +0 -107
  87. data/test/profile_tests/test_linux_core.rb +0 -331
  88. data/test/profile_tests/test_redhat.rb +0 -134
  89. data/test/profile_tests/test_solaris.rb +0 -523
  90. data/test/profile_tests/test_unix_core.rb +0 -117
  91. data/test/profile_tests/test_windows.rb +0 -536
  92. data/test/setup_tests.rb +0 -14
  93. data/test/test_all.rb +0 -8
  94. data/test/test_options.rb +0 -44
  95. data/test/test_structure.rb +0 -136
  96. data/test/test_target.rb +0 -146
@@ -1,123 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- <title>
7
- Exception: Boris::MissingCredentials
8
-
9
- &mdash; Documentation by YARD 0.8.3
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '../';
20
- framesUrl = "../frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="../_index.html">Index (M)</a> &raquo;
35
- <span class='title'><span class='object_link'><a href="../Boris.html" title="Boris (module)">Boris</a></span></span>
36
- &raquo;
37
- <span class="title">MissingCredentials</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a class="full_list_link" id="class_list_link"
46
- href="../class_list.html">
47
- Class List
48
- </a>
49
-
50
- <a class="full_list_link" id="method_list_link"
51
- href="../method_list.html">
52
- Method List
53
- </a>
54
-
55
- <a class="full_list_link" id="file_list_link"
56
- href="../file_list.html">
57
- File List
58
- </a>
59
-
60
- </div>
61
- <div class="clear"></div>
62
- </div>
63
-
64
- <iframe id="search_frame"></iframe>
65
-
66
- <div id="content"><h1>Exception: Boris::MissingCredentials
67
-
68
-
69
-
70
- </h1>
71
-
72
- <dl class="box">
73
-
74
- <dt class="r1">Inherits:</dt>
75
- <dd class="r1">
76
- <span class="inheritName">Exception</span>
77
-
78
- <ul class="fullTree">
79
- <li>Object</li>
80
-
81
- <li class="next">Exception</li>
82
-
83
- <li class="next">Boris::MissingCredentials</li>
84
-
85
- </ul>
86
- <a href="#" class="inheritanceTree">show all</a>
87
-
88
- </dd>
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
- <dt class="r2 last">Defined in:</dt>
99
- <dd class="r2 last">lib/boris/errors.rb</dd>
100
-
101
- </dl>
102
- <div class="clear"></div>
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
- </div>
115
-
116
- <div id="footer">
117
- Generated on Sun Feb 3 16:32:42 2013 by
118
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
119
- 0.8.3 (ruby-1.9.3).
120
- </div>
121
-
122
- </body>
123
- </html>
@@ -1,123 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- <title>
7
- Exception: Boris::NoActiveConnection
8
-
9
- &mdash; Documentation by YARD 0.8.3
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '../';
20
- framesUrl = "../frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="../_index.html">Index (N)</a> &raquo;
35
- <span class='title'><span class='object_link'><a href="../Boris.html" title="Boris (module)">Boris</a></span></span>
36
- &raquo;
37
- <span class="title">NoActiveConnection</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a class="full_list_link" id="class_list_link"
46
- href="../class_list.html">
47
- Class List
48
- </a>
49
-
50
- <a class="full_list_link" id="method_list_link"
51
- href="../method_list.html">
52
- Method List
53
- </a>
54
-
55
- <a class="full_list_link" id="file_list_link"
56
- href="../file_list.html">
57
- File List
58
- </a>
59
-
60
- </div>
61
- <div class="clear"></div>
62
- </div>
63
-
64
- <iframe id="search_frame"></iframe>
65
-
66
- <div id="content"><h1>Exception: Boris::NoActiveConnection
67
-
68
-
69
-
70
- </h1>
71
-
72
- <dl class="box">
73
-
74
- <dt class="r1">Inherits:</dt>
75
- <dd class="r1">
76
- <span class="inheritName">StandardError</span>
77
-
78
- <ul class="fullTree">
79
- <li>Object</li>
80
-
81
- <li class="next">StandardError</li>
82
-
83
- <li class="next">Boris::NoActiveConnection</li>
84
-
85
- </ul>
86
- <a href="#" class="inheritanceTree">show all</a>
87
-
88
- </dd>
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
- <dt class="r2 last">Defined in:</dt>
99
- <dd class="r2 last">lib/boris/errors.rb</dd>
100
-
101
- </dl>
102
- <div class="clear"></div>
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
- </div>
115
-
116
- <div id="footer">
117
- Generated on Sun Feb 3 16:32:42 2013 by
118
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
119
- 0.8.3 (ruby-1.9.3).
120
- </div>
121
-
122
- </body>
123
- </html>
@@ -1,123 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- <title>
7
- Exception: Boris::NoProfileDetected
8
-
9
- &mdash; Documentation by YARD 0.8.3
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '../';
20
- framesUrl = "../frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="../_index.html">Index (N)</a> &raquo;
35
- <span class='title'><span class='object_link'><a href="../Boris.html" title="Boris (module)">Boris</a></span></span>
36
- &raquo;
37
- <span class="title">NoProfileDetected</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a class="full_list_link" id="class_list_link"
46
- href="../class_list.html">
47
- Class List
48
- </a>
49
-
50
- <a class="full_list_link" id="method_list_link"
51
- href="../method_list.html">
52
- Method List
53
- </a>
54
-
55
- <a class="full_list_link" id="file_list_link"
56
- href="../file_list.html">
57
- File List
58
- </a>
59
-
60
- </div>
61
- <div class="clear"></div>
62
- </div>
63
-
64
- <iframe id="search_frame"></iframe>
65
-
66
- <div id="content"><h1>Exception: Boris::NoProfileDetected
67
-
68
-
69
-
70
- </h1>
71
-
72
- <dl class="box">
73
-
74
- <dt class="r1">Inherits:</dt>
75
- <dd class="r1">
76
- <span class="inheritName">StandardError</span>
77
-
78
- <ul class="fullTree">
79
- <li>Object</li>
80
-
81
- <li class="next">StandardError</li>
82
-
83
- <li class="next">Boris::NoProfileDetected</li>
84
-
85
- </ul>
86
- <a href="#" class="inheritanceTree">show all</a>
87
-
88
- </dd>
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
- <dt class="r2 last">Defined in:</dt>
99
- <dd class="r2 last">lib/boris/errors.rb</dd>
100
-
101
- </dl>
102
- <div class="clear"></div>
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
- </div>
115
-
116
- <div id="footer">
117
- Generated on Sun Feb 3 16:32:42 2013 by
118
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
119
- 0.8.3 (ruby-1.9.3).
120
- </div>
121
-
122
- </body>
123
- </html>
@@ -1,783 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- <title>
7
- Class: Boris::Options
8
-
9
- &mdash; Documentation by YARD 0.8.3
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '../';
20
- framesUrl = "../frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="../_index.html">Index (O)</a> &raquo;
35
- <span class='title'><span class='object_link'><a href="../Boris.html" title="Boris (module)">Boris</a></span></span>
36
- &raquo;
37
- <span class="title">Options</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a class="full_list_link" id="class_list_link"
46
- href="../class_list.html">
47
- Class List
48
- </a>
49
-
50
- <a class="full_list_link" id="method_list_link"
51
- href="../method_list.html">
52
- Method List
53
- </a>
54
-
55
- <a class="full_list_link" id="file_list_link"
56
- href="../file_list.html">
57
- File List
58
- </a>
59
-
60
- </div>
61
- <div class="clear"></div>
62
- </div>
63
-
64
- <iframe id="search_frame"></iframe>
65
-
66
- <div id="content"><h1>Class: Boris::Options
67
-
68
-
69
-
70
- </h1>
71
-
72
- <dl class="box">
73
-
74
- <dt class="r1">Inherits:</dt>
75
- <dd class="r1">
76
- <span class="inheritName">Object</span>
77
-
78
- <ul class="fullTree">
79
- <li>Object</li>
80
-
81
- <li class="next">Boris::Options</li>
82
-
83
- </ul>
84
- <a href="#" class="inheritanceTree">show all</a>
85
-
86
- </dd>
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
- <dt class="r2 last">Defined in:</dt>
97
- <dd class="r2 last">lib/boris/options.rb</dd>
98
-
99
- </dl>
100
- <div class="clear"></div>
101
-
102
-
103
-
104
-
105
-
106
- <h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
107
- <ul class="summary">
108
-
109
- <li class="public ">
110
- <span class="summary_signature">
111
-
112
- <a href="#options-instance_method" title="#options (instance method)">- (Object) <strong>options</strong> </a>
113
-
114
-
115
-
116
- </span>
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
-
128
-
129
- <span class="summary_desc"><div class='inline'>
130
- <p>Returns the value of attribute options.</p>
131
- </div></span>
132
-
133
- </li>
134
-
135
-
136
- </ul>
137
-
138
-
139
-
140
-
141
-
142
- <h2>
143
- Instance Method Summary
144
- <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
145
- </h2>
146
-
147
- <ul class="summary">
148
-
149
- <li class="public ">
150
- <span class="summary_signature">
151
-
152
- <a href="#%5B%5D-instance_method" title="#[] (instance method)">- (Object) <strong>[]</strong>(key) </a>
153
-
154
-
155
-
156
- </span>
157
-
158
-
159
-
160
-
161
-
162
-
163
-
164
-
165
-
166
- <span class="summary_desc"><div class='inline'>
167
- <p>Getter method for grabbing a value from the Options.</p>
168
- </div></span>
169
-
170
- </li>
171
-
172
-
173
- <li class="public ">
174
- <span class="summary_signature">
175
-
176
- <a href="#%5B%5D%3D-instance_method" title="#[]= (instance method)">- (Object) <strong>[]=</strong>(key, val) </a>
177
-
178
-
179
-
180
- </span>
181
-
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
-
190
- <span class="summary_desc"><div class='inline'>
191
- <p>Setter method for setting the value in the options hash.</p>
192
- </div></span>
193
-
194
- </li>
195
-
196
-
197
- <li class="public ">
198
- <span class="summary_signature">
199
-
200
- <a href="#add_credential-instance_method" title="#add_credential (instance method)">- (Object) <strong>add_credential</strong>(cred) </a>
201
-
202
-
203
-
204
- </span>
205
-
206
-
207
-
208
-
209
-
210
-
211
-
212
-
213
-
214
- <span class="summary_desc"><div class='inline'>
215
- <p>Provides a simple mechanism for adding credentials to the credentials array
216
- of Options.</p>
217
- </div></span>
218
-
219
- </li>
220
-
221
-
222
- <li class="public ">
223
- <span class="summary_signature">
224
-
225
- <a href="#initialize-instance_method" title="#initialize (instance method)">- (Options) <strong>initialize</strong>(options = {}) </a>
226
-
227
-
228
-
229
- </span>
230
-
231
-
232
- <span class="note title constructor">constructor</span>
233
-
234
-
235
-
236
-
237
-
238
-
239
-
240
-
241
- <span class="summary_desc"><div class='inline'>
242
- <p>Creates our options hash where the user can pass in an optional hash to
243
- immediately override the default values.</p>
244
- </div></span>
245
-
246
- </li>
247
-
248
-
249
- </ul>
250
-
251
-
252
- <div id="constructor_details" class="method_details_list">
253
- <h2>Constructor Details</h2>
254
-
255
- <div class="method_details first">
256
- <h3 class="signature first" id="initialize-instance_method">
257
-
258
- - (<tt><span class='object_link'><a href="" title="Boris::Options (class)">Options</a></span></tt>) <strong>initialize</strong>(options = {})
259
-
260
-
261
-
262
-
263
-
264
- </h3><div class="docstring">
265
- <div class="discussion">
266
-
267
- <p>Creates our options hash where the user can pass in an optional hash to
268
- immediately override the default values.</p>
269
-
270
- <pre class="code ruby"><code><span class='id identifier rubyid_credentials'>credentials</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='lbrace'>{</span><span class='symbol'>:user</span><span class='op'>=&gt;</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>joe</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='symbol'>:password</span><span class='op'>=&gt;</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mypassword</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='symbol'>:connection_types</span><span class='op'>=&gt;</span><span class='lbracket'>[</span><span class='symbol'>:ssh</span><span class='comma'>,</span> <span class='symbol'>:wmi</span><span class='rbracket'>]</span><span class='rbrace'>}</span><span class='rbracket'>]</span>
271
- <span class='id identifier rubyid_ssh_keys'>ssh_keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/home/joe/private_key</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span>
272
- <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='const'>Boris</span><span class='op'>::</span><span class='const'>Options</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:log_level</span><span class='op'>=&gt;</span><span class='symbol'>:debug</span><span class='comma'>,</span> <span class='symbol'>:ssh_options</span><span class='op'>=&gt;</span><span class='lbrace'>{</span><span class='symbol'>:keys</span><span class='op'>=&gt;</span><span class='id identifier rubyid_ssh_keys'>ssh_keys</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='symbol'>:credentials</span><span class='op'>=&gt;</span><span class='id identifier rubyid_credentials'>credentials</span><span class='rparen'>)</span></code></pre>
273
-
274
-
275
- </div>
276
- </div>
277
- <div class="tags">
278
- <p class="tag_title">Parameters:</p>
279
- <ul class="param">
280
-
281
- <li>
282
-
283
- <span class='name'>options</span>
284
-
285
-
286
- <span class='type'>(<tt><span class='object_link'><a href="../Hash.html" title="Hash (class)">Hash</a></span></tt>)</span>
287
-
288
-
289
- <em class="default">(defaults to: <tt>{}</tt>)</em>
290
-
291
-
292
- &mdash;
293
- <div class='inline'>
294
- <p>a customizable set of options</p>
295
- </div>
296
-
297
- </li>
298
-
299
- </ul>
300
-
301
-
302
-
303
-
304
- <p class="tag_title">Options Hash (<tt>options</tt>):</p>
305
- <ul class="option">
306
-
307
- <li>
308
- <span class="name">:auto_scrub_data</span>
309
- <span class="type">(<tt>Boolean</tt>)</span>
310
- <span class="default">
311
-
312
- </span>
313
-
314
- &mdash; <div class='inline'>
315
- <p>should the target's data be scrubbed after running #retrieve_all?</p>
316
- </div>
317
-
318
- </li>
319
-
320
- <li>
321
- <span class="name">:credentials</span>
322
- <span class="type">(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
323
- <span class="default">
324
-
325
- </span>
326
-
327
- &mdash; <div class='inline'>
328
- <p>an array of credentials in the format of <tt>:user</tt>,
329
- <tt>:password</tt>, <tt>:connection_types</tt>. Only <tt>:user</tt> is
330
- mandatory.</p>
331
- </div>
332
-
333
- </li>
334
-
335
- <li>
336
- <span class="name">:log_level</span>
337
- <span class="type">(<tt>Symbol</tt>)</span>
338
- <span class="default">
339
-
340
- </span>
341
-
342
- &mdash; <div class='inline'>
343
- <p>The level of logging. Options are: <tt>:debug</tt>, <tt>:info</tt>,
344
- <tt>:warn</tt>, <tt>:error</tt>, <tt>:fatal (default)</tt></p>
345
- </div>
346
-
347
- </li>
348
-
349
- <li>
350
- <span class="name">profiles</span>
351
- <span class="type">(<tt><span class='object_link'><a href="../Array.html" title="Array (class)">Array</a></span></tt>)</span>
352
- <span class="default">
353
-
354
- </span>
355
-
356
- &mdash; <div class='inline'>
357
- <p>An array of module names of the profiles we wish to have available for use
358
- on this target. <span class='object_link'><a href="Profiles/RedHat.html" title="Boris::Profiles::RedHat (module)">Profiles::RedHat</a></span> and <span class='object_link'><a href="Profiles/Solaris.html" title="Boris::Profiles::Solaris (module)">Profiles::Solaris</a></span> are
359
- always the defaults, and Windows profiles are included as defaults as well
360
- if <span class='object_link'><a href="../Boris.html" title="Boris (module)">Boris</a></span> is running on a Windows host (where WMI connections are
361
- available)</p>
362
- </div>
363
-
364
- </li>
365
-
366
- <li>
367
- <span class="name">snmp_options</span>
368
- <span class="type">(<tt><span class='object_link'><a href="../Hash.html" title="Hash (class)">Hash</a></span></tt>)</span>
369
- <span class="default">
370
-
371
- </span>
372
-
373
- &mdash; <div class='inline'>
374
- <p>A hash of options supported by ruby-snmp.</p>
375
- </div>
376
-
377
- </li>
378
-
379
- <li>
380
- <span class="name">ssh_options</span>
381
- <span class="type">(<tt><span class='object_link'><a href="../Hash.html" title="Hash (class)">Hash</a></span></tt>)</span>
382
- <span class="default">
383
-
384
- </span>
385
-
386
- &mdash; <div class='inline'>
387
- <p>A hash of options supported by net-ssh.</p>
388
- </div>
389
-
390
- </li>
391
-
392
- </ul>
393
-
394
-
395
- <p class="tag_title">Raises:</p>
396
- <ul class="raise">
397
-
398
- <li>
399
-
400
-
401
- <span class='type'></span>
402
-
403
-
404
-
405
-
406
- <div class='inline'>
407
- <p>ArgumentError when invalid arguments are passed</p>
408
- </div>
409
-
410
- </li>
411
-
412
- </ul>
413
-
414
- </div><table class="source_code">
415
- <tr>
416
- <td>
417
- <pre class="lines">
418
-
419
-
420
- 27
421
- 28
422
- 29
423
- 30
424
- 31
425
- 32
426
- 33
427
- 34
428
- 35
429
- 36
430
- 37
431
- 38
432
- 39
433
- 40
434
- 41
435
- 42
436
- 43
437
- 44
438
- 45
439
- 46</pre>
440
- </td>
441
- <td>
442
- <pre class="code"><span class="info file"># File 'lib/boris/options.rb', line 27</span>
443
-
444
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
445
- <span class='ivar'>@options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
446
-
447
- <span class='comment'># set our defaults
448
- </span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:auto_scrub_data</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='kw'>true</span>
449
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:credentials</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
450
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:log_level</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='symbol'>:fatal</span>
451
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:profiles</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='lbracket'>[</span><span class='const'>Profiles</span><span class='op'>::</span><span class='const'>RedHat</span><span class='comma'>,</span> <span class='const'>Profiles</span><span class='op'>::</span><span class='const'>Solaris</span><span class='rbracket'>]</span>
452
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:profiles</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='const'>Profiles</span><span class='op'>::</span><span class='const'>Windows</span><span class='op'>::</span><span class='const'>Windows2003</span><span class='comma'>,</span> <span class='const'>Profiles</span><span class='op'>::</span><span class='const'>Windows</span><span class='op'>::</span><span class='const'>Windows2008</span><span class='comma'>,</span> <span class='const'>Profiles</span><span class='op'>::</span><span class='const'>Windows</span><span class='op'>::</span><span class='const'>Windows2012</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='const'>PLATFORM</span> <span class='op'>==</span> <span class='symbol'>:win32</span>
453
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:snmp_options</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
454
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:ssh_options</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
455
-
456
- <span class='id identifier rubyid_invalid_options'>invalid_options</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span> <span class='op'>-</span> <span class='ivar'>@options</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span>
457
- <span class='kw'>if</span> <span class='id identifier rubyid_invalid_options'>invalid_options</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
458
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>invalid options specified (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_invalid_options'>invalid_options</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>, </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='tstring_content'>)</span><span class='tstring_end'>&quot;</span></span>
459
- <span class='kw'>end</span>
460
-
461
- <span class='comment'># override the defaults with passed in Options
462
- </span> <span class='ivar'>@options</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
463
- <span class='kw'>end</span></pre>
464
- </td>
465
- </tr>
466
- </table>
467
- </div>
468
-
469
- </div>
470
-
471
- <div id="instance_attr_details" class="attr_details">
472
- <h2>Instance Attribute Details</h2>
473
-
474
-
475
- <span id="options=-instance_method"></span>
476
- <div class="method_details first">
477
- <h3 class="signature first" id="options-instance_method">
478
-
479
- - (<tt>Object</tt>) <strong>options</strong>
480
-
481
-
482
-
483
-
484
-
485
- </h3><div class="docstring">
486
- <div class="discussion">
487
-
488
- <p>Returns the value of attribute options</p>
489
-
490
-
491
- </div>
492
- </div>
493
- <div class="tags">
494
-
495
-
496
- </div><table class="source_code">
497
- <tr>
498
- <td>
499
- <pre class="lines">
500
-
501
-
502
- 3
503
- 4
504
- 5</pre>
505
- </td>
506
- <td>
507
- <pre class="code"><span class="info file"># File 'lib/boris/options.rb', line 3</span>
508
-
509
- <span class='kw'>def</span> <span class='id identifier rubyid_options'>options</span>
510
- <span class='ivar'>@options</span>
511
- <span class='kw'>end</span></pre>
512
- </td>
513
- </tr>
514
- </table>
515
- </div>
516
-
517
- </div>
518
-
519
-
520
- <div id="instance_method_details" class="method_details_list">
521
- <h2>Instance Method Details</h2>
522
-
523
-
524
- <div class="method_details first">
525
- <h3 class="signature first" id="[]-instance_method">
526
-
527
- - (<tt>Object</tt>) <strong>[]</strong>(key)
528
-
529
-
530
-
531
-
532
-
533
- </h3><div class="docstring">
534
- <div class="discussion">
535
-
536
- <p>Getter method for grabbing a value from the Options.</p>
537
-
538
- <pre class="code ruby"><code><span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:log_level</span><span class='rbracket'>]</span> <span class='comment'>#=&gt; :debug</span></code></pre>
539
-
540
-
541
- </div>
542
- </div>
543
- <div class="tags">
544
- <p class="tag_title">Parameters:</p>
545
- <ul class="param">
546
-
547
- <li>
548
-
549
- <span class='name'>key</span>
550
-
551
-
552
- <span class='type'></span>
553
-
554
-
555
-
556
- &mdash;
557
- <div class='inline'>
558
- <p>symbol of the key-value pair</p>
559
- </div>
560
-
561
- </li>
562
-
563
- </ul>
564
-
565
- <p class="tag_title">Returns:</p>
566
- <ul class="return">
567
-
568
- <li>
569
-
570
-
571
- <span class='type'></span>
572
-
573
-
574
-
575
-
576
- <div class='inline'>
577
- <p>returns the value of specified key from Options</p>
578
- </div>
579
-
580
- </li>
581
-
582
- </ul>
583
-
584
- </div><table class="source_code">
585
- <tr>
586
- <td>
587
- <pre class="lines">
588
-
589
-
590
- 53
591
- 54
592
- 55</pre>
593
- </td>
594
- <td>
595
- <pre class="code"><span class="info file"># File 'lib/boris/options.rb', line 53</span>
596
-
597
- <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
598
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span>
599
- <span class='kw'>end</span></pre>
600
- </td>
601
- </tr>
602
- </table>
603
- </div>
604
-
605
- <div class="method_details ">
606
- <h3 class="signature " id="[]=-instance_method">
607
-
608
- - (<tt>Object</tt>) <strong>[]=</strong>(key, val)
609
-
610
-
611
-
612
-
613
-
614
- </h3><div class="docstring">
615
- <div class="discussion">
616
-
617
- <p>Setter method for setting the value in the options hash</p>
618
-
619
- <pre class="code ruby"><code><span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:log_level</span><span class='rbracket'>]</span> <span class='comment'>#=&gt; :debug
620
- </span><span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:log_level</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='symbol'>:info</span>
621
- <span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:log_level</span><span class='rbracket'>]</span> <span class='comment'>#=&gt; :info</span></code></pre>
622
-
623
-
624
- </div>
625
- </div>
626
- <div class="tags">
627
-
628
- <p class="tag_title">Raises:</p>
629
- <ul class="raise">
630
-
631
- <li>
632
-
633
-
634
- <span class='type'></span>
635
-
636
-
637
-
638
-
639
- <div class='inline'>
640
- <p>ArgumentError when invalid options are provided</p>
641
- </div>
642
-
643
- </li>
644
-
645
- </ul>
646
-
647
- </div><table class="source_code">
648
- <tr>
649
- <td>
650
- <pre class="lines">
651
-
652
-
653
- 62
654
- 63
655
- 64
656
- 65</pre>
657
- </td>
658
- <td>
659
- <pre class="code"><span class="info file"># File 'lib/boris/options.rb', line 62</span>
660
-
661
- <span class='kw'>def</span> <span class='op'>[]=</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_val'>val</span><span class='rparen'>)</span>
662
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>invalid option provided</span><span class='tstring_end'>'</span></span> <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@options</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
663
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_val'>val</span>
664
- <span class='kw'>end</span></pre>
665
- </td>
666
- </tr>
667
- </table>
668
- </div>
669
-
670
- <div class="method_details ">
671
- <h3 class="signature " id="add_credential-instance_method">
672
-
673
- - (<tt>Object</tt>) <strong>add_credential</strong>(cred)
674
-
675
-
676
-
677
-
678
-
679
- </h3><div class="docstring">
680
- <div class="discussion">
681
-
682
- <p>Provides a simple mechanism for adding credentials to the credentials array
683
- of Options.</p>
684
-
685
-
686
- </div>
687
- </div>
688
- <div class="tags">
689
- <p class="tag_title">Parameters:</p>
690
- <ul class="param">
691
-
692
- <li>
693
-
694
- <span class='name'>cred</span>
695
-
696
-
697
- <span class='type'>(<tt><span class='object_link'><a href="../Hash.html" title="Hash (class)">Hash</a></span></tt>)</span>
698
-
699
-
700
-
701
- &mdash;
702
- <div class='inline'>
703
- <p>a credential hash. Values include <tt>:user</tt>, <tt>:password</tt>, and
704
- <tt>:connection_types</tt>. <tt>:user</tt> is mandatory, and
705
- <tt>:connection_types</tt> should be an Array.</p>
706
- </div>
707
-
708
- </li>
709
-
710
- </ul>
711
-
712
- <p class="tag_title">Raises:</p>
713
- <ul class="raise">
714
-
715
- <li>
716
-
717
-
718
- <span class='type'></span>
719
-
720
-
721
-
722
-
723
- <div class='inline'>
724
- <p>ArgumentError when invalid credentials or connection_types are supplied</p>
725
- </div>
726
-
727
- </li>
728
-
729
- </ul>
730
-
731
- </div><table class="source_code">
732
- <tr>
733
- <td>
734
- <pre class="lines">
735
-
736
-
737
- 72
738
- 73
739
- 74
740
- 75
741
- 76
742
- 77
743
- 78
744
- 79
745
- 80
746
- 81
747
- 82
748
- 83
749
- 84</pre>
750
- </td>
751
- <td>
752
- <pre class="code"><span class="info file"># File 'lib/boris/options.rb', line 72</span>
753
-
754
- <span class='kw'>def</span> <span class='id identifier rubyid_add_credential'>add_credential</span><span class='lparen'>(</span><span class='id identifier rubyid_cred'>cred</span><span class='rparen'>)</span>
755
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>invalid credential supplied (must be Hash)</span><span class='tstring_end'>'</span></span> <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_cred'>cred</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
756
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>username required</span><span class='tstring_end'>'</span></span> <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_cred'>cred</span><span class='lbracket'>[</span><span class='symbol'>:user</span><span class='rbracket'>]</span>
757
-
758
- <span class='id identifier rubyid_cred'>cred</span><span class='lbracket'>[</span><span class='symbol'>:connection_types</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='const'>VALID_CONNECTION_TYPES</span>
759
-
760
- <span class='id identifier rubyid_invalid_options'>invalid_options</span> <span class='op'>=</span> <span class='id identifier rubyid_cred'>cred</span><span class='lbracket'>[</span><span class='symbol'>:connection_types</span><span class='rbracket'>]</span> <span class='op'>-</span> <span class='const'>VALID_CONNECTION_TYPES</span>
761
- <span class='kw'>if</span> <span class='id identifier rubyid_invalid_options'>invalid_options</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
762
- <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>invalid connection method specified (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_invalid_options'>invalid_options</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>, </span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='tstring_content'>)</span><span class='tstring_end'>&quot;</span></span>
763
- <span class='kw'>end</span>
764
-
765
- <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:credentials</span><span class='rbracket'>]</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_cred'>cred</span> <span class='kw'>unless</span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:credentials</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_cred'>cred</span><span class='rparen'>)</span>
766
- <span class='kw'>end</span></pre>
767
- </td>
768
- </tr>
769
- </table>
770
- </div>
771
-
772
- </div>
773
-
774
- </div>
775
-
776
- <div id="footer">
777
- Generated on Sun Feb 3 16:32:42 2013 by
778
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
779
- 0.8.3 (ruby-1.9.3).
780
- </div>
781
-
782
- </body>
783
- </html>