mutx 0.1.69 → 0.2.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 +4 -4
- data/Gemfile.lock +2 -2
- data/documentation/repos.md +21 -24
- data/lib/generators/task_rack.rb +8 -2
- data/lib/generators/templates/config.ru.tt +1 -1
- data/lib/mutx/API/execution.rb +8 -44
- data/lib/mutx/API/repo.rb +7 -10
- data/lib/mutx/background_jobs/workers/executor.rb +44 -38
- data/lib/mutx/commands/install.rb +1 -1
- data/lib/mutx/commands/start.rb +1 -1
- data/lib/mutx/custom/execution.rb +1 -1
- data/lib/mutx/database/mongo_connector.rb +19 -22
- data/lib/mutx/execution.rb +1 -0
- data/lib/mutx/lib/authentication.rb +23 -0
- data/lib/mutx/lib/helpers.rb +52 -0
- data/lib/mutx/lib/middlewares/database_middleware.rb +16 -0
- data/lib/mutx/lib/middlewares/flash_middleware.rb +31 -0
- data/lib/mutx/lib/middlewares/logger_middleware.rb +13 -0
- data/lib/mutx/lib/monkey_patch.rb +28 -0
- data/lib/mutx/lib/paths.rb +80 -0
- data/lib/mutx/platforms/ruby.rb +8 -0
- data/lib/mutx/public/css/bootstrap.min.css +7 -0
- data/lib/mutx/public/css/font-awesome.min.css +4 -0
- data/lib/mutx/public/css/jquery.json-viewer.css +44 -0
- data/{favicon.ico → lib/mutx/public/img/favicon.ico} +0 -0
- data/lib/mutx/public/js/bootstrap.min.js +6 -0
- data/lib/mutx/public/js/jquery.json-viewer.js +148 -0
- data/lib/mutx/public/js/jquery.min.js +6 -0
- data/lib/mutx/{view/javascript.mote → public/js/mutx.js} +0 -5
- data/lib/mutx/public/js/notify.min.js +1 -0
- data/lib/mutx/results/result.rb +60 -68
- data/lib/mutx/results/results.rb +4 -0
- data/lib/mutx/routes.rb +85 -883
- data/lib/mutx/routes/admin_routes.rb +16 -0
- data/lib/mutx/routes/admin_routes/custom_params_routes.rb +97 -0
- data/lib/mutx/routes/admin_routes/repositories_routes.rb +35 -0
- data/lib/mutx/routes/admin_routes/tasks_routes.rb +110 -0
- data/lib/mutx/routes/api_routes.rb +49 -0
- data/lib/mutx/routes/api_routes/custom_params_routes.rb +41 -0
- data/lib/mutx/routes/api_routes/input_routes.rb +48 -0
- data/lib/mutx/routes/api_routes/repos_routes.rb +74 -0
- data/lib/mutx/routes/api_routes/results_routes.rb +50 -0
- data/lib/mutx/routes/api_routes/tasks_routes.rb +47 -0
- data/lib/mutx/routes/api_routes/tests_routes.rb +42 -0
- data/lib/mutx/routes/features_routes.rb +24 -0
- data/lib/mutx/routes/help_routes.rb +23 -0
- data/lib/mutx/routes/logs_routes.rb +22 -0
- data/lib/mutx/routes/message_routes.rb +24 -0
- data/lib/mutx/routes/repositories_routes.rb +25 -0
- data/lib/mutx/routes/results_routes.rb +53 -0
- data/lib/mutx/routes/task_results_routes.rb +25 -0
- data/lib/mutx/routes/tasks_routes.rb +67 -0
- data/lib/mutx/routes/tests_routes.rb +66 -0
- data/lib/mutx/support/change_inspector.rb +3 -3
- data/lib/mutx/support/files_cleanner.rb +12 -3
- data/lib/mutx/support/git.rb +11 -2
- data/lib/mutx/support/processes.rb +2 -2
- data/lib/mutx/support/project_type.rb +12 -0
- data/lib/mutx/tasks/task.rb +8 -2
- data/lib/mutx/version.rb +1 -1
- data/lib/mutx/view/{custom/params/delete_form.mote → admin/custom-params/_delete_form.mote} +2 -4
- data/lib/mutx/view/{custom/params/create_edit_form.mote → admin/custom-params/_form.mote} +5 -9
- data/lib/mutx/view/{custom/params/custom_param_task_deleting_box.mote → admin/custom-params/_task_deleting_box.mote} +1 -2
- data/lib/mutx/view/{custom/params → admin/custom-params}/delete.mote +1 -3
- data/lib/mutx/view/{custom/params → admin/custom-params}/edit.mote +1 -5
- data/lib/mutx/view/{custom/params/list.mote → admin/custom-params/index.mote} +8 -13
- data/lib/mutx/view/{custom/params → admin/custom-params}/new.mote +1 -5
- data/lib/mutx/view/{custom/params/custom_param_selection_box.mote → admin/custom-params/selection_box.mote} +2 -3
- data/lib/mutx/view/{list_repos.mote → admin/repositories/index.mote} +2 -6
- data/lib/mutx/view/{repos.mote → admin/repositories/new.mote} +2 -6
- data/lib/mutx/view/{tasks/admin/delete_form.mote → admin/tasks/_delete_form.mote} +2 -12
- data/lib/mutx/view/{tasks/admin/create_edit_form.mote → admin/tasks/_form.mote} +6 -9
- data/lib/mutx/view/{tasks/admin → admin/tasks}/delete.mote +1 -3
- data/lib/mutx/view/{tasks/admin → admin/tasks}/edit.mote +1 -4
- data/lib/mutx/view/{tasks/admin/list.mote → admin/tasks/index.mote} +5 -10
- data/lib/mutx/view/{tasks/admin → admin/tasks}/new.mote +1 -5
- data/lib/mutx/view/{tasks/admin/view.mote → admin/tasks/show.mote} +1 -3
- data/lib/mutx/view/body.mote +13 -51
- data/lib/mutx/view/{custom/params.mote → custom-params/_custom_params.mote} +3 -4
- data/lib/mutx/view/{custom/params → custom-params/types}/json.mote +0 -0
- data/lib/mutx/view/{custom/params → custom-params/types}/select_list.mote +0 -0
- data/lib/mutx/view/{custom/params → custom-params/types}/text.mote +0 -0
- data/lib/mutx/view/error_handler.mote +4 -54
- data/lib/mutx/view/features/{feature.mote → file.mote} +0 -0
- data/lib/mutx/view/features/index.mote +9 -0
- data/lib/mutx/view/git_information.mote +2 -8
- data/lib/mutx/view/help/{main.mote → _main.mote} +0 -0
- data/lib/mutx/view/help/{page.mote → _page.mote} +0 -0
- data/lib/mutx/view/help/{search_result.mote → _search_result.mote} +0 -0
- data/lib/mutx/view/help/index.mote +38 -0
- data/lib/mutx/view/layout/flash.mote +7 -0
- data/lib/mutx/view/{footer.mote → layout/footer.mote} +1 -1
- data/lib/mutx/view/layout/javascript.mote +6 -0
- data/lib/mutx/view/{modals.mote → layout/modals.mote} +0 -0
- data/lib/mutx/view/layout/navigation_bar.mote +88 -0
- data/lib/mutx/view/{styles.mote → layout/styles.mote} +10 -0
- data/lib/mutx/view/logs/{logs.mote → index.mote} +1 -1
- data/lib/mutx/view/logs/show.mote +3 -0
- data/lib/mutx/view/repositories/_repository.mote +7 -0
- data/lib/mutx/view/repositories/index.mote +23 -0
- data/lib/mutx/view/repositories/show.mote +21 -0
- data/lib/mutx/view/results/{detailed_info.mote → _result.mote} +5 -5
- data/lib/mutx/view/results/console.mote +63 -106
- data/lib/mutx/view/results/{all.mote → index.mote} +18 -24
- data/lib/mutx/view/sections.rb +36 -24
- data/lib/mutx/view/task_results/_result.mote +57 -0
- data/lib/mutx/view/{results/result.mote → task_results/_result_item.mote} +6 -5
- data/lib/mutx/view/task_results/index.mote +35 -0
- data/lib/mutx/view/tasks/_task.mote +90 -0
- data/lib/mutx/view/tasks/index.mote +61 -0
- data/lib/mutx/view/tasks/show.mote +167 -0
- data/lib/mutx/view/tests/_test.mote +90 -0
- data/lib/mutx/view/tests/index.mote +59 -0
- data/lib/mutx/view/tests/show.mote +172 -0
- data/lib/mutx/view/view.rb +172 -10
- metadata +89 -50
- data/lib/mutx/database/middleware.rb +0 -18
- data/lib/mutx/view/features.mote +0 -57
- data/lib/mutx/view/features/features_list.mote +0 -10
- data/lib/mutx/view/help.mote +0 -75
- data/lib/mutx/view/logs/log.mote +0 -3
- data/lib/mutx/view/message.mote +0 -8
- data/lib/mutx/view/navigation_bar.mote +0 -67
- data/lib/mutx/view/results/results.mote +0 -112
- data/lib/mutx/view/tasks/message.mote +0 -37
- data/lib/mutx/view/tasks/task.mote +0 -167
- data/lib/mutx/view/tasks/task_item.mote +0 -77
- data/lib/mutx/view/tasks/tasks.mote +0 -74
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Admin
|
|
5
|
+
class Routes < App
|
|
6
|
+
define do
|
|
7
|
+
with_authentication do
|
|
8
|
+
on('tasks') { run Tasks::Routes }
|
|
9
|
+
on('custom-params') { run CustomParams::Routes }
|
|
10
|
+
on('repositories') { run Repositories::Routes }
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Admin
|
|
5
|
+
module CustomParams
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
|
|
9
|
+
on get do
|
|
10
|
+
|
|
11
|
+
on root do
|
|
12
|
+
custom_params = Mutx::API::CustomParams.list
|
|
13
|
+
res.write view('Admin Custom Params', custom_params: custom_params)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
on 'new' do
|
|
17
|
+
res.write view('Admin Custom Params New')
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
on ':custom_param_id/edit' do |custom_param_id|
|
|
21
|
+
unless Mutx::Tasks::Custom::Params.exist? custom_param_id
|
|
22
|
+
flash[:error] = 'Could not find Custom Parameter'
|
|
23
|
+
res.redirect path_for(:admin_custom_params_index)
|
|
24
|
+
end
|
|
25
|
+
custom_param = Mutx::Tasks::Custom::Param.get(custom_param_id).structure
|
|
26
|
+
res.write view('Admin Custom Params Edit', custom_param: custom_param)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
on ':custom_param_id/delete' do |custom_param_id|
|
|
30
|
+
custom_param = Mutx::Tasks::Custom::Param.get(custom_param_id).structure
|
|
31
|
+
res.write view('Admin Custom Params Delete', custom_param: custom_param)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
on post do
|
|
36
|
+
|
|
37
|
+
# TO CREATE CUSTOM PARAM
|
|
38
|
+
on root do
|
|
39
|
+
Mutx::Support::Log.debug "data is => #{post_data}"
|
|
40
|
+
response = Mutx::API::CustomParams.set post_data # Creates or update
|
|
41
|
+
# Si success es true
|
|
42
|
+
Mutx::Support::Log.debug "#{response}"
|
|
43
|
+
unless response[:success]
|
|
44
|
+
flash[:error] = response[:message]
|
|
45
|
+
res.redirect path_for(:admin_custom_params_new,
|
|
46
|
+
query_string: {
|
|
47
|
+
name: post_data['name'],
|
|
48
|
+
action: post_data['action'],
|
|
49
|
+
type: post_data['type'],
|
|
50
|
+
value: post_data['value'],
|
|
51
|
+
options: post_data['options'],
|
|
52
|
+
required: post_data['required'],
|
|
53
|
+
clean: false
|
|
54
|
+
})
|
|
55
|
+
else
|
|
56
|
+
flash[:success] = response[:message]
|
|
57
|
+
res.redirect path_for(:admin_custom_params_index)
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
on ':custom_param_id/delete' do |custom_param_id|
|
|
62
|
+
response = Mutx::API::CustomParams.set post_data # Creates or update
|
|
63
|
+
flash[:info] = response[:message]
|
|
64
|
+
res.redirect path_for(:admin_custom_params_index)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# TO EDIT CUSTOM PARAM
|
|
68
|
+
on ':custom_param_id' do |custom_param_id|
|
|
69
|
+
Mutx::Support::Log.debug "data is => #{post_data}"
|
|
70
|
+
response = Mutx::API::CustomParams.set(post_data) # Creates or update
|
|
71
|
+
# Si success es true
|
|
72
|
+
Mutx::Support::Log.debug "#{response}"
|
|
73
|
+
unless response[:success]
|
|
74
|
+
flash[:error] = response[:message]
|
|
75
|
+
res.redirect path_for(:admin_custom_params_edit,
|
|
76
|
+
custom_param_id: custom_param_id,
|
|
77
|
+
query_string: {
|
|
78
|
+
name: post_data['name'],
|
|
79
|
+
action: post_data['action'],
|
|
80
|
+
type: post_data['type'],
|
|
81
|
+
value: post_data['value'],
|
|
82
|
+
options: post_data['options'],
|
|
83
|
+
required: post_data['required'],
|
|
84
|
+
clean: false
|
|
85
|
+
})
|
|
86
|
+
else
|
|
87
|
+
flash[:success] = response[:message]
|
|
88
|
+
res.redirect path_for(:admin_custom_params_index)
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Admin
|
|
5
|
+
module Repositories
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
on post do
|
|
9
|
+
|
|
10
|
+
# TO CREATE A REPO
|
|
11
|
+
on root do
|
|
12
|
+
Mutx::Support::Log.debug "data is => #{post_data}" #only has a repo_name
|
|
13
|
+
response = Mutx::API::Repo.validate_and_create post_data # Creates a new 'repo'
|
|
14
|
+
# Si success es true
|
|
15
|
+
Mutx::Support::Log.debug "#{response}"
|
|
16
|
+
res.redirect path_for(:admin_repositories_index)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
on get do
|
|
21
|
+
on "new" do
|
|
22
|
+
res.write view('Admin Repositories New', action: 'new')
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
on root do
|
|
26
|
+
repositories = Mutx::Database::MongoConnector.all_repos
|
|
27
|
+
res.write view('Admin Repositories', repositories: repositories)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Admin
|
|
5
|
+
module Tasks
|
|
6
|
+
class Routes < App
|
|
7
|
+
|
|
8
|
+
define do
|
|
9
|
+
on post do
|
|
10
|
+
on root do
|
|
11
|
+
Mutx::Support::Log.debug "New Task - Recieved data => #{post_data}"
|
|
12
|
+
# Extracts custom params
|
|
13
|
+
custom_params = post_data.keys.select do |field|
|
|
14
|
+
field.start_with? "custom_param_" and post_data.delete(field)
|
|
15
|
+
end.inject([]) do |res, value|
|
|
16
|
+
res<<value.gsub("custom_param_",""); res
|
|
17
|
+
end
|
|
18
|
+
post_data["custom_params"] = custom_params
|
|
19
|
+
Mutx::Support::Log.debug "DATA SENT TO Task.set is => #{post_data}"
|
|
20
|
+
response = Mutx::API::Tasks.set post_data # Creates or update
|
|
21
|
+
Mutx::Support::Log.debug "response => []#{response}"
|
|
22
|
+
Mutx::Support::Log.debug "#{response}"
|
|
23
|
+
unless response[:success]
|
|
24
|
+
flash[:error] = response[:message]
|
|
25
|
+
res.redirect path_for(:admin_tasks_new, query_string: {
|
|
26
|
+
name: post_data['name'],
|
|
27
|
+
action: post_data['action'],
|
|
28
|
+
type: post_data['type'],
|
|
29
|
+
value: post_data['value'],
|
|
30
|
+
options: post_data['options'],
|
|
31
|
+
required: post_data['required'],
|
|
32
|
+
clean: false
|
|
33
|
+
})
|
|
34
|
+
else
|
|
35
|
+
flash[:success] = response[:message]
|
|
36
|
+
res.redirect path_for(:admin_tasks_index)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
on ':task_id/delete' do |task_id|
|
|
41
|
+
Mutx::Support::Log.debug "DATA SENT TO Task.delete is => #{post_data}"
|
|
42
|
+
result = Mutx::Tasks.delete! task_id
|
|
43
|
+
flash[:info] = result[:message]
|
|
44
|
+
res.redirect path_for(:admin_tasks_index)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
on ':task_id' do
|
|
48
|
+
Mutx::Support::Log.debug "Edit Task - Recieved data => #{post_data}"
|
|
49
|
+
# Extracts custom params
|
|
50
|
+
custom_params = post_data.keys.select do |field|
|
|
51
|
+
field.start_with? "custom_param_" and post_data.delete(field)
|
|
52
|
+
end.inject([]) do |res, value|
|
|
53
|
+
res<<value.gsub("custom_param_",""); res
|
|
54
|
+
end
|
|
55
|
+
post_data["custom_params"] = custom_params
|
|
56
|
+
Mutx::Support::Log.debug "DATA SENT TO Task.set is => #{post_data}"
|
|
57
|
+
response = Mutx::API::Tasks.set post_data # Creates or update
|
|
58
|
+
Mutx::Support::Log.debug "response => []#{response}"
|
|
59
|
+
Mutx::Support::Log.debug "#{response}"
|
|
60
|
+
unless response[:success]
|
|
61
|
+
flash[:error] = response[:message]
|
|
62
|
+
res.redirect path_for(:admin_tasks_edit, query_string: {
|
|
63
|
+
name: post_data['name'],
|
|
64
|
+
action: post_data['action'],
|
|
65
|
+
type: post_data['type'],
|
|
66
|
+
value: post_data['value'],
|
|
67
|
+
options: post_data['options'],
|
|
68
|
+
required: post_data['required'],
|
|
69
|
+
clean: false
|
|
70
|
+
})
|
|
71
|
+
else
|
|
72
|
+
flash[:success] = response[:message]
|
|
73
|
+
res.redirect path_for(:admin_tasks_index)
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
on get do
|
|
80
|
+
on root do
|
|
81
|
+
tasks = Mutx::API::Tasks.list["tasks"]
|
|
82
|
+
res.write view('Admin Tasks', tasks: tasks)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
on 'new' do
|
|
86
|
+
res.write view('Admin Tasks New')
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
on ':task_id/edit' do |task_id|
|
|
90
|
+
task = Mutx::Tasks::Task.get(task_id).task_data_structure
|
|
91
|
+
res.write view('Admin Tasks Edit', task: task)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
on ':task_id/delete' do |task_id|
|
|
95
|
+
task = Mutx::Tasks::Task.get(task_id).task_data_structure
|
|
96
|
+
res.write view('Admin Tasks Delete', task: task)
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
on ':task_id/view' do |task_id|
|
|
100
|
+
task = Mutx::Tasks::Task.get(task_id).task_data_structure
|
|
101
|
+
res.write view('Admin Task', task: task)
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
|
|
3
|
+
module Mutx
|
|
4
|
+
module Routes
|
|
5
|
+
module Api
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
begin
|
|
9
|
+
|
|
10
|
+
on('input') { run Api::Input::Routes }
|
|
11
|
+
on('repositories') { run Api::Repositories::Routes }
|
|
12
|
+
on('results') { run Api::Results::Routes }
|
|
13
|
+
on('tasks') { run Api::Tasks::Routes }
|
|
14
|
+
on('tests') { run Api::Tasks::Routes }
|
|
15
|
+
on('custom/params') { run Api::CustomParams::Routes }
|
|
16
|
+
|
|
17
|
+
on get do
|
|
18
|
+
on "version" do
|
|
19
|
+
output = { "version" => Mutx::VERSION}
|
|
20
|
+
res.write output.to_json
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
on "error" do
|
|
24
|
+
query_string = Mutx::Support::QueryString.new req
|
|
25
|
+
output = Mutx::API::Error.show(query_string)
|
|
26
|
+
res.write output.to_json
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
on root do
|
|
30
|
+
response = {"message" => "Please, refer to /help/api for more information"}
|
|
31
|
+
res.write response.to_json
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
rescue => exception
|
|
37
|
+
Mutx::Support::Log.error "Cuba: #{exception} #{exception.backtrace}" if Mutx::Support::Log
|
|
38
|
+
error_title , error_msg = Mutx::Support::ErrorHandlerHelper.evaluate exception
|
|
39
|
+
response = {
|
|
40
|
+
error_title: error_title,
|
|
41
|
+
error_msg: error_msg
|
|
42
|
+
}.to_json
|
|
43
|
+
res.write response
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Api
|
|
5
|
+
module CustomParams
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
on get do
|
|
9
|
+
|
|
10
|
+
on ":name/value" do |name|
|
|
11
|
+
output = {}
|
|
12
|
+
param = Mutx::API::CustomParams.get(name)
|
|
13
|
+
output["app"] = Mutx::Support::Configuration.project_name
|
|
14
|
+
output["request"] = "Custom Parameter value"
|
|
15
|
+
output["custom_param_name"] = param["name"]
|
|
16
|
+
output["value"] = param["value"]
|
|
17
|
+
res.write output.to_json
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
on ":name" do |name|
|
|
21
|
+
output = {}
|
|
22
|
+
param = Mutx::API::CustomParams.get(name)
|
|
23
|
+
output["custom_param"] = param
|
|
24
|
+
output["app"] = Mutx::Support::Configuration.project_name
|
|
25
|
+
res.write output.to_json
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
on root do
|
|
29
|
+
output ={}
|
|
30
|
+
output["custom_params"] = Mutx::API::CustomParams.list()
|
|
31
|
+
output["request"]="Custom Params"
|
|
32
|
+
output["app"]=Mutx::Support::Configuration.project_name
|
|
33
|
+
res.write output.to_json
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Api
|
|
5
|
+
module Input
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
on post do
|
|
9
|
+
|
|
10
|
+
on ":id" do |id|
|
|
11
|
+
$result = basic_auth(env) do |user, pass|
|
|
12
|
+
user == "inputs" && pass == "InputsAdmin"
|
|
13
|
+
end
|
|
14
|
+
if $result.eql? true
|
|
15
|
+
Mutx::Support::Log.debug "REFERENCE IS => #{id}"
|
|
16
|
+
data = req.params.dup
|
|
17
|
+
data.store("reference", "#{id}")
|
|
18
|
+
Mutx::Support::Log.debug "DATA TO INPUT IS => #{data}"
|
|
19
|
+
response = Mutx::API::Input.validate_and_create data
|
|
20
|
+
Mutx::Support::Log.debug "RESPONSE => #{response}"
|
|
21
|
+
(res.status = 201
|
|
22
|
+
res.write "status 201") if response.to_s.include? "success=>true"
|
|
23
|
+
(res.status = 404
|
|
24
|
+
res.write "status 404") if response.to_s.include? "success=>false"
|
|
25
|
+
Mutx::Support::Log.debug "STATUS CODE => #{res.status}"
|
|
26
|
+
else
|
|
27
|
+
on default do
|
|
28
|
+
res.status = 401
|
|
29
|
+
res.headers["WWW-Authenticate"] = 'Basic realm="MyApp"'
|
|
30
|
+
res.write "status 401"
|
|
31
|
+
res.write "Access Denied, Mutx don't let you POST without authorization"
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
on get do
|
|
38
|
+
on ":id" do |id|
|
|
39
|
+
output = Mutx::API::Input.get_data(id, query_string.raw)
|
|
40
|
+
res.write output.to_json
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
module Mutx
|
|
3
|
+
module Routes
|
|
4
|
+
module Api
|
|
5
|
+
module Repositories
|
|
6
|
+
class Routes < App
|
|
7
|
+
define do
|
|
8
|
+
|
|
9
|
+
on put do
|
|
10
|
+
# UPDATE A REPO!
|
|
11
|
+
on ":token/:name" do |token, name|
|
|
12
|
+
value = JSON.parse(req.body.read) #passed values in body as json
|
|
13
|
+
Mutx::Support::Log.debug "REPO NAME IS => #{name}"
|
|
14
|
+
data = req.params.dup
|
|
15
|
+
data.store("token", "#{token}")
|
|
16
|
+
data.store("name", "#{name}")
|
|
17
|
+
data.store("value", "#{value}")
|
|
18
|
+
Mutx::Support::Log.debug "DATA TO INPUT IS => #{data}"
|
|
19
|
+
response = Mutx::API::Repo.update! data
|
|
20
|
+
Mutx::Support::Log.debug "RESPONSE => #{response}"
|
|
21
|
+
(res.status = 200
|
|
22
|
+
res.write "status 200") if response.to_s.include? "success=>true"
|
|
23
|
+
(res.status = 404
|
|
24
|
+
res.write "status 404") if response.to_s.include? "success=>false"
|
|
25
|
+
Mutx::Support::Log.debug "STATUS CODE => #{res.status}"
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
on ":repository_id" do |repository_id|
|
|
29
|
+
repository = Mutx::API::Repo.get_data(repository_id)
|
|
30
|
+
value = JSON.parse(req.body.read) #passed values in body as json
|
|
31
|
+
Mutx::Support::Log.debug "REPO NAME IS => #{repository['repo_name']}"
|
|
32
|
+
data = req.params.dup
|
|
33
|
+
data.store("token", headers['X_REPOSITORY_TOKEN'])
|
|
34
|
+
data.store("name", repository['repo_name'])
|
|
35
|
+
data.store("value", "#{value}")
|
|
36
|
+
Mutx::Support::Log.debug "DATA TO INPUT IS => #{data}"
|
|
37
|
+
response = Mutx::API::Repo.update! data
|
|
38
|
+
Mutx::Support::Log.debug "RESPONSE => #{response}"
|
|
39
|
+
(res.status = 200
|
|
40
|
+
res.write "status 200") if response.to_s.include? "success=>true"
|
|
41
|
+
(res.status = 404
|
|
42
|
+
res.write "status 404") if response.to_s.include? "success=>false"
|
|
43
|
+
Mutx::Support::Log.debug "STATUS CODE => #{res.status}"
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
on get do
|
|
51
|
+
on ":repository_id" do |repository_id|
|
|
52
|
+
query_string = Mutx::Support::QueryString.new req
|
|
53
|
+
output = Mutx::API::Repo.get_data(repository_id, query_string.raw)
|
|
54
|
+
(res.status = 200
|
|
55
|
+
output.delete("repo_token")
|
|
56
|
+
res.write output.to_json) if !output.to_s.include? "success=>false"
|
|
57
|
+
(res.status = 404
|
|
58
|
+
res.write "Not Found => status 404") if output.to_s.include? "success=>false"
|
|
59
|
+
Mutx::Support::Log.debug "STATUS CODE => #{res.status}"
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
on root do
|
|
63
|
+
query_string = Mutx::Support::QueryString.new req
|
|
64
|
+
output = Mutx::API::Repo.all
|
|
65
|
+
res.status = 200
|
|
66
|
+
res.write output.map { |item| item.delete("repo_token") && item }.to_json
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|