dynamodb-sidekiq-scheduler 0.2 → 0.3
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 +4 -4
- data/lib/sidekiq-scheduler/version.rb +1 -1
- data/lib/sidekiq-scheduler/web.rb +9 -14
- data/web/views/recurring_job.erb +11 -19
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 850847bb7177c4748340edd60fd4a6eb6b47d7f70b3c481d88c96639e8c29990
|
4
|
+
data.tar.gz: cbcc19f0d2c94f5e6bb3ba084831ba866a21d1f0ef6fd1ea56d40e4f19b912c9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fa192c72ce6480bf8d3b98cb2df6e5ab1d3af0d0f2f4ddb6b7a1c06b14b598b715174674395063220c6ed99f433787ea120076353a84caa26ee4f0f23be31618
|
7
|
+
data.tar.gz: 6ac9f8c8f9d0c029d7a09ea4febd8384f84ed8678833f7af838030686f03904bf8e66a12803555aedb4a8a6de4675ac122dd3922d3e78cef4747a7e09756cda3
|
@@ -46,7 +46,7 @@ module SidekiqScheduler
|
|
46
46
|
|
47
47
|
dynamo_clas_name = ENV.fetch('SIDEKIQ_SCHEDUER_DYNAMOID_CLASS', 'ScheduleRule')
|
48
48
|
klass = dynamo_clas_name.constantize
|
49
|
-
sr = klass.where(
|
49
|
+
sr = klass.where(name: params[:name]).first
|
50
50
|
if sr.present?
|
51
51
|
sr.destroy
|
52
52
|
else
|
@@ -60,29 +60,26 @@ module SidekiqScheduler
|
|
60
60
|
@title = 'Recurring Job Update'
|
61
61
|
@form_action = "#{root_path}recurring-jobs/#{ERB::Util.url_encode(params[:name])}/update"
|
62
62
|
@existing_rule = true
|
63
|
-
@
|
63
|
+
@name = params[:name]
|
64
|
+
@config = Sidekiq.get_schedule(params[:name])
|
64
65
|
erb File.read(File.join(VIEW_PATH, 'recurring_job.erb'))
|
65
66
|
end
|
66
67
|
|
67
68
|
app.post '/recurring-jobs/new' do
|
68
69
|
@title = 'New Recurring Job'
|
69
|
-
@presented_job = JobPresenter.new('', {})
|
70
70
|
@existing_rule = false
|
71
71
|
@form_action = "#{root_path}recurring-jobs/create"
|
72
|
+
@name = ''
|
73
|
+
dynamo_clas_name = ENV.fetch('SIDEKIQ_SCHEDUER_DYNAMOID_CLASS', 'ScheduleRule')
|
74
|
+
klass = dynamo_clas_name.constantize
|
75
|
+
@config = klass.sample_config
|
72
76
|
erb File.read(File.join(VIEW_PATH, 'recurring_job.erb'))
|
73
77
|
end
|
74
78
|
|
75
79
|
app.post '/recurring-jobs/:name/update' do
|
76
80
|
dynamo_clas_name = ENV.fetch('SIDEKIQ_SCHEDUER_DYNAMOID_CLASS', 'ScheduleRule')
|
77
81
|
klass = dynamo_clas_name.constantize
|
78
|
-
|
79
|
-
sr = klass.where(job_name: params[:name]).first
|
80
|
-
if sr.present?
|
81
|
-
config.each { |k, v| sr.send "#{k}=", v}
|
82
|
-
sr.save!
|
83
|
-
else
|
84
|
-
klass.create config.merge(job_name: params[:name])
|
85
|
-
end
|
82
|
+
klass.update_or_create name: params[:name], config: JSON.parse(params[:config])
|
86
83
|
|
87
84
|
Sidekiq.reload_schedule!
|
88
85
|
redirect "#{root_path}recurring-jobs"
|
@@ -91,9 +88,7 @@ module SidekiqScheduler
|
|
91
88
|
app.post '/recurring-jobs/create' do
|
92
89
|
dynamo_clas_name = ENV.fetch('SIDEKIQ_SCHEDUER_DYNAMOID_CLASS', 'ScheduleRule')
|
93
90
|
klass = dynamo_clas_name.constantize
|
94
|
-
|
95
|
-
.transform_values(&:presence)
|
96
|
-
klass.create config
|
91
|
+
klass.update_or_create name: params[:name], config: JSON.parse(params[:config])
|
97
92
|
|
98
93
|
Sidekiq.reload_schedule!
|
99
94
|
redirect "#{root_path}recurring-jobs"
|
data/web/views/recurring_job.erb
CHANGED
@@ -2,24 +2,16 @@
|
|
2
2
|
|
3
3
|
<form action="<%= @form_action %>"
|
4
4
|
method="post" class="recurring-job" style="background-color:white;">
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
<label for="description" style="padding-top: 10px;">Description:</label><br>
|
13
|
-
<input name='description' type="text" value="<%= @presented_job['description'] %>" style='width:50%'/><br>
|
14
|
-
<label for="cron" style="padding-top: 10px;">Cron Rule:</label><br>
|
15
|
-
<input name='cron' type="text" value="<%= @presented_job['cron'] %>" style='width:50%'/><br>
|
16
|
-
<label for="queue" style="padding-top: 10px;">Queue:</label><br>
|
17
|
-
<input name='queue' type="text" value="<%= @presented_job['queue'] %>" style='width:50%'/><br>
|
18
|
-
<label for="args" style="padding-top: 10px;">Args:</label><br>
|
19
|
-
<input name='args' type="text" value="<%= @presented_job['args'] %>" style='width:50%'/><br><br>
|
5
|
+
<%= csrf_tag %>
|
6
|
+
<div style="padding: 20px;">
|
7
|
+
<label for="name">Name:</label><br>
|
8
|
+
<input <%= @existing_rule ? 'disabled' : 'required' %> required name='name' type="text"
|
9
|
+
value="<%= @name %>" style='width:50%;'/><br>
|
10
|
+
<label for="args" style="padding-top: 10px;">Configuration:</label><br>
|
11
|
+
<textarea name='config' style='width:50%'><%= @config.to_json.html_safe %></textarea><br><br>
|
20
12
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
13
|
+
<a href="<%= root_path %>recurring-jobs" class="btn btn-warn btn-xs"><%= t('cancel') %></a>
|
14
|
+
<input type="submit" class="btn btn-warn btn-xs" value="<%= @existing_rule ? t('update') : t('create') %>"/><br>
|
15
|
+
<a></a>
|
16
|
+
</div>
|
25
17
|
</form>
|
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynamodb-sidekiq-scheduler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.3'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Morton Jonuschat
|
8
8
|
- Moove-it
|
9
9
|
- Marcelo Lauxen
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-
|
13
|
+
date: 2023-05-25 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: sidekiq
|
@@ -234,7 +234,7 @@ homepage: https://sidekiq-scheduler.github.io/sidekiq-scheduler/
|
|
234
234
|
licenses:
|
235
235
|
- MIT
|
236
236
|
metadata: {}
|
237
|
-
post_install_message:
|
237
|
+
post_install_message:
|
238
238
|
rdoc_options: []
|
239
239
|
require_paths:
|
240
240
|
- lib
|
@@ -250,7 +250,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
250
250
|
version: '0'
|
251
251
|
requirements: []
|
252
252
|
rubygems_version: 3.1.6
|
253
|
-
signing_key:
|
253
|
+
signing_key:
|
254
254
|
specification_version: 4
|
255
255
|
summary: Light weight job scheduling extension for Sidekiq
|
256
256
|
test_files: []
|