marty 1.2.9 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +11 -9
- data/Gemfile.lock +93 -80
- data/app/components/marty/data_grid_view.rb +1 -1
- data/app/components/marty/main_auth_app.rb +1 -1
- data/app/components/marty/mcfly_grid_panel/client/dup_in_form.js +1 -1
- data/app/components/marty/posting_grid.rb +1 -1
- data/app/components/marty/promise_view.rb +1 -1
- data/app/components/marty/simple_app.rb +1 -1
- data/app/controllers/marty/application_controller.rb +2 -2
- data/app/controllers/marty/diagnostic/controller.rb +1 -5
- data/app/models/marty/api_auth.rb +6 -4
- data/app/models/marty/config.rb +1 -1
- data/app/models/marty/data_grid.rb +13 -13
- data/app/models/marty/delorean_rule.rb +2 -2
- data/app/models/marty/event.rb +1 -1
- data/app/models/marty/import_type.rb +2 -2
- data/app/models/marty/name_validator.rb +1 -1
- data/app/models/marty/posting.rb +0 -5
- data/app/models/marty/user.rb +1 -1
- data/app/views/marty/diagnostic/diag.html.erb +0 -2
- data/config/routes.rb +2 -2
- data/db/migrate/003_create_marty_users.rb +1 -1
- data/db/migrate/004_create_marty_roles.rb +1 -1
- data/db/migrate/005_create_marty_user_roles.rb +1 -1
- data/db/migrate/006_create_marty_tokens.rb +1 -1
- data/db/migrate/008_create_marty_posting_types.rb +1 -1
- data/db/migrate/068_create_marty_import_types.rb +1 -1
- data/db/migrate/069_create_marty_import_synonyms.rb +1 -1
- data/db/migrate/070_create_versions.rb +1 -1
- data/db/migrate/071_add_object_changes_column_to_versions.rb +1 -1
- data/db/migrate/072_add_validation_function_to_import_types.rb +1 -1
- data/db/migrate/073_add_preprocess_function_to_import_types.rb +1 -1
- data/db/migrate/090_create_delayed_jobs.rb +1 -1
- data/db/migrate/091_create_marty_promises.rb +1 -1
- data/db/migrate/096_add_user_roles_to_import_types.rb +1 -1
- data/db/migrate/097_drop_versions.rb +1 -1
- data/db/migrate/099_create_marty_configs.rb +1 -1
- data/db/migrate/101_create_marty_grid_index_numranges.rb +1 -1
- data/db/migrate/102_create_marty_grid_index_int4ranges.rb +1 -1
- data/db/migrate/103_create_marty_grid_index_integers.rb +1 -1
- data/db/migrate/104_create_marty_grid_index_strings.rb +1 -1
- data/db/migrate/105_create_marty_grid_index_booleans.rb +1 -1
- data/db/migrate/106_make_grid_indexes_nullable.rb +1 -1
- data/db/migrate/200_create_marty_event_operation_enum.rb +1 -1
- data/db/migrate/201_create_marty_events.rb +1 -1
- data/db/migrate/202_add_completion_status_to_event.rb +1 -1
- data/db/migrate/300_create_marty_api_configs.rb +1 -1
- data/db/migrate/301_create_marty_api_log.rb +1 -1
- data/db/migrate/302_add_api_configs_validate_result.rb +1 -1
- data/db/migrate/303_create_marty_logs.rb +1 -1
- data/db/migrate/304_drop_marty_api_logs.rb +1 -1
- data/db/migrate/400_create_dg_plv8_v1_fns.rb +1 -1
- data/lib/marty/migrations.rb +7 -8
- data/lib/marty/monkey.rb +2 -30
- data/lib/marty/version.rb +1 -1
- data/marty.gemspec +3 -4
- data/other/marty/diagnostic/aws/ec2_instance.rb +65 -25
- data/other/marty/diagnostic/base.rb +14 -5
- data/other/marty/diagnostic/collection.rb +1 -0
- data/other/marty/diagnostic/{delayed_job.rb → delayed_job_version.rb} +2 -8
- data/other/marty/diagnostic/delayed_job_workers.rb +11 -0
- data/other/marty/diagnostic/environment_variables.rb +4 -6
- data/other/marty/diagnostic/fatal.rb +0 -5
- data/other/marty/diagnostic/node.rb +4 -3
- data/other/marty/diagnostic/nodes.rb +46 -13
- data/other/marty/diagnostic/packer.rb +22 -25
- data/other/marty/diagnostic/version.rb +19 -21
- data/script_id, +0 -0
- data/spec/controllers/diagnostic/controller_spec.rb +8 -7
- data/spec/controllers/job_controller_spec.rb +5 -5
- data/spec/controllers/rpc_controller_spec.rb +52 -57
- data/spec/controllers/rpc_import_spec.rb +1 -1
- data/spec/dummy/config/environments/test.rb +4 -2
- data/spec/dummy/db/migrate/20140000000000_create_enums.rb +1 -1
- data/spec/dummy/db/migrate/20150406171536_create_categories.rb +2 -2
- data/spec/dummy/db/migrate/20150408200916_create_loan_programs.rb +1 -1
- data/spec/dummy/db/migrate/20150408201429_create_types.rb +1 -1
- data/spec/dummy/db/migrate/20151023000001_create_simple.rb +1 -1
- data/spec/dummy/db/migrate/20160100000038_create_gemini_states.rb +1 -1
- data/spec/dummy/db/migrate/20160923183516_add_bulk_pricing_event_ops.rb +1 -1
- data/spec/dummy/db/migrate/20170706081300_add_state_array_to_lp.rb +1 -1
- data/spec/dummy/db/migrate/20170725160000_add_misc_arrays_to_lp.rb +1 -1
- data/spec/dummy/db/migrate/20171220150101_add_rule_type_enums.rb +1 -1
- data/spec/dummy/db/migrate/20171222150100_add_rule_indices.rb +1 -1
- data/spec/features/auth_app_spec.rb +1 -0
- data/spec/features/data_import_spec.rb +2 -2
- data/spec/features/log_view_spec.rb +4 -4
- data/spec/features/reporting_spec.rb +16 -19
- data/spec/features/rule_spec.rb +11 -8
- data/spec/features/scripting_spec.rb +2 -2
- data/spec/features/scripting_test_spec.rb +0 -2
- data/spec/features/user_view_spec.rb +4 -6
- data/spec/lib/logger_spec.rb +4 -4
- data/spec/models/event_spec.rb +4 -4
- data/spec/models/promise_spec.rb +1 -1
- data/spec/other/diagnostic/base_spec.rb +12 -12
- data/spec/other/diagnostic/collection_spec.rb +8 -8
- data/spec/other/diagnostic/{delayed_job_spec.rb → delayed_job_version_spec.rb} +4 -4
- data/spec/other/diagnostic/delayed_job_workers_spec.rb +44 -0
- data/spec/other/diagnostic/reporter_spec.rb +13 -17
- data/spec/spec_helper.rb +36 -14
- data/spec/support/clean_db_helpers.rb +2 -2
- metadata +14 -39
@@ -2,8 +2,8 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Marty::Diagnostic::Base do
|
4
4
|
def sample_data consistent=true
|
5
|
-
node_data_a =
|
6
|
-
node_data_b =
|
5
|
+
node_data_a = described_class.pack(include_ip=false){'A'}
|
6
|
+
node_data_b = described_class.pack(include_ip=false){'B'}
|
7
7
|
|
8
8
|
data = {
|
9
9
|
'NodeA' => node_data_a,
|
@@ -18,8 +18,8 @@ describe Marty::Diagnostic::Base do
|
|
18
18
|
a = sample_data
|
19
19
|
b = sample_data(consistent=false)
|
20
20
|
|
21
|
-
expect(
|
22
|
-
expect(
|
21
|
+
expect(described_class.consistent?(a)).to eq(true)
|
22
|
+
expect(described_class.consistent?(b)).to eq(false)
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'can produce a valid diagnostic hash from a String' do
|
@@ -31,7 +31,7 @@ describe Marty::Diagnostic::Base do
|
|
31
31
|
}
|
32
32
|
}
|
33
33
|
|
34
|
-
expect(
|
34
|
+
expect(described_class.pack(include_ip=false){'A'}).to eq(expected)
|
35
35
|
end
|
36
36
|
|
37
37
|
it 'can produce a valid diagnostic hash from a Hash' do
|
@@ -58,15 +58,15 @@ describe Marty::Diagnostic::Base do
|
|
58
58
|
},
|
59
59
|
}
|
60
60
|
|
61
|
-
expect(
|
61
|
+
expect(described_class.
|
62
62
|
pack(include_ip=false){test_a}).to eq(expected)
|
63
|
-
expect(
|
63
|
+
expect(described_class.
|
64
64
|
pack(include_ip=false){test_a}).to eq(expected)
|
65
65
|
end
|
66
66
|
|
67
67
|
it 'can produce a valid diagnostic hash from an error Hash' do
|
68
|
-
test =
|
69
|
-
|
68
|
+
test = described_class.pack(include_ip=false){
|
69
|
+
described_class.error('E')
|
70
70
|
}
|
71
71
|
|
72
72
|
expected = {
|
@@ -83,7 +83,7 @@ describe Marty::Diagnostic::Base do
|
|
83
83
|
test_a = {
|
84
84
|
'ImportantA' => 'A',
|
85
85
|
'ImportantB' => 'B',
|
86
|
-
'ImportantC' =>
|
86
|
+
'ImportantC' => described_class.create_info('C') + {
|
87
87
|
'extra' => 'D'
|
88
88
|
}
|
89
89
|
}
|
@@ -96,7 +96,7 @@ describe Marty::Diagnostic::Base do
|
|
96
96
|
}
|
97
97
|
}
|
98
98
|
|
99
|
-
expect{
|
100
|
-
expect{
|
99
|
+
expect{described_class.pack{test_a}}.to raise_error(RuntimeError)
|
100
|
+
expect{described_class.pack{test_b}}.to raise_error(RuntimeError)
|
101
101
|
end
|
102
102
|
end
|
@@ -2,31 +2,31 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Marty::Diagnostic::Collection do
|
4
4
|
def sample_data consistent = true
|
5
|
-
node_a_data =
|
5
|
+
node_a_data = described_class.pack(include_ip=false){'A'}
|
6
6
|
data = {
|
7
7
|
'NodeA' => node_a_data,
|
8
8
|
'NodeB' => node_a_data,
|
9
9
|
}
|
10
10
|
return data if consistent
|
11
|
-
data + {'NodeB' => {'Base' =>
|
11
|
+
data + {'NodeB' => {'Base' => described_class.error('B')}}
|
12
12
|
end
|
13
13
|
|
14
14
|
it 'all diagnostics in diagnostics class attribute are generated' do
|
15
15
|
diags = [Marty::Diagnostic::Version, Marty::Diagnostic::Nodes]
|
16
16
|
expected = diags.map{|d| d.generate}.reduce(:deep_merge)
|
17
|
-
|
18
|
-
expect(
|
17
|
+
described_class.diagnostics = diags
|
18
|
+
expect(described_class.generate).to eq(expected)
|
19
19
|
end
|
20
20
|
|
21
21
|
it 'declares data consistency via status consistency' do
|
22
22
|
a = sample_data
|
23
23
|
b = sample_data + {
|
24
|
-
'NodeB' =>
|
24
|
+
'NodeB' => described_class.pack(include_ip=false){'B'}
|
25
25
|
}
|
26
26
|
c = sample_data(consistent=false)
|
27
27
|
|
28
|
-
expect(
|
29
|
-
expect(
|
30
|
-
expect(
|
28
|
+
expect(described_class.consistent?(a)).to eq(true)
|
29
|
+
expect(described_class.consistent?(b)).to eq(true)
|
30
|
+
expect(described_class.consistent?(c)).to eq(false)
|
31
31
|
end
|
32
32
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'job_helper'
|
3
3
|
|
4
|
-
describe Marty::Diagnostic::
|
4
|
+
describe Marty::Diagnostic::DelayedJobVersion do
|
5
5
|
# used to stub request object
|
6
6
|
class DummyRequest
|
7
7
|
attr_accessor :params, :port
|
@@ -12,7 +12,7 @@ describe Marty::Diagnostic::DelayedJob do
|
|
12
12
|
|
13
13
|
before(:each) do
|
14
14
|
Marty::Script.load_scripts(nil, Date.today)
|
15
|
-
allow(
|
15
|
+
allow(described_class).to receive(:scope).and_return(nil)
|
16
16
|
end
|
17
17
|
|
18
18
|
def sample_data
|
@@ -30,14 +30,14 @@ describe Marty::Diagnostic::DelayedJob do
|
|
30
30
|
it 'can detect if all workers are running correct application version' do
|
31
31
|
ENV['DELAYED_VER'] = Marty::VERSION
|
32
32
|
start_delayed_job
|
33
|
-
expect(
|
33
|
+
expect(described_class.generate).to eq(sample_data)
|
34
34
|
stop_delayed_job
|
35
35
|
end
|
36
36
|
|
37
37
|
it 'will fail if DELAYED_VER is not set' do
|
38
38
|
ENV.delete('DELAYED_VER')
|
39
39
|
start_delayed_job
|
40
|
-
expect{
|
40
|
+
expect{described_class.generate}.to raise_error(RuntimeError)
|
41
41
|
stop_delayed_job
|
42
42
|
end
|
43
43
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'job_helper'
|
3
|
+
|
4
|
+
describe Marty::Diagnostic::DelayedJobWorkers do
|
5
|
+
def sample_data ip=nil, error=false
|
6
|
+
{
|
7
|
+
ip || Marty::Helper.my_ip => {
|
8
|
+
'DelayedJobWorkers' => {
|
9
|
+
'description' => error ? "3" : "4",
|
10
|
+
'status' => true,
|
11
|
+
'consistent' => nil
|
12
|
+
},
|
13
|
+
}
|
14
|
+
}
|
15
|
+
end
|
16
|
+
|
17
|
+
def sample_aggregate error=false
|
18
|
+
[
|
19
|
+
sample_data(ip='0.0.0.0'),
|
20
|
+
sample_data(ip='0.0.0.1'),
|
21
|
+
sample_data(ip='0.0.0.2', error=error),
|
22
|
+
sample_data(ip='0.0.0.3'),
|
23
|
+
].reduce(:merge)
|
24
|
+
end
|
25
|
+
|
26
|
+
it 'can determine the number of workers on a node' do
|
27
|
+
start_delayed_job
|
28
|
+
expect(described_class.generate).to eq(sample_data)
|
29
|
+
stop_delayed_job
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'can determine if there are nodes with missing workers' do
|
33
|
+
consistent = sample_aggregate
|
34
|
+
inconsistent = sample_aggregate(error=true)
|
35
|
+
|
36
|
+
expect(described_class.consistent?(consistent)).to eq(true)
|
37
|
+
expect(described_class.consistent?(inconsistent)).to eq(false)
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'recognizes zero workers as an error' do
|
41
|
+
data = described_class.generate.values[0]
|
42
|
+
expect(data['DelayedJobWorkers']['status']).to eq(false)
|
43
|
+
end
|
44
|
+
end
|
@@ -111,15 +111,15 @@ describe Marty::Diagnostic::Reporter do
|
|
111
111
|
|
112
112
|
describe 'display mechanism for version diagnostic' do
|
113
113
|
before(:all) do
|
114
|
-
|
114
|
+
described_class.diagnostics = [Marty::Diagnostic::Version]
|
115
115
|
end
|
116
116
|
|
117
117
|
before(:each) do
|
118
|
-
|
118
|
+
described_class.request = DummyRequest.new
|
119
119
|
end
|
120
120
|
|
121
121
|
it 'masks consistent nodes for display (version)' do
|
122
|
-
|
122
|
+
described_class.request.params = params(scope='local')
|
123
123
|
data = {
|
124
124
|
'Version' => {
|
125
125
|
'NodeA' => version_data,
|
@@ -209,27 +209,27 @@ describe Marty::Diagnostic::Reporter do
|
|
209
209
|
</div>
|
210
210
|
ERB
|
211
211
|
|
212
|
-
test =
|
212
|
+
test = described_class.displays(data)
|
213
213
|
expect(minimize(test)).to eq(minimize(expected))
|
214
214
|
end
|
215
215
|
|
216
216
|
it 'can detect errors in diagnostic for display and api' do
|
217
|
-
|
217
|
+
described_class.request.params = params
|
218
218
|
n = aggregate_data
|
219
219
|
e = aggregate_data(status: false)
|
220
220
|
c = aggregate_data(consistent: false)
|
221
221
|
ce = aggregate_data(status: false, consistent: false)
|
222
222
|
|
223
223
|
aggregate_failures do
|
224
|
-
expect(
|
225
|
-
expect(
|
226
|
-
expect(
|
227
|
-
expect(
|
224
|
+
expect(described_class.errors(n)).to eq({})
|
225
|
+
expect(described_class.errors(e)).not_to eq({})
|
226
|
+
expect(described_class.errors(c)).not_to eq({})
|
227
|
+
expect(described_class.errors(ce)).not_to eq({})
|
228
228
|
end
|
229
229
|
end
|
230
230
|
|
231
231
|
it 'can survive and display fatal errors' do
|
232
|
-
|
232
|
+
described_class.request.params = params
|
233
233
|
|
234
234
|
a_err_a = Marty::Diagnostic::Fatal.message('A',
|
235
235
|
node: 'NodeA')
|
@@ -293,13 +293,9 @@ describe Marty::Diagnostic::Reporter do
|
|
293
293
|
</tr>
|
294
294
|
</table>
|
295
295
|
</div>
|
296
|
-
<h3 class="error">
|
297
|
-
Something went wrong.</br>
|
298
|
-
Consistency is checked between remaining nodes if applicable.
|
299
|
-
</h3>
|
300
296
|
ERB
|
301
297
|
|
302
|
-
result =
|
298
|
+
result = described_class.displays(data)
|
303
299
|
expect(minimize(result)).to eq(minimize(expected))
|
304
300
|
end
|
305
301
|
end
|
@@ -307,12 +303,12 @@ describe Marty::Diagnostic::Reporter do
|
|
307
303
|
describe 'aggregation consistency functionality' do
|
308
304
|
it 'env diagnostic' do
|
309
305
|
test, expected = aggregate_consistency_data('EnvironmentVariables')
|
310
|
-
expect(
|
306
|
+
expect(described_class.consistency(test)).to eq(expected)
|
311
307
|
end
|
312
308
|
|
313
309
|
it 'marks data as consistent/inconsistent' do
|
314
310
|
test, expected = aggregate_consistency_data
|
315
|
-
expect(
|
311
|
+
expect(described_class.consistency(test)).to eq(expected)
|
316
312
|
end
|
317
313
|
end
|
318
314
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -12,6 +12,17 @@ ActiveRecord::Migrator.migrate File.expand_path("../dummy/db/migrate/", __FILE__
|
|
12
12
|
|
13
13
|
Dir[Rails.root.join("../support/**/*.rb")].each { |f| require f }
|
14
14
|
|
15
|
+
def register_chrome_driver driver = :chrome, options={}
|
16
|
+
Capybara.register_driver driver do |app|
|
17
|
+
caps = Selenium::WebDriver::Remote::Capabilities.
|
18
|
+
chrome(options + {pageLoadStrategy: 'none'})
|
19
|
+
|
20
|
+
Capybara::Selenium::Driver.new(app,
|
21
|
+
browser: :chrome,
|
22
|
+
desired_capabilities: caps)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
15
26
|
CLASSES_TO_EXCLUDE_FROM_SHARED = ["Marty::Log"]
|
16
27
|
class ActiveRecord::Base
|
17
28
|
mattr_accessor :shared_connection
|
@@ -26,27 +37,23 @@ class ActiveRecord::Base
|
|
26
37
|
|
27
38
|
def self.connection
|
28
39
|
CLASSES_TO_EXCLUDE_FROM_SHARED.include?(model_name) ? orig_connection :
|
29
|
-
@@shared_connection ||
|
40
|
+
@@shared_connection ||
|
41
|
+
ConnectionPool::Wrapper.new(:size => 1) {retrieve_connection}
|
30
42
|
end
|
31
43
|
|
32
44
|
def self.reset_shared_connection
|
33
|
-
@@shared_connection =
|
45
|
+
@@shared_connection = ConnectionPool::Wrapper.
|
46
|
+
new(:size => 1) {retrieve_connection}
|
34
47
|
end
|
35
48
|
end
|
36
49
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
client = Selenium::WebDriver::Remote::Http::Default.new
|
44
|
-
profile = Selenium::WebDriver::Firefox::Profile.new
|
45
|
-
profile.load_no_focus_lib = true
|
46
|
-
Capybara::Selenium::Driver.new(app, :profile => profile,
|
47
|
-
:http_client => client)
|
48
|
-
end
|
50
|
+
register_chrome_driver
|
51
|
+
register_chrome_driver(:headless,
|
52
|
+
chromeOptions: {
|
53
|
+
args: %w[headless disable-gpu window-size=3840,2160]
|
54
|
+
})
|
49
55
|
|
56
|
+
Capybara.javascript_driver = ENV['HEADLESS'] == 'true' ? :headless : :chrome
|
50
57
|
|
51
58
|
ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection
|
52
59
|
|
@@ -95,4 +102,19 @@ RSpec.configure do |config|
|
|
95
102
|
config.use_transactional_fixtures = true
|
96
103
|
|
97
104
|
Netzke::Testing.rspec_init(config)
|
105
|
+
|
106
|
+
# FIXME: temporary monkey patch to fix marty_rspec for new extjs/rails
|
107
|
+
module MartyRSpec
|
108
|
+
module Components
|
109
|
+
class NetzkeGrid
|
110
|
+
def get_row_vals row
|
111
|
+
res = run_js <<-JS
|
112
|
+
#{ext_var(grid, 'grid')}
|
113
|
+
return Ext.encode(#{ext_row(row.to_i - 1, 'grid')}.data);
|
114
|
+
JS
|
115
|
+
JSON.parse(res)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
98
120
|
end
|
@@ -8,11 +8,11 @@ module CleanDbHelpers
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def restore_clean_db(clean_file, remove_file = true)
|
11
|
-
self.
|
11
|
+
self.use_transactional_tests = false
|
12
12
|
`pg_restore -j 2 -O -x -c -d #{current_db} #{clean_file}`
|
13
13
|
`rm -f #{clean_file}` if remove_file
|
14
14
|
ActiveRecord::Base.clear_all_connections!
|
15
15
|
ActiveRecord::Base.reset_shared_connection
|
16
|
-
self.
|
16
|
+
self.use_transactional_tests = true
|
17
17
|
end
|
18
18
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: marty
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arman Bostani
|
@@ -14,7 +14,7 @@ authors:
|
|
14
14
|
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date: 2018-03-
|
17
|
+
date: 2018-03-30 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: pg
|
@@ -31,47 +31,19 @@ dependencies:
|
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '0.21'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
|
-
name: netzke
|
34
|
+
name: netzke
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- -
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: 1.0.0
|
40
|
-
type: :runtime
|
41
|
-
prerelease: false
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
requirements:
|
44
|
-
- - "~>"
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version: 1.0.0
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: netzke-basepack
|
49
|
-
requirement: !ruby/object:Gem::Requirement
|
50
|
-
requirements:
|
51
|
-
- - "~>"
|
37
|
+
- - '='
|
52
38
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
39
|
+
version: 6.5.0.0
|
54
40
|
type: :runtime
|
55
41
|
prerelease: false
|
56
42
|
version_requirements: !ruby/object:Gem::Requirement
|
57
43
|
requirements:
|
58
|
-
- -
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version: 1.0.0
|
61
|
-
- !ruby/object:Gem::Dependency
|
62
|
-
name: netzke-testing
|
63
|
-
requirement: !ruby/object:Gem::Requirement
|
64
|
-
requirements:
|
65
|
-
- - "~>"
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: 1.0.0
|
68
|
-
type: :development
|
69
|
-
prerelease: false
|
70
|
-
version_requirements: !ruby/object:Gem::Requirement
|
71
|
-
requirements:
|
72
|
-
- - "~>"
|
44
|
+
- - '='
|
73
45
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
46
|
+
version: 6.5.0.0
|
75
47
|
- !ruby/object:Gem::Dependency
|
76
48
|
name: axlsx
|
77
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -106,14 +78,14 @@ dependencies:
|
|
106
78
|
requirements:
|
107
79
|
- - '='
|
108
80
|
- !ruby/object:Gem::Version
|
109
|
-
version: 0.0.
|
81
|
+
version: 0.0.20
|
110
82
|
type: :runtime
|
111
83
|
prerelease: false
|
112
84
|
version_requirements: !ruby/object:Gem::Requirement
|
113
85
|
requirements:
|
114
86
|
- - '='
|
115
87
|
- !ruby/object:Gem::Version
|
116
|
-
version: 0.0.
|
88
|
+
version: 0.0.20
|
117
89
|
- !ruby/object:Gem::Dependency
|
118
90
|
name: coderay
|
119
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -525,7 +497,8 @@ files:
|
|
525
497
|
- other/marty/diagnostic/base.rb
|
526
498
|
- other/marty/diagnostic/collection.rb
|
527
499
|
- other/marty/diagnostic/database.rb
|
528
|
-
- other/marty/diagnostic/
|
500
|
+
- other/marty/diagnostic/delayed_job_version.rb
|
501
|
+
- other/marty/diagnostic/delayed_job_workers.rb
|
529
502
|
- other/marty/diagnostic/environment_variables.rb
|
530
503
|
- other/marty/diagnostic/fatal.rb
|
531
504
|
- other/marty/diagnostic/node.rb
|
@@ -535,6 +508,7 @@ files:
|
|
535
508
|
- other/marty/diagnostic/request.rb
|
536
509
|
- other/marty/diagnostic/version.rb
|
537
510
|
- script/rails
|
511
|
+
- script_id,
|
538
512
|
- spec/controllers/application_controller_spec.rb
|
539
513
|
- spec/controllers/diagnostic/controller_spec.rb
|
540
514
|
- spec/controllers/job_controller_spec.rb
|
@@ -1675,7 +1649,8 @@ files:
|
|
1675
1649
|
- spec/models/user_spec.rb
|
1676
1650
|
- spec/other/diagnostic/base_spec.rb
|
1677
1651
|
- spec/other/diagnostic/collection_spec.rb
|
1678
|
-
- spec/other/diagnostic/
|
1652
|
+
- spec/other/diagnostic/delayed_job_version_spec.rb
|
1653
|
+
- spec/other/diagnostic/delayed_job_workers_spec.rb
|
1679
1654
|
- spec/other/diagnostic/reporter_spec.rb
|
1680
1655
|
- spec/requests/routes_spec.rb
|
1681
1656
|
- spec/spec_helper.rb
|