choria-mcorpc-support 2.24.3 → 2.24.4

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.
@@ -2,7 +2,7 @@ metadata :name => "choria_util",
2
2
  :description => "Choria Utilities",
3
3
  :author => "R.I.Pienaar <rip@devco.net>",
4
4
  :license => "Apache-2.0",
5
- :version => "0.19.0",
5
+ :version => "0.22.0",
6
6
  :url => "https://choria.io",
7
7
  :timeout => 2
8
8
 
@@ -14,66 +14,82 @@ action "info", :description => "Choria related information from the running Daem
14
14
 
15
15
  output :choria_version,
16
16
  :description => "Choria version",
17
+ :type => "string",
17
18
  :display_as => "Choria Version"
18
19
 
19
20
  output :client_flavour,
20
- :description => "Middleware client gem flavour",
21
+ :description => "Middleware client library flavour",
22
+ :type => "string",
21
23
  :display_as => "Middleware Client Flavour"
22
24
 
23
25
  output :client_options,
24
- :description => "Active Middleware client gem options",
26
+ :description => "Active Middleware client options",
27
+ :type => "hash",
25
28
  :display_as => "Middleware Client Options"
26
29
 
27
30
  output :client_stats,
28
- :description => "Middleware client gem statistics",
31
+ :description => "Middleware client statistics",
32
+ :type => "hash",
29
33
  :display_as => "Middleware Client Stats"
30
34
 
31
35
  output :client_version,
32
36
  :description => "Middleware client library version",
37
+ :type => "string",
33
38
  :display_as => "Middleware Client Library Version"
34
39
 
35
40
  output :connected_server,
36
41
  :description => "Connected middleware server",
42
+ :type => "string",
37
43
  :display_as => "Connected Broker"
38
44
 
39
45
  output :connector,
40
46
  :description => "Connector plugin",
47
+ :type => "string",
41
48
  :display_as => "Connector"
42
49
 
43
50
  output :connector_tls,
44
51
  :description => "If the connector is running with TLS security enabled",
52
+ :type => "boolean",
45
53
  :display_as => "Connector TLS"
46
54
 
47
55
  output :facter_command,
48
56
  :description => "Command used for Facter",
57
+ :type => "string",
49
58
  :display_as => "Facter"
50
59
 
51
60
  output :facter_domain,
52
61
  :description => "Facter domain",
62
+ :type => "string",
53
63
  :display_as => "Facter Domain"
54
64
 
55
65
  output :middleware_servers,
56
66
  :description => "Middleware Servers configured or discovered",
67
+ :type => "array",
57
68
  :display_as => "Middleware"
58
69
 
59
70
  output :path,
60
71
  :description => "Active OS PATH",
72
+ :type => "string",
61
73
  :display_as => "Path"
62
74
 
63
75
  output :secure_protocol,
64
76
  :description => "If the protocol is running with PKI security enabled",
77
+ :type => "boolean",
65
78
  :display_as => "Protocol Secure"
66
79
 
67
80
  output :security,
68
81
  :description => "Security Provider plugin",
82
+ :type => "string",
69
83
  :display_as => "Security Provider"
70
84
 
71
85
  output :srv_domain,
72
86
  :description => "Configured SRV domain",
87
+ :type => "string",
73
88
  :display_as => "SRV Domain"
74
89
 
75
90
  output :using_srv,
76
91
  :description => "Indicates if SRV records are considered",
92
+ :type => "boolean",
77
93
  :display_as => "SRV Used"
78
94
 
79
95
  summarize do
@@ -178,14 +194,17 @@ action "machine_states", :description => "States of the hosted Choria Autonomous
178
194
 
179
195
  output :machine_ids,
180
196
  :description => "List of running machine IDs",
197
+ :type => "array",
181
198
  :display_as => "Machine IDs"
182
199
 
183
200
  output :machine_names,
184
201
  :description => "List of running machine names",
202
+ :type => "array",
185
203
  :display_as => "Machine Names"
186
204
 
187
205
  output :states,
188
206
  :description => "Hash map of machine statusses indexed by machine ID",
207
+ :type => "hash",
189
208
  :display_as => "Machine States"
190
209
 
191
210
  summarize do
@@ -245,6 +264,7 @@ action "machine_transition", :description => "Attempts to force a transition in
245
264
 
246
265
  output :success,
247
266
  :description => "Indicates if the transition was successfully accepted",
267
+ :type => "boolean",
248
268
  :display_as => "Accepted"
249
269
 
250
270
  end
@@ -5,7 +5,7 @@
5
5
  "description": "Choria Utilities",
6
6
  "author": "R.I.Pienaar <rip@devco.net>",
7
7
  "license": "Apache-2.0",
8
- "version": "0.19.0",
8
+ "version": "0.22.0",
9
9
  "url": "https://choria.io",
10
10
  "timeout": 2
11
11
  },
@@ -18,82 +18,82 @@
18
18
  "security": {
19
19
  "description": "Security Provider plugin",
20
20
  "display_as": "Security Provider",
21
- "default": null
21
+ "type": "string"
22
22
  },
23
23
  "secure_protocol": {
24
24
  "description": "If the protocol is running with PKI security enabled",
25
25
  "display_as": "Protocol Secure",
26
- "default": null
26
+ "type": "boolean"
27
27
  },
28
28
  "connector": {
29
29
  "description": "Connector plugin",
30
30
  "display_as": "Connector",
31
- "default": null
31
+ "type": "string"
32
32
  },
33
33
  "connector_tls": {
34
34
  "description": "If the connector is running with TLS security enabled",
35
35
  "display_as": "Connector TLS",
36
- "default": null
36
+ "type": "boolean"
37
37
  },
38
38
  "path": {
39
39
  "description": "Active OS PATH",
40
40
  "display_as": "Path",
41
- "default": null
41
+ "type": "string"
42
42
  },
43
43
  "choria_version": {
44
44
  "description": "Choria version",
45
45
  "display_as": "Choria Version",
46
- "default": null
46
+ "type": "string"
47
47
  },
48
48
  "client_version": {
49
49
  "description": "Middleware client library version",
50
50
  "display_as": "Middleware Client Library Version",
51
- "default": null
51
+ "type": "string"
52
52
  },
53
53
  "client_flavour": {
54
- "description": "Middleware client gem flavour",
54
+ "description": "Middleware client library flavour",
55
55
  "display_as": "Middleware Client Flavour",
56
- "default": null
56
+ "type": "string"
57
57
  },
58
58
  "client_options": {
59
- "description": "Active Middleware client gem options",
59
+ "description": "Active Middleware client options",
60
60
  "display_as": "Middleware Client Options",
61
- "default": null
61
+ "type": "hash"
62
62
  },
63
63
  "connected_server": {
64
64
  "description": "Connected middleware server",
65
65
  "display_as": "Connected Broker",
66
- "default": null
66
+ "type": "string"
67
67
  },
68
68
  "client_stats": {
69
- "description": "Middleware client gem statistics",
69
+ "description": "Middleware client statistics",
70
70
  "display_as": "Middleware Client Stats",
71
- "default": null
71
+ "type": "hash"
72
72
  },
73
73
  "facter_domain": {
74
74
  "description": "Facter domain",
75
75
  "display_as": "Facter Domain",
76
- "default": null
76
+ "type": "string"
77
77
  },
78
78
  "facter_command": {
79
79
  "description": "Command used for Facter",
80
80
  "display_as": "Facter",
81
- "default": null
81
+ "type": "string"
82
82
  },
83
83
  "srv_domain": {
84
84
  "description": "Configured SRV domain",
85
85
  "display_as": "SRV Domain",
86
- "default": null
86
+ "type": "string"
87
87
  },
88
88
  "using_srv": {
89
89
  "description": "Indicates if SRV records are considered",
90
90
  "display_as": "SRV Used",
91
- "default": null
91
+ "type": "boolean"
92
92
  },
93
93
  "middleware_servers": {
94
94
  "description": "Middleware Servers configured or discovered",
95
95
  "display_as": "Middleware",
96
- "default": null
96
+ "type": "array"
97
97
  }
98
98
  },
99
99
  "display": "failed",
@@ -257,17 +257,17 @@
257
257
  "machine_names": {
258
258
  "description": "List of running machine names",
259
259
  "display_as": "Machine Names",
260
- "default": null
260
+ "type": "array"
261
261
  },
262
262
  "machine_ids": {
263
263
  "description": "List of running machine IDs",
264
264
  "display_as": "Machine IDs",
265
- "default": null
265
+ "type": "array"
266
266
  },
267
267
  "states": {
268
268
  "description": "Hash map of machine statusses indexed by machine ID",
269
269
  "display_as": "Machine States",
270
- "default": null
270
+ "type": "hash"
271
271
  }
272
272
  },
273
273
  "display": "always",
@@ -334,7 +334,7 @@
334
334
  "success": {
335
335
  "description": "Indicates if the transition was successfully accepted",
336
336
  "display_as": "Accepted",
337
- "default": null
337
+ "type": "boolean"
338
338
  }
339
339
  },
340
340
  "display": "failed",
@@ -1,224 +1,283 @@
1
- metadata :name => "rpcutil",
2
- :description => "General helpful actions that expose stats and internals to SimpleRPC clients",
3
- :author => "R.I.Pienaar <rip@devco.net>",
4
- :license => "Apache License, Version 2.0",
5
- :version => "0.19.0",
6
- :url => "https://choria.io/",
7
- :timeout => 2
8
-
9
- action "collective_info", :description => "Info about the main and sub collectives" do
10
- display :always
11
-
12
- output :main_collective,
13
- :description => "The main Collective",
14
- :display_as => "Main Collective"
15
-
16
- output :collectives,
17
- :description => "All Collectives",
18
- :display_as => "All Collectives"
19
-
20
- summarize do
21
- aggregate summary(:collectives)
22
- end
23
- end
1
+ metadata :name => "rpcutil",
2
+ :description => "Utility actions that expose information about the state of the running Server",
3
+ :author => "R.I.Pienaar <rip@devco.net>",
4
+ :license => "Apache-2.0",
5
+ :version => "0.22.0",
6
+ :url => "https://choria.io/",
7
+ :timeout => 2
24
8
 
25
- action "inventory", :description => "System Inventory" do
26
- display :always
27
9
 
28
- output :agents,
29
- :description => "List of agent names",
30
- :display_as => "Agents"
10
+ action "agent_inventory", :description => "Inventory of all agents on the server including versions, licenses and more" do
11
+ display :always
31
12
 
32
- output :facts,
33
- :description => "List of facts and values",
34
- :display_as => "Facts"
35
13
 
36
- output :classes,
37
- :description => "List of classes on the system",
38
- :display_as => "Classes"
39
14
 
40
- output :version,
41
- :description => "MCollective Version",
42
- :display_as => "Version"
15
+ output :agents,
16
+ :description => "List of agents on the server",
17
+ :type => "array",
18
+ :display_as => "Agents"
43
19
 
44
- output :main_collective,
45
- :description => "The main Collective",
46
- :display_as => "Main Collective"
20
+ end
47
21
 
48
- output :collectives,
49
- :description => "All Collectives",
50
- :display_as => "All Collectives"
22
+ action "collective_info", :description => "Info about the main and sub collectives that the server belongs to" do
23
+ display :always
51
24
 
52
- output :data_plugins,
53
- :description => "List of data plugin names",
54
- :display_as => "Data Plugins"
55
25
 
56
- output :machines,
57
- :description => "Autonomous Agents",
58
- :display_as => "Machines"
59
- end
60
26
 
61
- action "get_fact", :description => "Retrieve a single fact from the fact store" do
62
- display :always
63
-
64
- input :fact,
65
- :prompt => "The name of the fact",
66
- :description => "The fact to retrieve",
67
- :type => :string,
68
- :validation => '.+',
69
- :optional => false,
70
- :maxlength => 512
71
-
72
- output :fact,
73
- :description => "The name of the fact being returned",
74
- :display_as => "Fact"
75
-
76
- output :value,
77
- :description => "The value of the fact",
78
- :display_as => "Value"
79
-
80
- summarize do
81
- aggregate summary(:value)
82
- end
83
- end
27
+ output :collectives,
28
+ :description => "All Collectives",
29
+ :type => "array",
30
+ :display_as => "All Collectives"
84
31
 
85
- action "get_facts", :description => "Retrieve multiple facts from the fact store" do
86
- display :always
87
-
88
- input :facts,
89
- :prompt => "Comma-separated list of facts",
90
- :description => "Facts to retrieve",
91
- :type => :string,
92
- :validation => '^\s*[\w\.\-]+(\s*,\s*[\w\.\-]+)*$',
93
- :optional => false,
94
- :maxlength => 200
95
-
96
- output :values,
97
- :description => "List of values of the facts",
98
- :display_as => "Values"
32
+ output :main_collective,
33
+ :description => "The main Collective",
34
+ :type => "string",
35
+ :display_as => "Main Collective"
36
+
37
+ summarize do
38
+ aggregate summary(:collectives)
39
+ end
99
40
  end
100
41
 
101
42
  action "daemon_stats", :description => "Get statistics from the running daemon" do
102
- display :always
43
+ display :always
44
+
45
+
46
+
47
+ output :agents,
48
+ :description => "List of agents loaded",
49
+ :type => "array",
50
+ :display_as => "Agents"
51
+
52
+ output :configfile,
53
+ :description => "Config file used to start the daemon",
54
+ :type => "string",
55
+ :display_as => "Config File"
56
+
57
+ output :filtered,
58
+ :description => "Count of message that didn't pass filter checks",
59
+ :type => "integer",
60
+ :display_as => "Failed Filter"
61
+
62
+ output :passed,
63
+ :description => "Count of messages that passed filter checks",
64
+ :type => "integer",
65
+ :display_as => "Passed Filter"
66
+
67
+ output :pid,
68
+ :description => "Process ID of the Choria Server",
69
+ :type => "integer",
70
+ :display_as => "PID"
71
+
72
+ output :replies,
73
+ :description => "Count of replies sent back to clients",
74
+ :type => "integer",
75
+ :display_as => "Replies"
76
+
77
+ output :starttime,
78
+ :description => "Time the Choria Server started in unix seconds",
79
+ :type => "integer",
80
+ :display_as => "Start Time"
81
+
82
+ output :threads,
83
+ :description => "List of threads active in the Choria Server",
84
+ :type => "array",
85
+ :display_as => "Threads"
86
+
87
+ output :times,
88
+ :description => "Processor time consumed by the Choria Server",
89
+ :type => "hash",
90
+ :display_as => "Times"
91
+
92
+ output :total,
93
+ :description => "Count of messages received by the Choria Server",
94
+ :type => "integer",
95
+ :display_as => "Total Messages"
96
+
97
+ output :ttlexpired,
98
+ :description => "Count of messages that did pass TTL checks",
99
+ :type => "integer",
100
+ :display_as => "TTL Expired"
101
+
102
+ output :unvalidated,
103
+ :description => "Count of messages that failed security validation",
104
+ :type => "integer",
105
+ :display_as => "Failed Security"
106
+
107
+ output :validated,
108
+ :description => "Count of messages that passed security validation",
109
+ :type => "integer",
110
+ :display_as => "Security Validated"
111
+
112
+ output :version,
113
+ :description => "Choria Server Version",
114
+ :type => "string",
115
+ :display_as => "Version"
116
+
117
+ summarize do
118
+ aggregate summary(:version)
119
+ aggregate summary(:agents)
120
+ end
121
+ end
103
122
 
104
- output :threads,
105
- :description => "List of threads active in the daemon",
106
- :display_as => "Threads"
123
+ action "get_config_item", :description => "Get the active value of a specific config property" do
124
+ display :always
107
125
 
108
- output :agents,
109
- :description => "List of agents loaded",
110
- :display_as => "Agents"
126
+ input :item,
127
+ :prompt => "Configuration Item",
128
+ :description => "The item to retrieve from the server",
129
+ :type => :string,
130
+ :validation => '^.+$',
131
+ :maxlength => 120,
132
+ :optional => false
111
133
 
112
- output :pid,
113
- :description => "Process ID of the daemon",
114
- :display_as => "PID"
115
134
 
116
- output :times,
117
- :description => "Processor time consumed by the daemon",
118
- :display_as => "Times"
119
135
 
120
- output :validated,
121
- :description => "Messages that passed security validation",
122
- :display_as => "Security Validated"
123
136
 
124
- output :unvalidated,
125
- :description => "Messages that failed security validation",
126
- :display_as => "Failed Security"
137
+ output :item,
138
+ :description => "The config property being retrieved",
139
+ :type => "string",
140
+ :display_as => "Property"
127
141
 
128
- output :passed,
129
- :description => "Passed filter checks",
130
- :display_as => "Passed Filter"
142
+ output :value,
143
+ :description => "The value that is in use",
144
+ :display_as => "Value"
131
145
 
132
- output :filtered,
133
- :description => "Didn't pass filter checks",
134
- :display_as => "Failed Filter"
146
+ summarize do
147
+ aggregate summary(:value)
148
+ end
149
+ end
135
150
 
136
- output :starttime,
137
- :description => "Time the server started",
138
- :display_as => "Start Time"
151
+ action "get_data", :description => "Get data from a data plugin" do
152
+ display :always
139
153
 
140
- output :total,
141
- :description => "Total messages received",
142
- :display_as => "Total Messages"
154
+ input :query,
155
+ :prompt => "Query",
156
+ :description => "The query argument to supply to the data plugin",
157
+ :type => :string,
158
+ :validation => '^.+$',
159
+ :maxlength => 200,
160
+ :optional => true
143
161
 
144
- output :replies,
145
- :description => "Replies sent back to clients",
146
- :display_as => "Replies"
147
162
 
148
- output :configfile,
149
- :description => "Config file used to start the daemon",
150
- :display_as => "Config File"
163
+ input :source,
164
+ :prompt => "Data Source",
165
+ :description => "The data plugin to retrieve information from",
166
+ :type => :string,
167
+ :validation => '^\w+$',
168
+ :maxlength => 50,
169
+ :optional => false
170
+
151
171
 
152
- output :version,
153
- :description => "MCollective Version",
154
- :display_as => "Version"
155
172
 
156
- output :ttlexpired,
157
- :description => "Messages that did pass TTL checks",
158
- :display_as => "TTL Expired"
159
173
 
160
- summarize do
161
- aggregate summary(:version)
162
- aggregate summary(:agents)
163
- end
164
174
  end
165
175
 
166
- action "agent_inventory", :description => "Inventory of all agents on the server" do
167
- display :always
176
+ action "get_fact", :description => "Retrieve a single fact from the fact store" do
177
+ display :always
178
+
179
+ input :fact,
180
+ :prompt => "The name of the fact",
181
+ :description => "The fact to retrieve",
182
+ :type => :string,
183
+ :validation => '.+',
184
+ :maxlength => 512,
185
+ :optional => false
186
+
187
+
188
+
168
189
 
169
- output :agents,
170
- :description => "List of agents on the server",
171
- :display_as => "Agents"
190
+ output :fact,
191
+ :description => "The name of the fact being returned",
192
+ :type => "string",
193
+ :display_as => "Fact"
194
+
195
+ output :value,
196
+ :description => "The value of the fact",
197
+ :display_as => "Value"
198
+
199
+ summarize do
200
+ aggregate summary(:value)
201
+ end
172
202
  end
173
203
 
174
- action "get_config_item", :description => "Get the active value of a specific config property" do
175
- display :always
176
-
177
- input :item,
178
- :prompt => "Configuration Item",
179
- :description => "The item to retrieve from the server",
180
- :type => :string,
181
- :validation => '^.+$',
182
- :optional => false,
183
- :maxlength => 50
184
-
185
- output :item,
186
- :description => "The config property being retrieved",
187
- :display_as => "Property"
188
-
189
- output :value,
190
- :description => "The value that is in use",
191
- :display_as => "Value"
192
-
193
- summarize do
194
- aggregate summary(:value)
195
- end
204
+ action "get_facts", :description => "Retrieve multiple facts from the fact store" do
205
+ display :always
206
+
207
+ input :facts,
208
+ :prompt => "Comma-separated list of facts to retrieve",
209
+ :description => "Facts to retrieve",
210
+ :type => :string,
211
+ :validation => '^\s*[\w\.\-]+(\s*,\s*[\w\.\-]+)*$',
212
+ :maxlength => 200,
213
+ :optional => false
214
+
215
+
216
+
217
+
218
+ output :values,
219
+ :description => "List of values of the facts",
220
+ :type => "hash",
221
+ :display_as => "Values"
222
+
196
223
  end
197
224
 
198
- action "get_data", :description => "Get data from a data plugin" do
199
- display :always
200
-
201
- input :source,
202
- :prompt => "Data Source",
203
- :description => "The data plugin to retrieve information from",
204
- :type => :string,
205
- :validation => '^\w+$',
206
- :optional => false,
207
- :maxlength => 50
208
-
209
- input :query,
210
- :prompt => "Query",
211
- :description => "The query argument to supply to the data plugin",
212
- :type => :string,
213
- :validation => '^.+$',
214
- :optional => true,
215
- :maxlength => 200
225
+ action "inventory", :description => "System Inventory" do
226
+ display :always
227
+
228
+
229
+
230
+ output :agents,
231
+ :description => "List of agent names",
232
+ :type => "array",
233
+ :display_as => "Agents"
234
+
235
+ output :classes,
236
+ :description => "List of classes on the system",
237
+ :type => "array",
238
+ :display_as => "Classes"
239
+
240
+ output :collectives,
241
+ :description => "All Collectives",
242
+ :type => "array",
243
+ :display_as => "All Collectives"
244
+
245
+ output :data_plugins,
246
+ :description => "List of data plugin names",
247
+ :type => "array",
248
+ :display_as => "Data Plugins"
249
+
250
+ output :facts,
251
+ :description => "List of facts and values",
252
+ :type => "hash",
253
+ :display_as => "Facts"
254
+
255
+ output :machines,
256
+ :description => "Autonomous Agents",
257
+ :type => "hash",
258
+ :display_as => "Machines"
259
+
260
+ output :main_collective,
261
+ :description => "The main Collective",
262
+ :type => "string",
263
+ :display_as => "Main Collective"
264
+
265
+ output :version,
266
+ :description => "Choria Server Version",
267
+ :type => "string",
268
+ :display_as => "Version"
269
+
216
270
  end
217
271
 
218
272
  action "ping", :description => "Responds to requests for PING with PONG" do
219
- display :always
273
+ display :always
274
+
275
+
276
+
277
+ output :pong,
278
+ :description => "The local Unix timestamp",
279
+ :type => "string",
280
+ :display_as => "Timestamp"
220
281
 
221
- output :pong,
222
- :description => "The local timestamp",
223
- :display_as => "Timestamp"
224
282
  end
283
+