mutx 0.1.69 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/documentation/repos.md +21 -24
  4. data/lib/generators/task_rack.rb +8 -2
  5. data/lib/generators/templates/config.ru.tt +1 -1
  6. data/lib/mutx/API/execution.rb +8 -44
  7. data/lib/mutx/API/repo.rb +7 -10
  8. data/lib/mutx/background_jobs/workers/executor.rb +44 -38
  9. data/lib/mutx/commands/install.rb +1 -1
  10. data/lib/mutx/commands/start.rb +1 -1
  11. data/lib/mutx/custom/execution.rb +1 -1
  12. data/lib/mutx/database/mongo_connector.rb +19 -22
  13. data/lib/mutx/execution.rb +1 -0
  14. data/lib/mutx/lib/authentication.rb +23 -0
  15. data/lib/mutx/lib/helpers.rb +52 -0
  16. data/lib/mutx/lib/middlewares/database_middleware.rb +16 -0
  17. data/lib/mutx/lib/middlewares/flash_middleware.rb +31 -0
  18. data/lib/mutx/lib/middlewares/logger_middleware.rb +13 -0
  19. data/lib/mutx/lib/monkey_patch.rb +28 -0
  20. data/lib/mutx/lib/paths.rb +80 -0
  21. data/lib/mutx/platforms/ruby.rb +8 -0
  22. data/lib/mutx/public/css/bootstrap.min.css +7 -0
  23. data/lib/mutx/public/css/font-awesome.min.css +4 -0
  24. data/lib/mutx/public/css/jquery.json-viewer.css +44 -0
  25. data/{favicon.ico → lib/mutx/public/img/favicon.ico} +0 -0
  26. data/lib/mutx/public/js/bootstrap.min.js +6 -0
  27. data/lib/mutx/public/js/jquery.json-viewer.js +148 -0
  28. data/lib/mutx/public/js/jquery.min.js +6 -0
  29. data/lib/mutx/{view/javascript.mote → public/js/mutx.js} +0 -5
  30. data/lib/mutx/public/js/notify.min.js +1 -0
  31. data/lib/mutx/results/result.rb +60 -68
  32. data/lib/mutx/results/results.rb +4 -0
  33. data/lib/mutx/routes.rb +85 -883
  34. data/lib/mutx/routes/admin_routes.rb +16 -0
  35. data/lib/mutx/routes/admin_routes/custom_params_routes.rb +97 -0
  36. data/lib/mutx/routes/admin_routes/repositories_routes.rb +35 -0
  37. data/lib/mutx/routes/admin_routes/tasks_routes.rb +110 -0
  38. data/lib/mutx/routes/api_routes.rb +49 -0
  39. data/lib/mutx/routes/api_routes/custom_params_routes.rb +41 -0
  40. data/lib/mutx/routes/api_routes/input_routes.rb +48 -0
  41. data/lib/mutx/routes/api_routes/repos_routes.rb +74 -0
  42. data/lib/mutx/routes/api_routes/results_routes.rb +50 -0
  43. data/lib/mutx/routes/api_routes/tasks_routes.rb +47 -0
  44. data/lib/mutx/routes/api_routes/tests_routes.rb +42 -0
  45. data/lib/mutx/routes/features_routes.rb +24 -0
  46. data/lib/mutx/routes/help_routes.rb +23 -0
  47. data/lib/mutx/routes/logs_routes.rb +22 -0
  48. data/lib/mutx/routes/message_routes.rb +24 -0
  49. data/lib/mutx/routes/repositories_routes.rb +25 -0
  50. data/lib/mutx/routes/results_routes.rb +53 -0
  51. data/lib/mutx/routes/task_results_routes.rb +25 -0
  52. data/lib/mutx/routes/tasks_routes.rb +67 -0
  53. data/lib/mutx/routes/tests_routes.rb +66 -0
  54. data/lib/mutx/support/change_inspector.rb +3 -3
  55. data/lib/mutx/support/files_cleanner.rb +12 -3
  56. data/lib/mutx/support/git.rb +11 -2
  57. data/lib/mutx/support/processes.rb +2 -2
  58. data/lib/mutx/support/project_type.rb +12 -0
  59. data/lib/mutx/tasks/task.rb +8 -2
  60. data/lib/mutx/version.rb +1 -1
  61. data/lib/mutx/view/{custom/params/delete_form.mote → admin/custom-params/_delete_form.mote} +2 -4
  62. data/lib/mutx/view/{custom/params/create_edit_form.mote → admin/custom-params/_form.mote} +5 -9
  63. data/lib/mutx/view/{custom/params/custom_param_task_deleting_box.mote → admin/custom-params/_task_deleting_box.mote} +1 -2
  64. data/lib/mutx/view/{custom/params → admin/custom-params}/delete.mote +1 -3
  65. data/lib/mutx/view/{custom/params → admin/custom-params}/edit.mote +1 -5
  66. data/lib/mutx/view/{custom/params/list.mote → admin/custom-params/index.mote} +8 -13
  67. data/lib/mutx/view/{custom/params → admin/custom-params}/new.mote +1 -5
  68. data/lib/mutx/view/{custom/params/custom_param_selection_box.mote → admin/custom-params/selection_box.mote} +2 -3
  69. data/lib/mutx/view/{list_repos.mote → admin/repositories/index.mote} +2 -6
  70. data/lib/mutx/view/{repos.mote → admin/repositories/new.mote} +2 -6
  71. data/lib/mutx/view/{tasks/admin/delete_form.mote → admin/tasks/_delete_form.mote} +2 -12
  72. data/lib/mutx/view/{tasks/admin/create_edit_form.mote → admin/tasks/_form.mote} +6 -9
  73. data/lib/mutx/view/{tasks/admin → admin/tasks}/delete.mote +1 -3
  74. data/lib/mutx/view/{tasks/admin → admin/tasks}/edit.mote +1 -4
  75. data/lib/mutx/view/{tasks/admin/list.mote → admin/tasks/index.mote} +5 -10
  76. data/lib/mutx/view/{tasks/admin → admin/tasks}/new.mote +1 -5
  77. data/lib/mutx/view/{tasks/admin/view.mote → admin/tasks/show.mote} +1 -3
  78. data/lib/mutx/view/body.mote +13 -51
  79. data/lib/mutx/view/{custom/params.mote → custom-params/_custom_params.mote} +3 -4
  80. data/lib/mutx/view/{custom/params → custom-params/types}/json.mote +0 -0
  81. data/lib/mutx/view/{custom/params → custom-params/types}/select_list.mote +0 -0
  82. data/lib/mutx/view/{custom/params → custom-params/types}/text.mote +0 -0
  83. data/lib/mutx/view/error_handler.mote +4 -54
  84. data/lib/mutx/view/features/{feature.mote → file.mote} +0 -0
  85. data/lib/mutx/view/features/index.mote +9 -0
  86. data/lib/mutx/view/git_information.mote +2 -8
  87. data/lib/mutx/view/help/{main.mote → _main.mote} +0 -0
  88. data/lib/mutx/view/help/{page.mote → _page.mote} +0 -0
  89. data/lib/mutx/view/help/{search_result.mote → _search_result.mote} +0 -0
  90. data/lib/mutx/view/help/index.mote +38 -0
  91. data/lib/mutx/view/layout/flash.mote +7 -0
  92. data/lib/mutx/view/{footer.mote → layout/footer.mote} +1 -1
  93. data/lib/mutx/view/layout/javascript.mote +6 -0
  94. data/lib/mutx/view/{modals.mote → layout/modals.mote} +0 -0
  95. data/lib/mutx/view/layout/navigation_bar.mote +88 -0
  96. data/lib/mutx/view/{styles.mote → layout/styles.mote} +10 -0
  97. data/lib/mutx/view/logs/{logs.mote → index.mote} +1 -1
  98. data/lib/mutx/view/logs/show.mote +3 -0
  99. data/lib/mutx/view/repositories/_repository.mote +7 -0
  100. data/lib/mutx/view/repositories/index.mote +23 -0
  101. data/lib/mutx/view/repositories/show.mote +21 -0
  102. data/lib/mutx/view/results/{detailed_info.mote → _result.mote} +5 -5
  103. data/lib/mutx/view/results/console.mote +63 -106
  104. data/lib/mutx/view/results/{all.mote → index.mote} +18 -24
  105. data/lib/mutx/view/sections.rb +36 -24
  106. data/lib/mutx/view/task_results/_result.mote +57 -0
  107. data/lib/mutx/view/{results/result.mote → task_results/_result_item.mote} +6 -5
  108. data/lib/mutx/view/task_results/index.mote +35 -0
  109. data/lib/mutx/view/tasks/_task.mote +90 -0
  110. data/lib/mutx/view/tasks/index.mote +61 -0
  111. data/lib/mutx/view/tasks/show.mote +167 -0
  112. data/lib/mutx/view/tests/_test.mote +90 -0
  113. data/lib/mutx/view/tests/index.mote +59 -0
  114. data/lib/mutx/view/tests/show.mote +172 -0
  115. data/lib/mutx/view/view.rb +172 -10
  116. metadata +89 -50
  117. data/lib/mutx/database/middleware.rb +0 -18
  118. data/lib/mutx/view/features.mote +0 -57
  119. data/lib/mutx/view/features/features_list.mote +0 -10
  120. data/lib/mutx/view/help.mote +0 -75
  121. data/lib/mutx/view/logs/log.mote +0 -3
  122. data/lib/mutx/view/message.mote +0 -8
  123. data/lib/mutx/view/navigation_bar.mote +0 -67
  124. data/lib/mutx/view/results/results.mote +0 -112
  125. data/lib/mutx/view/tasks/message.mote +0 -37
  126. data/lib/mutx/view/tasks/task.mote +0 -167
  127. data/lib/mutx/view/tasks/task_item.mote +0 -77
  128. 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