dkron-rb 0.9.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +65 -0
- data/LICENSE +201 -0
- data/README.md +98 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/config.json +5 -0
- data/dkron-rb-0.0.1.gem +0 -0
- data/dkron-rb-0.0.2.gem +0 -0
- data/dkron-rb.gemspec +55 -0
- data/docs/Agent.md +7 -0
- data/docs/DefaultApi.md +131 -0
- data/docs/Execution.md +13 -0
- data/docs/ExecutionsApi.md +55 -0
- data/docs/InlineResponse200.md +10 -0
- data/docs/Job.md +24 -0
- data/docs/JobsApi.md +237 -0
- data/docs/MainApi.md +90 -0
- data/docs/Member.md +18 -0
- data/docs/MembersApi.md +49 -0
- data/docs/Serf.md +7 -0
- data/docs/Status.md +7 -0
- data/docs/Tags.md +7 -0
- data/git_push.sh +67 -0
- data/lib/dkron-rb.rb +47 -0
- data/lib/dkron-rb/api/default_api.rb +193 -0
- data/lib/dkron-rb/api/executions_api.rb +91 -0
- data/lib/dkron-rb/api/jobs_api.rb +315 -0
- data/lib/dkron-rb/api/members_api.rb +87 -0
- data/lib/dkron-rb/api_client.rb +378 -0
- data/lib/dkron-rb/api_error.rb +47 -0
- data/lib/dkron-rb/configuration.rb +207 -0
- data/lib/dkron-rb/cron.rb +152 -0
- data/lib/dkron-rb/models/agent.rb +152 -0
- data/lib/dkron-rb/models/execution.rb +250 -0
- data/lib/dkron-rb/models/inline_response_200.rb +181 -0
- data/lib/dkron-rb/models/job.rb +369 -0
- data/lib/dkron-rb/models/member.rb +301 -0
- data/lib/dkron-rb/models/serf.rb +152 -0
- data/lib/dkron-rb/models/status.rb +190 -0
- data/lib/dkron-rb/models/tags.rb +152 -0
- data/lib/dkron-rb/numeric_seconds.rb +48 -0
- data/lib/dkron-rb/version.rb +26 -0
- data/lib/dkron.rb +9 -0
- data/pkg/dkron-rb-0.9.2.gem +0 -0
- data/seeds.rb +18 -0
- data/spec/api/default_api_spec.rb +80 -0
- data/spec/api/executions_api_spec.rb +51 -0
- data/spec/api/jobs_api_spec.rb +114 -0
- data/spec/api/main_api_spec.rb +65 -0
- data/spec/api/members_api_spec.rb +50 -0
- data/spec/api_client_spec.rb +237 -0
- data/spec/configuration_spec.rb +53 -0
- data/spec/models/agent_spec.rb +36 -0
- data/spec/models/execution_spec.rb +96 -0
- data/spec/models/inline_response_200_spec.rb +66 -0
- data/spec/models/job_spec.rb +186 -0
- data/spec/models/member_spec.rb +146 -0
- data/spec/models/serf_spec.rb +36 -0
- data/spec/models/status_spec.rb +36 -0
- data/spec/models/tags_spec.rb +36 -0
- data/spec/spec_helper.rb +122 -0
- metadata +309 -0
data/docs/Agent.md
ADDED
data/docs/DefaultApi.md
ADDED
@@ -0,0 +1,131 @@
|
|
1
|
+
# Dkron::DefaultApi
|
2
|
+
|
3
|
+
All URIs are relative to *http://localhost:8080/v1*
|
4
|
+
|
5
|
+
Method | HTTP request | Description
|
6
|
+
------------- | ------------- | -------------
|
7
|
+
[**get_leader**](DefaultApi.md#get_leader) | **GET** /leader |
|
8
|
+
[**leave**](DefaultApi.md#leave) | **GET** /leave |
|
9
|
+
[**status**](DefaultApi.md#status) | **GET** / |
|
10
|
+
|
11
|
+
|
12
|
+
# **get_leader**
|
13
|
+
> Member get_leader
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
List members.
|
18
|
+
|
19
|
+
### Example
|
20
|
+
```ruby
|
21
|
+
# load the gem
|
22
|
+
require 'dkron-rb'
|
23
|
+
|
24
|
+
api_instance = Dkron::DefaultApi.new
|
25
|
+
|
26
|
+
begin
|
27
|
+
result = api_instance.get_leader
|
28
|
+
p result
|
29
|
+
rescue Dkron::ApiError => e
|
30
|
+
puts "Exception when calling DefaultApi->get_leader: #{e}"
|
31
|
+
end
|
32
|
+
```
|
33
|
+
|
34
|
+
### Parameters
|
35
|
+
This endpoint does not need any parameter.
|
36
|
+
|
37
|
+
### Return type
|
38
|
+
|
39
|
+
[**Member**](Member.md)
|
40
|
+
|
41
|
+
### Authorization
|
42
|
+
|
43
|
+
No authorization required
|
44
|
+
|
45
|
+
### HTTP request headers
|
46
|
+
|
47
|
+
- **Content-Type**: application/json
|
48
|
+
- **Accept**: application/json
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
# **leave**
|
53
|
+
> Array<Member> leave
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
Force the node to leave the cluster.
|
58
|
+
|
59
|
+
### Example
|
60
|
+
```ruby
|
61
|
+
# load the gem
|
62
|
+
require 'dkron-rb'
|
63
|
+
|
64
|
+
api_instance = Dkron::DefaultApi.new
|
65
|
+
|
66
|
+
begin
|
67
|
+
result = api_instance.leave
|
68
|
+
p result
|
69
|
+
rescue Dkron::ApiError => e
|
70
|
+
puts "Exception when calling DefaultApi->leave: #{e}"
|
71
|
+
end
|
72
|
+
```
|
73
|
+
|
74
|
+
### Parameters
|
75
|
+
This endpoint does not need any parameter.
|
76
|
+
|
77
|
+
### Return type
|
78
|
+
|
79
|
+
[**Array<Member>**](Member.md)
|
80
|
+
|
81
|
+
### Authorization
|
82
|
+
|
83
|
+
No authorization required
|
84
|
+
|
85
|
+
### HTTP request headers
|
86
|
+
|
87
|
+
- **Content-Type**: application/json
|
88
|
+
- **Accept**: application/json
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
# **status**
|
93
|
+
> Status status
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
Gets `Status` object.
|
98
|
+
|
99
|
+
### Example
|
100
|
+
```ruby
|
101
|
+
# load the gem
|
102
|
+
require 'dkron-rb'
|
103
|
+
|
104
|
+
api_instance = Dkron::DefaultApi.new
|
105
|
+
|
106
|
+
begin
|
107
|
+
result = api_instance.status
|
108
|
+
p result
|
109
|
+
rescue Dkron::ApiError => e
|
110
|
+
puts "Exception when calling DefaultApi->status: #{e}"
|
111
|
+
end
|
112
|
+
```
|
113
|
+
|
114
|
+
### Parameters
|
115
|
+
This endpoint does not need any parameter.
|
116
|
+
|
117
|
+
### Return type
|
118
|
+
|
119
|
+
[**Status**](Status.md)
|
120
|
+
|
121
|
+
### Authorization
|
122
|
+
|
123
|
+
No authorization required
|
124
|
+
|
125
|
+
### HTTP request headers
|
126
|
+
|
127
|
+
- **Content-Type**: application/json
|
128
|
+
- **Accept**: application/json
|
129
|
+
|
130
|
+
|
131
|
+
|
data/docs/Execution.md
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
# Dkron::Execution
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
Name | Type | Description | Notes
|
5
|
+
------------ | ------------- | ------------- | -------------
|
6
|
+
**job_name** | **String** | job name | [optional]
|
7
|
+
**started_at** | **DateTime** | start time of the execution | [optional]
|
8
|
+
**finished_at** | **DateTime** | when the execution finished running | [optional]
|
9
|
+
**success** | **BOOLEAN** | the execution run successfuly | [optional]
|
10
|
+
**output** | **String** | partial output of the command execution | [optional]
|
11
|
+
**node_name** | **String** | name of the node that executed the command | [optional]
|
12
|
+
|
13
|
+
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# Dkron::ExecutionsApi
|
2
|
+
|
3
|
+
All URIs are relative to *http://localhost:8080/v1*
|
4
|
+
|
5
|
+
Method | HTTP request | Description
|
6
|
+
------------- | ------------- | -------------
|
7
|
+
[**list_executions_by_job**](ExecutionsApi.md#list_executions_by_job) | **GET** /executions/{job_name} |
|
8
|
+
|
9
|
+
|
10
|
+
# **list_executions_by_job**
|
11
|
+
> Array<Execution> list_executions_by_job(job_name)
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
List executions.
|
16
|
+
|
17
|
+
### Example
|
18
|
+
```ruby
|
19
|
+
# load the gem
|
20
|
+
require 'dkron-rb'
|
21
|
+
|
22
|
+
api_instance = Dkron::ExecutionsApi.new
|
23
|
+
|
24
|
+
job_name = "job_name_example" # String | The job that owns the executions to be fetched.
|
25
|
+
|
26
|
+
|
27
|
+
begin
|
28
|
+
result = api_instance.list_executions_by_job(job_name)
|
29
|
+
p result
|
30
|
+
rescue Dkron::ApiError => e
|
31
|
+
puts "Exception when calling ExecutionsApi->list_executions_by_job: #{e}"
|
32
|
+
end
|
33
|
+
```
|
34
|
+
|
35
|
+
### Parameters
|
36
|
+
|
37
|
+
Name | Type | Description | Notes
|
38
|
+
------------- | ------------- | ------------- | -------------
|
39
|
+
**job_name** | **String**| The job that owns the executions to be fetched. |
|
40
|
+
|
41
|
+
### Return type
|
42
|
+
|
43
|
+
[**Array<Execution>**](Execution.md)
|
44
|
+
|
45
|
+
### Authorization
|
46
|
+
|
47
|
+
No authorization required
|
48
|
+
|
49
|
+
### HTTP request headers
|
50
|
+
|
51
|
+
- **Content-Type**: application/json
|
52
|
+
- **Accept**: application/json
|
53
|
+
|
54
|
+
|
55
|
+
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# Dkron::InlineResponse200
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
Name | Type | Description | Notes
|
5
|
+
------------ | ------------- | ------------- | -------------
|
6
|
+
**agent** | [**Agent**](Agent.md) | | [optional]
|
7
|
+
**serf** | [**Serf**](Serf.md) | | [optional]
|
8
|
+
**tags** | [**Tags**](Tags.md) | | [optional]
|
9
|
+
|
10
|
+
|
data/docs/Job.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# Dkron::Job
|
2
|
+
|
3
|
+
## Properties
|
4
|
+
Name | Type | Description | Notes
|
5
|
+
------------ | ------------- | ------------- | -------------
|
6
|
+
**name** | **String** | Name for the job. |
|
7
|
+
**schedule** | **String** | Cron expression for the job. |
|
8
|
+
**command** | **String** | Command to run. |
|
9
|
+
**shell** | **BOOLEAN** | Use shell to run the command | [optional]
|
10
|
+
**owner** | **String** | Owner of the job | [optional]
|
11
|
+
**owner_email** | **String** | Email of the owner | [optional]
|
12
|
+
**success_count** | **Integer** | Number of successful executions | [optional]
|
13
|
+
**error_count** | **Integer** | Number of failed executions | [optional]
|
14
|
+
**last_success** | **DateTime** | Last time this job executed successfully | [optional]
|
15
|
+
**last_error** | **DateTime** | Last time this job failed | [optional]
|
16
|
+
**disabled** | **BOOLEAN** | Disabled state of the job | [optional]
|
17
|
+
**tags** | **Hash<String, String>** | Target nodes tags of this job | [optional]
|
18
|
+
**retries** | **Integer** | Number of times to retry a failed job execution | [optional]
|
19
|
+
**parent_job** | **String** | The name/id of the job that will trigger the execution of this job | [optional]
|
20
|
+
**dependent_jobs** | [**Array<null>**](.md) | Array containing the jobs that depends on this one | [optional]
|
21
|
+
**processors** | **Hash<String, String>** | Processor plugins used to process executions results of this job | [optional]
|
22
|
+
**concurrency** | **String** | Concurrency policy for the job allow/forbid | [optional]
|
23
|
+
|
24
|
+
|
data/docs/JobsApi.md
ADDED
@@ -0,0 +1,237 @@
|
|
1
|
+
# Dkron::JobsApi
|
2
|
+
|
3
|
+
All URIs are relative to *http://localhost:8080/v1*
|
4
|
+
|
5
|
+
Method | HTTP request | Description
|
6
|
+
------------- | ------------- | -------------
|
7
|
+
[**create_or_update_job**](JobsApi.md#create_or_update_job) | **POST** /jobs |
|
8
|
+
[**delete_job**](JobsApi.md#delete_job) | **DELETE** /jobs/{job_name} |
|
9
|
+
[**get_jobs**](JobsApi.md#get_jobs) | **GET** /jobs |
|
10
|
+
[**run_job**](JobsApi.md#run_job) | **POST** /jobs/{job_name} |
|
11
|
+
[**show_job_by_name**](JobsApi.md#show_job_by_name) | **GET** /jobs/{job_name} |
|
12
|
+
|
13
|
+
|
14
|
+
# **create_or_update_job**
|
15
|
+
> Job create_or_update_job(body)
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
Create or updates a new job.
|
20
|
+
|
21
|
+
### Example
|
22
|
+
```ruby
|
23
|
+
# load the gem
|
24
|
+
require 'dkron-rb'
|
25
|
+
|
26
|
+
api_instance = Dkron::JobsApi.new
|
27
|
+
|
28
|
+
body = Dkron::Job.new # Job | Updated job object
|
29
|
+
|
30
|
+
|
31
|
+
begin
|
32
|
+
result = api_instance.create_or_update_job(body)
|
33
|
+
p result
|
34
|
+
rescue Dkron::ApiError => e
|
35
|
+
puts "Exception when calling JobsApi->create_or_update_job: #{e}"
|
36
|
+
end
|
37
|
+
```
|
38
|
+
|
39
|
+
### Parameters
|
40
|
+
|
41
|
+
Name | Type | Description | Notes
|
42
|
+
------------- | ------------- | ------------- | -------------
|
43
|
+
**body** | [**Job**](Job.md)| Updated job object |
|
44
|
+
|
45
|
+
### Return type
|
46
|
+
|
47
|
+
[**Job**](Job.md)
|
48
|
+
|
49
|
+
### Authorization
|
50
|
+
|
51
|
+
No authorization required
|
52
|
+
|
53
|
+
### HTTP request headers
|
54
|
+
|
55
|
+
- **Content-Type**: application/json
|
56
|
+
- **Accept**: application/json
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
# **delete_job**
|
61
|
+
> Job delete_job(job_name)
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
Delete a job.
|
66
|
+
|
67
|
+
### Example
|
68
|
+
```ruby
|
69
|
+
# load the gem
|
70
|
+
require 'dkron-rb'
|
71
|
+
|
72
|
+
api_instance = Dkron::JobsApi.new
|
73
|
+
|
74
|
+
job_name = "job_name_example" # String | The job that needs to be deleted.
|
75
|
+
|
76
|
+
|
77
|
+
begin
|
78
|
+
result = api_instance.delete_job(job_name)
|
79
|
+
p result
|
80
|
+
rescue Dkron::ApiError => e
|
81
|
+
puts "Exception when calling JobsApi->delete_job: #{e}"
|
82
|
+
end
|
83
|
+
```
|
84
|
+
|
85
|
+
### Parameters
|
86
|
+
|
87
|
+
Name | Type | Description | Notes
|
88
|
+
------------- | ------------- | ------------- | -------------
|
89
|
+
**job_name** | **String**| The job that needs to be deleted. |
|
90
|
+
|
91
|
+
### Return type
|
92
|
+
|
93
|
+
[**Job**](Job.md)
|
94
|
+
|
95
|
+
### Authorization
|
96
|
+
|
97
|
+
No authorization required
|
98
|
+
|
99
|
+
### HTTP request headers
|
100
|
+
|
101
|
+
- **Content-Type**: application/json
|
102
|
+
- **Accept**: application/json
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
# **get_jobs**
|
107
|
+
> Array<Job> get_jobs
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
List jobs.
|
112
|
+
|
113
|
+
### Example
|
114
|
+
```ruby
|
115
|
+
# load the gem
|
116
|
+
require 'dkron-rb'
|
117
|
+
|
118
|
+
api_instance = Dkron::JobsApi.new
|
119
|
+
|
120
|
+
begin
|
121
|
+
result = api_instance.get_jobs
|
122
|
+
p result
|
123
|
+
rescue Dkron::ApiError => e
|
124
|
+
puts "Exception when calling JobsApi->get_jobs: #{e}"
|
125
|
+
end
|
126
|
+
```
|
127
|
+
|
128
|
+
### Parameters
|
129
|
+
This endpoint does not need any parameter.
|
130
|
+
|
131
|
+
### Return type
|
132
|
+
|
133
|
+
[**Array<Job>**](Job.md)
|
134
|
+
|
135
|
+
### Authorization
|
136
|
+
|
137
|
+
No authorization required
|
138
|
+
|
139
|
+
### HTTP request headers
|
140
|
+
|
141
|
+
- **Content-Type**: application/json
|
142
|
+
- **Accept**: application/json
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
# **run_job**
|
147
|
+
> Job run_job(job_name)
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
Executes a job.
|
152
|
+
|
153
|
+
### Example
|
154
|
+
```ruby
|
155
|
+
# load the gem
|
156
|
+
require 'dkron-rb'
|
157
|
+
|
158
|
+
api_instance = Dkron::JobsApi.new
|
159
|
+
|
160
|
+
job_name = "job_name_example" # String | The job that needs to be run.
|
161
|
+
|
162
|
+
|
163
|
+
begin
|
164
|
+
result = api_instance.run_job(job_name)
|
165
|
+
p result
|
166
|
+
rescue Dkron::ApiError => e
|
167
|
+
puts "Exception when calling JobsApi->run_job: #{e}"
|
168
|
+
end
|
169
|
+
```
|
170
|
+
|
171
|
+
### Parameters
|
172
|
+
|
173
|
+
Name | Type | Description | Notes
|
174
|
+
------------- | ------------- | ------------- | -------------
|
175
|
+
**job_name** | **String**| The job that needs to be run. |
|
176
|
+
|
177
|
+
### Return type
|
178
|
+
|
179
|
+
[**Job**](Job.md)
|
180
|
+
|
181
|
+
### Authorization
|
182
|
+
|
183
|
+
No authorization required
|
184
|
+
|
185
|
+
### HTTP request headers
|
186
|
+
|
187
|
+
- **Content-Type**: application/json
|
188
|
+
- **Accept**: application/json
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
# **show_job_by_name**
|
193
|
+
> Job show_job_by_name(job_name)
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
Show a job.
|
198
|
+
|
199
|
+
### Example
|
200
|
+
```ruby
|
201
|
+
# load the gem
|
202
|
+
require 'dkron-rb'
|
203
|
+
|
204
|
+
api_instance = Dkron::JobsApi.new
|
205
|
+
|
206
|
+
job_name = "job_name_example" # String | The job that needs to be fetched.
|
207
|
+
|
208
|
+
|
209
|
+
begin
|
210
|
+
result = api_instance.show_job_by_name(job_name)
|
211
|
+
p result
|
212
|
+
rescue Dkron::ApiError => e
|
213
|
+
puts "Exception when calling JobsApi->show_job_by_name: #{e}"
|
214
|
+
end
|
215
|
+
```
|
216
|
+
|
217
|
+
### Parameters
|
218
|
+
|
219
|
+
Name | Type | Description | Notes
|
220
|
+
------------- | ------------- | ------------- | -------------
|
221
|
+
**job_name** | **String**| The job that needs to be fetched. |
|
222
|
+
|
223
|
+
### Return type
|
224
|
+
|
225
|
+
[**Job**](Job.md)
|
226
|
+
|
227
|
+
### Authorization
|
228
|
+
|
229
|
+
No authorization required
|
230
|
+
|
231
|
+
### HTTP request headers
|
232
|
+
|
233
|
+
- **Content-Type**: application/json
|
234
|
+
- **Accept**: application/json
|
235
|
+
|
236
|
+
|
237
|
+
|