dkron-ruby 1.0.0
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.
- checksums.yaml +7 -0
- data/DEVELOP.md +596 -0
- data/Gemfile +7 -0
- data/Gemfile.lock +69 -0
- data/README.md +99 -0
- data/Rakefile +8 -0
- data/dkron-ruby.gemspec +45 -0
- data/docs/DefaultApi.md +131 -0
- data/docs/Execution.md +13 -0
- data/docs/ExecutionsApi.md +55 -0
- data/docs/Job.md +28 -0
- data/docs/JobsApi.md +295 -0
- data/docs/Member.md +18 -0
- data/docs/MembersApi.md +49 -0
- data/docs/Processors.md +7 -0
- data/docs/Status.md +10 -0
- data/git_push.sh +55 -0
- data/lib/dkron-ruby.rb +48 -0
- data/lib/dkron-ruby/api/default_api.rb +161 -0
- data/lib/dkron-ruby/api/executions_api.rb +75 -0
- data/lib/dkron-ruby/api/jobs_api.rb +335 -0
- data/lib/dkron-ruby/api/members_api.rb +69 -0
- data/lib/dkron-ruby/api_client.rb +390 -0
- data/lib/dkron-ruby/api_error.rb +38 -0
- data/lib/dkron-ruby/configuration.rb +202 -0
- data/lib/dkron-ruby/models/execution.rb +236 -0
- data/lib/dkron-ruby/models/job.rb +403 -0
- data/lib/dkron-ruby/models/member.rb +288 -0
- data/lib/dkron-ruby/models/processors.rb +176 -0
- data/lib/dkron-ruby/models/status.rb +206 -0
- data/lib/dkron-ruby/version.rb +15 -0
- data/spec/api/default_api_spec.rb +65 -0
- data/spec/api/executions_api_spec.rb +46 -0
- data/spec/api/jobs_api_spec.rb +102 -0
- data/spec/api/members_api_spec.rb +45 -0
- data/spec/api_client_spec.rb +243 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/execution_spec.rb +71 -0
- data/spec/models/job_spec.rb +161 -0
- data/spec/models/member_spec.rb +101 -0
- data/spec/models/processors_spec.rb +35 -0
- data/spec/models/status_spec.rb +53 -0
- data/spec/spec_helper.rb +111 -0
- metadata +283 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: e5c1c99c506acf44fdfc8106efba2d1067446d699aa80ddee769fcb21ba0ea09
|
4
|
+
data.tar.gz: d72e1d5baf17941b8921f43a36ce95ad538c04d77dadad68e093fbb593361719
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ef40c019dff315153acb9661085188c753694b11c5253695a4331765f9c9dda7e913e12ba1f700daf31dd944aa3e384bfc927a1908783480c9a6b43eb898da5a
|
7
|
+
data.tar.gz: 735161cefbe15f060dcf3cc120e8ba375831d62d9e9d978e69a4aab271c503b1281b183e660955e5ddda570855e965a811bc2ce1b3dd4c0e401fe365bbc16439
|
data/DEVELOP.md
ADDED
@@ -0,0 +1,596 @@
|
|
1
|
+
`POST` to https://generator.swagger.io/api/gen/clients/ruby
|
2
|
+
```json
|
3
|
+
{
|
4
|
+
"options":{
|
5
|
+
"gemName":"dkron-ruby",
|
6
|
+
"moduleName":"Dkron"
|
7
|
+
},
|
8
|
+
"spec":{
|
9
|
+
"swagger":"2.0",
|
10
|
+
"basePath":"/v1",
|
11
|
+
"host":"localhost:8080",
|
12
|
+
"consumes":[
|
13
|
+
"application/json"
|
14
|
+
],
|
15
|
+
"produces":[
|
16
|
+
"application/json"
|
17
|
+
],
|
18
|
+
"schemes":[
|
19
|
+
"http"
|
20
|
+
],
|
21
|
+
"info":{
|
22
|
+
"version":"2.2",
|
23
|
+
"title":"Dkron REST API",
|
24
|
+
"description":"You can communicate with Dkron using a RESTful JSON API over HTTP. Dkron nodes usually listen on port `8080` for API requests. All examples in this section assume that you've found a running leader at `localhost:8080`.\n\nDkron implements a RESTful JSON API over HTTP to communicate with software clients. Dkron listens in port `8080` by default. All examples in this section assume that you're using the default port.\n\nDefault API responses are unformatted JSON add the `pretty=true` param to format the response.\n"
|
25
|
+
},
|
26
|
+
"paths":{
|
27
|
+
"/":{
|
28
|
+
"get":{
|
29
|
+
"description":"Gets `Status` object.\n",
|
30
|
+
"operationId":"status",
|
31
|
+
"tags":[
|
32
|
+
"default"
|
33
|
+
],
|
34
|
+
"responses":{
|
35
|
+
"200":{
|
36
|
+
"description":"Successful response",
|
37
|
+
"schema":{
|
38
|
+
"$ref":"#/definitions/status"
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
},
|
44
|
+
"/jobs":{
|
45
|
+
"get":{
|
46
|
+
"description":"List jobs.\n",
|
47
|
+
"parameters":[
|
48
|
+
{
|
49
|
+
"in":"query",
|
50
|
+
"name":"metadata",
|
51
|
+
"type":"array",
|
52
|
+
"collectionFormat":"multi",
|
53
|
+
"items":{
|
54
|
+
"type":"string"
|
55
|
+
},
|
56
|
+
"description":"Filter jobs by metadata"
|
57
|
+
}
|
58
|
+
],
|
59
|
+
"operationId":"getJobs",
|
60
|
+
"tags":[
|
61
|
+
"jobs"
|
62
|
+
],
|
63
|
+
"responses":{
|
64
|
+
"200":{
|
65
|
+
"description":"Successful response",
|
66
|
+
"schema":{
|
67
|
+
"type":"array",
|
68
|
+
"items":{
|
69
|
+
"$ref":"#/definitions/job"
|
70
|
+
}
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
},
|
75
|
+
"post":{
|
76
|
+
"description":"Create or updates a new job.\n",
|
77
|
+
"operationId":"createOrUpdateJob",
|
78
|
+
"tags":[
|
79
|
+
"jobs"
|
80
|
+
],
|
81
|
+
"parameters":[
|
82
|
+
{
|
83
|
+
"in":"body",
|
84
|
+
"name":"body",
|
85
|
+
"description":"Updated job object",
|
86
|
+
"required":true,
|
87
|
+
"schema":{
|
88
|
+
"$ref":"#/definitions/job"
|
89
|
+
}
|
90
|
+
},
|
91
|
+
{
|
92
|
+
"in":"query",
|
93
|
+
"name":"runoncreate",
|
94
|
+
"description":"If present, regardless of any value, causes the job to be run immediately after being succesfully created or updated.",
|
95
|
+
"required":false,
|
96
|
+
"schema":{
|
97
|
+
"type":"boolean"
|
98
|
+
},
|
99
|
+
"allowEmptyValue":true
|
100
|
+
}
|
101
|
+
],
|
102
|
+
"responses":{
|
103
|
+
"201":{
|
104
|
+
"description":"Successful response",
|
105
|
+
"schema":{
|
106
|
+
"$ref":"#/definitions/job"
|
107
|
+
}
|
108
|
+
}
|
109
|
+
}
|
110
|
+
}
|
111
|
+
},
|
112
|
+
"/jobs/{job_name}":{
|
113
|
+
"get":{
|
114
|
+
"description":"Show a job.\n",
|
115
|
+
"operationId":"showJobByName",
|
116
|
+
"tags":[
|
117
|
+
"jobs"
|
118
|
+
],
|
119
|
+
"parameters":[
|
120
|
+
{
|
121
|
+
"in":"path",
|
122
|
+
"name":"job_name",
|
123
|
+
"description":"The job that needs to be fetched.",
|
124
|
+
"required":true,
|
125
|
+
"type":"string"
|
126
|
+
}
|
127
|
+
],
|
128
|
+
"responses":{
|
129
|
+
"200":{
|
130
|
+
"description":"Successful response",
|
131
|
+
"schema":{
|
132
|
+
"$ref":"#/definitions/job"
|
133
|
+
}
|
134
|
+
}
|
135
|
+
}
|
136
|
+
},
|
137
|
+
"delete":{
|
138
|
+
"description":"Delete a job.\n",
|
139
|
+
"operationId":"deleteJob",
|
140
|
+
"tags":[
|
141
|
+
"jobs"
|
142
|
+
],
|
143
|
+
"parameters":[
|
144
|
+
{
|
145
|
+
"in":"path",
|
146
|
+
"name":"job_name",
|
147
|
+
"description":"The job that needs to be deleted.",
|
148
|
+
"required":true,
|
149
|
+
"type":"string"
|
150
|
+
}
|
151
|
+
],
|
152
|
+
"responses":{
|
153
|
+
"200":{
|
154
|
+
"description":"Successful response",
|
155
|
+
"schema":{
|
156
|
+
"$ref":"#/definitions/job"
|
157
|
+
}
|
158
|
+
}
|
159
|
+
}
|
160
|
+
},
|
161
|
+
"post":{
|
162
|
+
"description":"Executes a job.\n",
|
163
|
+
"operationId":"runJob",
|
164
|
+
"tags":[
|
165
|
+
"jobs"
|
166
|
+
],
|
167
|
+
"parameters":[
|
168
|
+
{
|
169
|
+
"in":"path",
|
170
|
+
"name":"job_name",
|
171
|
+
"description":"The job that needs to be run.",
|
172
|
+
"required":true,
|
173
|
+
"type":"string"
|
174
|
+
}
|
175
|
+
],
|
176
|
+
"responses":{
|
177
|
+
"202":{
|
178
|
+
"description":"Successful response",
|
179
|
+
"schema":{
|
180
|
+
"$ref":"#/definitions/job"
|
181
|
+
}
|
182
|
+
}
|
183
|
+
}
|
184
|
+
}
|
185
|
+
},
|
186
|
+
"/jobs/{job_name}/toggle":{
|
187
|
+
"post":{
|
188
|
+
"description":"Toggle a job.\n",
|
189
|
+
"operationId":"toggleJob",
|
190
|
+
"tags":[
|
191
|
+
"jobs"
|
192
|
+
],
|
193
|
+
"parameters":[
|
194
|
+
{
|
195
|
+
"in":"path",
|
196
|
+
"name":"job_name",
|
197
|
+
"description":"The job that needs to be toggled.",
|
198
|
+
"required":true,
|
199
|
+
"type":"string"
|
200
|
+
}
|
201
|
+
],
|
202
|
+
"responses":{
|
203
|
+
"200":{
|
204
|
+
"description":"Successful response",
|
205
|
+
"schema":{
|
206
|
+
"$ref":"#/definitions/job"
|
207
|
+
}
|
208
|
+
}
|
209
|
+
}
|
210
|
+
}
|
211
|
+
},
|
212
|
+
"/members":{
|
213
|
+
"get":{
|
214
|
+
"description":"List members.\n",
|
215
|
+
"operationId":"getMember",
|
216
|
+
"tags":[
|
217
|
+
"members"
|
218
|
+
],
|
219
|
+
"responses":{
|
220
|
+
"200":{
|
221
|
+
"description":"Successful response",
|
222
|
+
"schema":{
|
223
|
+
"type":"array",
|
224
|
+
"items":{
|
225
|
+
"$ref":"#/definitions/member"
|
226
|
+
}
|
227
|
+
}
|
228
|
+
}
|
229
|
+
}
|
230
|
+
}
|
231
|
+
},
|
232
|
+
"/leader":{
|
233
|
+
"get":{
|
234
|
+
"description":"List leader of cluster.\n",
|
235
|
+
"operationId":"getLeader",
|
236
|
+
"tags":[
|
237
|
+
"default"
|
238
|
+
],
|
239
|
+
"responses":{
|
240
|
+
"200":{
|
241
|
+
"description":"Successful response",
|
242
|
+
"schema":{
|
243
|
+
"$ref":"#/definitions/member"
|
244
|
+
}
|
245
|
+
}
|
246
|
+
}
|
247
|
+
}
|
248
|
+
},
|
249
|
+
"/leave":{
|
250
|
+
"post":{
|
251
|
+
"description":"Force the node to leave the cluster.\n",
|
252
|
+
"operationId":"leave",
|
253
|
+
"tags":[
|
254
|
+
"default"
|
255
|
+
],
|
256
|
+
"responses":{
|
257
|
+
"200":{
|
258
|
+
"description":"Successful response",
|
259
|
+
"schema":{
|
260
|
+
"type":"array",
|
261
|
+
"items":{
|
262
|
+
"$ref":"#/definitions/member"
|
263
|
+
}
|
264
|
+
}
|
265
|
+
}
|
266
|
+
}
|
267
|
+
}
|
268
|
+
},
|
269
|
+
"/jobs/{job_name}/executions":{
|
270
|
+
"get":{
|
271
|
+
"description":"List executions.\n",
|
272
|
+
"operationId":"listExecutionsByJob",
|
273
|
+
"tags":[
|
274
|
+
"executions"
|
275
|
+
],
|
276
|
+
"parameters":[
|
277
|
+
{
|
278
|
+
"in":"path",
|
279
|
+
"name":"job_name",
|
280
|
+
"description":"The job that owns the executions to be fetched.",
|
281
|
+
"required":true,
|
282
|
+
"type":"string"
|
283
|
+
}
|
284
|
+
],
|
285
|
+
"responses":{
|
286
|
+
"200":{
|
287
|
+
"description":"Successful response",
|
288
|
+
"schema":{
|
289
|
+
"type":"array",
|
290
|
+
"items":{
|
291
|
+
"$ref":"#/definitions/execution"
|
292
|
+
}
|
293
|
+
}
|
294
|
+
}
|
295
|
+
}
|
296
|
+
}
|
297
|
+
}
|
298
|
+
},
|
299
|
+
"definitions":{
|
300
|
+
"status":{
|
301
|
+
"type":"object",
|
302
|
+
"description":"Status represents details about the node.",
|
303
|
+
"readOnly":true,
|
304
|
+
"properties":{
|
305
|
+
"agent":{
|
306
|
+
"description":"Node basic details",
|
307
|
+
"readOnly":true,
|
308
|
+
"additionalProperties":{
|
309
|
+
"type":"object"
|
310
|
+
}
|
311
|
+
},
|
312
|
+
"serf":{
|
313
|
+
"description":"Serf status",
|
314
|
+
"readOnly":true,
|
315
|
+
"additionalProperties":{
|
316
|
+
"type":"object"
|
317
|
+
}
|
318
|
+
},
|
319
|
+
"tags":{
|
320
|
+
"description":"Tags asociated with this node",
|
321
|
+
"readOnly":true,
|
322
|
+
"additionalProperties":{
|
323
|
+
"type":"string"
|
324
|
+
}
|
325
|
+
}
|
326
|
+
}
|
327
|
+
},
|
328
|
+
"job":{
|
329
|
+
"type":"object",
|
330
|
+
"description":"A Job represents a scheduled task to execute.",
|
331
|
+
"required":[
|
332
|
+
"name",
|
333
|
+
"schedule"
|
334
|
+
],
|
335
|
+
"properties":{
|
336
|
+
"name":{
|
337
|
+
"type":"string",
|
338
|
+
"description":"Name for the job.",
|
339
|
+
"readOnly":false,
|
340
|
+
"example":"job1"
|
341
|
+
},
|
342
|
+
"displayname":{
|
343
|
+
"type":"string",
|
344
|
+
"description":"Nice name for the job. Optional.",
|
345
|
+
"readOnly":false
|
346
|
+
},
|
347
|
+
"schedule":{
|
348
|
+
"type":"string",
|
349
|
+
"description":"Cron expression for the job.",
|
350
|
+
"readOnly":false,
|
351
|
+
"example":"@every 10s"
|
352
|
+
},
|
353
|
+
"timezone":{
|
354
|
+
"type":"string",
|
355
|
+
"description":"Timezone where the job will be executed. By default and when field is set to empty string, the job will run in local time.",
|
356
|
+
"readOnly":false,
|
357
|
+
"example":"Europe/Berlin"
|
358
|
+
},
|
359
|
+
"owner":{
|
360
|
+
"type":"string",
|
361
|
+
"description":"Owner of the job",
|
362
|
+
"readOnly":false,
|
363
|
+
"example":"Platform Team"
|
364
|
+
},
|
365
|
+
"owner_email":{
|
366
|
+
"type":"string",
|
367
|
+
"description":"Email of the owner",
|
368
|
+
"readOnly":false,
|
369
|
+
"example":"platform@example.com"
|
370
|
+
},
|
371
|
+
"success_count":{
|
372
|
+
"type":"integer",
|
373
|
+
"description":"Number of successful executions",
|
374
|
+
"readOnly":true
|
375
|
+
},
|
376
|
+
"error_count":{
|
377
|
+
"type":"integer",
|
378
|
+
"description":"Number of failed executions",
|
379
|
+
"readOnly":true
|
380
|
+
},
|
381
|
+
"last_success":{
|
382
|
+
"type":"string",
|
383
|
+
"format":"date-time",
|
384
|
+
"description":"Last time this job executed successfully",
|
385
|
+
"readOnly":true
|
386
|
+
},
|
387
|
+
"last_error":{
|
388
|
+
"type":"string",
|
389
|
+
"format":"date-time",
|
390
|
+
"description":"Last time this job failed",
|
391
|
+
"readOnly":true
|
392
|
+
},
|
393
|
+
"disabled":{
|
394
|
+
"type":"boolean",
|
395
|
+
"description":"Disabled state of the job",
|
396
|
+
"readOnly":false
|
397
|
+
},
|
398
|
+
"tags":{
|
399
|
+
"type":"object",
|
400
|
+
"description":"Target nodes tags of this job",
|
401
|
+
"additionalProperties":{
|
402
|
+
"type":"string"
|
403
|
+
},
|
404
|
+
"readOnly":false,
|
405
|
+
"example":{
|
406
|
+
"server":"true"
|
407
|
+
}
|
408
|
+
},
|
409
|
+
"metadata":{
|
410
|
+
"type":"object",
|
411
|
+
"description":"Extra metadata tags for this job",
|
412
|
+
"additionalProperties":{
|
413
|
+
"type":"string"
|
414
|
+
},
|
415
|
+
"readOnly":false,
|
416
|
+
"example":{
|
417
|
+
"office":"Barcelona"
|
418
|
+
}
|
419
|
+
},
|
420
|
+
"retries":{
|
421
|
+
"type":"integer",
|
422
|
+
"description":"Number of times to retry a failed job execution",
|
423
|
+
"example":2,
|
424
|
+
"readOnly":false
|
425
|
+
},
|
426
|
+
"parent_job":{
|
427
|
+
"type":"string",
|
428
|
+
"description":"The name/id of the job that will trigger the execution of this job",
|
429
|
+
"example":"parent_job",
|
430
|
+
"readOnly":false
|
431
|
+
},
|
432
|
+
"dependent_jobs":{
|
433
|
+
"type":"array",
|
434
|
+
"items":{
|
435
|
+
"type":"string"
|
436
|
+
},
|
437
|
+
"description":"Array containing the jobs that depends on this one",
|
438
|
+
"example":[
|
439
|
+
"dependent_job"
|
440
|
+
],
|
441
|
+
"readOnly":true
|
442
|
+
},
|
443
|
+
"processors":{
|
444
|
+
"$ref":"#/definitions/processors"
|
445
|
+
},
|
446
|
+
"concurrency":{
|
447
|
+
"type":"string",
|
448
|
+
"description":"Concurrency policy for the job allow/forbid",
|
449
|
+
"example":"allow",
|
450
|
+
"readOnly":false
|
451
|
+
},
|
452
|
+
"executor":{
|
453
|
+
"type":"string",
|
454
|
+
"description":"Executor plugin used to run the job",
|
455
|
+
"readOnly":false,
|
456
|
+
"example":"shell"
|
457
|
+
},
|
458
|
+
"executor_config":{
|
459
|
+
"type":"object",
|
460
|
+
"description":"Executor plugin parameters",
|
461
|
+
"additionalProperties":{
|
462
|
+
"type":"string"
|
463
|
+
},
|
464
|
+
"example":{
|
465
|
+
"command":"echo 'Hello from Dkron'"
|
466
|
+
}
|
467
|
+
},
|
468
|
+
"status":{
|
469
|
+
"type":"string",
|
470
|
+
"readOnly":true,
|
471
|
+
"description":"Status of the job",
|
472
|
+
"example":"success"
|
473
|
+
}
|
474
|
+
}
|
475
|
+
},
|
476
|
+
"member":{
|
477
|
+
"type":"object",
|
478
|
+
"description":"A member represents a cluster member node.",
|
479
|
+
"properties":{
|
480
|
+
"Name":{
|
481
|
+
"type":"string",
|
482
|
+
"description":"Node name",
|
483
|
+
"example":"dkron1"
|
484
|
+
},
|
485
|
+
"Addr":{
|
486
|
+
"type":"string",
|
487
|
+
"description":"IP Address",
|
488
|
+
"example":"192.168.1.137"
|
489
|
+
},
|
490
|
+
"Port":{
|
491
|
+
"type":"integer",
|
492
|
+
"description":"Port number",
|
493
|
+
"example":8946
|
494
|
+
},
|
495
|
+
"Tags":{
|
496
|
+
"type":"object",
|
497
|
+
"description":"Tags asociated with this node",
|
498
|
+
"additionalProperties":{
|
499
|
+
"type":"string"
|
500
|
+
},
|
501
|
+
"example":{
|
502
|
+
"rpc_addr":"192.168.1.137:6868",
|
503
|
+
"server":"true",
|
504
|
+
"version\"":"1.0.0"
|
505
|
+
}
|
506
|
+
},
|
507
|
+
"Status":{
|
508
|
+
"type":"integer",
|
509
|
+
"description":"The serf status of the node see: https://godoc.org/github.com/hashicorp/serf/serf#MemberStatus",
|
510
|
+
"example":1
|
511
|
+
},
|
512
|
+
"ProtocolMin":{
|
513
|
+
"type":"integer",
|
514
|
+
"description":"Serf protocol minimum version this node can understand or speak",
|
515
|
+
"example":5
|
516
|
+
},
|
517
|
+
"ProtocolMax":{
|
518
|
+
"type":"integer",
|
519
|
+
"description":"Serf protocol maximum version this node can understand or speak",
|
520
|
+
"example":2
|
521
|
+
},
|
522
|
+
"ProtocolCur":{
|
523
|
+
"type":"integer",
|
524
|
+
"description":"Serf protocol current version this node can understand or speak",
|
525
|
+
"example":2
|
526
|
+
},
|
527
|
+
"DelegateMin":{
|
528
|
+
"type":"integer",
|
529
|
+
"description":"Serf delegate protocol minimum version this node can understand or speak"
|
530
|
+
},
|
531
|
+
"DelegateMax":{
|
532
|
+
"type":"integer",
|
533
|
+
"description":"Serf delegate protocol maximum version this node can understand or speak",
|
534
|
+
"example":5
|
535
|
+
},
|
536
|
+
"DelegateCur":{
|
537
|
+
"type":"integer",
|
538
|
+
"description":"Serf delegate protocol current version this node can understand or speak",
|
539
|
+
"example":4
|
540
|
+
}
|
541
|
+
}
|
542
|
+
},
|
543
|
+
"execution":{
|
544
|
+
"type":"object",
|
545
|
+
"description":"An execution represents a timed job run.",
|
546
|
+
"properties":{
|
547
|
+
"job_name":{
|
548
|
+
"type":"string",
|
549
|
+
"description":"job name",
|
550
|
+
"example":"job_1"
|
551
|
+
},
|
552
|
+
"started_at":{
|
553
|
+
"type":"string",
|
554
|
+
"format":"date-time",
|
555
|
+
"description":"start time of the execution"
|
556
|
+
},
|
557
|
+
"finished_at":{
|
558
|
+
"type":"string",
|
559
|
+
"format":"date-time",
|
560
|
+
"description":"when the execution finished running"
|
561
|
+
},
|
562
|
+
"success":{
|
563
|
+
"type":"boolean",
|
564
|
+
"description":"the execution run successfuly"
|
565
|
+
},
|
566
|
+
"output":{
|
567
|
+
"type":"string",
|
568
|
+
"description":"partial output of the command execution",
|
569
|
+
"example":"Hello from Dkron"
|
570
|
+
},
|
571
|
+
"node_name":{
|
572
|
+
"type":"string",
|
573
|
+
"description":"name of the node that executed the command",
|
574
|
+
"example":"dkron1"
|
575
|
+
}
|
576
|
+
}
|
577
|
+
},
|
578
|
+
"processors":{
|
579
|
+
"type":"object",
|
580
|
+
"description":"Processor plugins used to process executions results of this job",
|
581
|
+
"additionalProperties":{
|
582
|
+
"type":"object",
|
583
|
+
"additionalProperties":{
|
584
|
+
"type":"string"
|
585
|
+
}
|
586
|
+
},
|
587
|
+
"example":{
|
588
|
+
"files":{
|
589
|
+
"forward":true
|
590
|
+
}
|
591
|
+
}
|
592
|
+
}
|
593
|
+
}
|
594
|
+
}
|
595
|
+
}
|
596
|
+
```
|