mutx 0.1.63 → 0.1.64

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 18864110b5fce7d741a7c69be950a5208445100c
4
- data.tar.gz: 0e5a3a91f9d06fb81a6f81f1636a378d7a5042f2
3
+ metadata.gz: 9b257730c4744554045a3ddfb825e14e9d7803c1
4
+ data.tar.gz: c89992c76350f4b3a3bae1090e2c8011cdc0d348
5
5
  SHA512:
6
- metadata.gz: 02062fe7716c174576880e11e27e97088ea0d8f3a4ec0043e28f5dc188180aa74f87e9020939dca8165ffd131858614dcb94fd809b3b6223361201f6d0463007
7
- data.tar.gz: e4a20c6e03e918c0acdc810ab858655c863aea3f84e028818dc1e4bba9d4eac06ff6e325092f16f2b0abe90627e89ebc25e0fbf2513acecb100fbda721aed085
6
+ metadata.gz: 651690d6f668b7862f460dc19fa5946f06239f827143fbf0be9ba25f316aacab191b50b0910b14299d0feb3b1826b804a59d432b6fde228f00849b16883ae3c6
7
+ data.tar.gz: 350d922f8ee3a4b03d9a776d6afc189e2add57ba58a868d2685947693d3de6f4afffe34664a31e1b5924635e24bcbc3a4e058bfa9fe29bc7217f70f5391d541e
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mutx (0.1.63)
4
+ mutx (0.1.64)
5
5
  basica
6
6
  bson_ext
7
7
  byebug
@@ -95,7 +95,7 @@ GEM
95
95
  raindrops (0.17.0)
96
96
  rake (12.0.0)
97
97
  redcarpet (3.4.0)
98
- redis (3.3.2)
98
+ redis (3.3.3)
99
99
  require_all (1.4.0)
100
100
  rufus-scheduler (3.3.2)
101
101
  tzinfo
@@ -29,6 +29,11 @@ module Mutx
29
29
  data["information"] = nil if data["information"].nil?
30
30
  data["last_exec_time"] = Time.now.utc
31
31
  data["stop_bots"] = data["stop_bots"]
32
+ if data["task_status"] == "off"
33
+ data["task_status"] = "off"
34
+ else
35
+ data["task_status"] = "on"
36
+ end
32
37
  data
33
38
  end
34
39
 
@@ -13,6 +13,7 @@ module Mutx
13
13
  recurrence { minutely(1) }
14
14
 
15
15
  def perform
16
+ #def self.checker
16
17
  Mutx::Database::MongoConnector.new Mutx::Support::Configuration.db_connection_data
17
18
  running_task = []
18
19
  #running_task = Mutx::Database::MongoConnector.running_now
@@ -20,7 +21,7 @@ module Mutx
20
21
  puts "######### STARTING CRON ##########"
21
22
 
22
23
  if running_task.eql? []
23
-
24
+
24
25
  @days = [:mo,:tu,:we,:th,:fr,:sa,:su]
25
26
  @today = day_name #name of today
26
27
 
@@ -30,7 +31,7 @@ module Mutx
30
31
 
31
32
  puts "#{cron_tasks_list.size} cronned task searched"
32
33
 
33
- cron_tasks_list.select{|line| cron_tasks << line if (((Time.now.utc - line[:last_exec_time].utc) + 1) >= (line[:cron_time].to_i * 60))}
34
+ cron_tasks_list.select{|line| cron_tasks << line if ( (((Time.now.utc - line[:last_exec_time].utc) + 1) >= (line[:cron_time].to_i * 60)) && (line[:task_status].eql? "on") )}
34
35
  cron_tasks_list = []
35
36
  cron_tasks_list = cron_tasks
36
37
  puts "#{cron_tasks_list.size} POSSIBLE cronned task on time to run"
@@ -71,13 +72,14 @@ module Mutx
71
72
 
72
73
  end#cron_task
73
74
 
74
- ##Mutx::Database::MongoConnector.force_close
75
+ Mutx::Database::MongoConnector.close
75
76
  puts "######### ENDING CRON ##########"
76
77
  else ## si hay algo corriendo deja pasar toda la ejecucion hasta que finalice
77
78
  puts
78
79
  puts "HAY EJECUCIONES EN RUNNING O STARTED, SE ESPERA A QUE TERMINEN..."
79
80
  puts
80
81
  puts "######### ENDING CRON ##########"
82
+ Mutx::Database::MongoConnector.close
81
83
  end
82
84
 
83
85
  end #perform
@@ -369,6 +369,10 @@ module Mutx
369
369
  $results.update_one({"_id" => result_id}, {"$set" => {"file_attached" => "yes"}})
370
370
  end
371
371
 
372
+ def self.update_status task_id, status
373
+ $tasks.update_one({"_id" => task_id}, {"$set" => {"task_status" => status}})
374
+ end
375
+
372
376
  def self.active_tasks
373
377
  self.all_tasks
374
378
  end
data/lib/mutx/routes.rb CHANGED
@@ -490,6 +490,44 @@ Cuba.define do
490
490
  res.redirect path
491
491
  end
492
492
 
493
+ on "task/status/:task_name" do |task_name|
494
+ task = Mutx::Tasks::Task.get_task_with task_name.gsub(/%20/, " ")
495
+ if task.blocked.eql? "on"
496
+ $result = basic_auth(env) do |user, pass|
497
+ user == "mutx" && pass == "mutxAdmin"
498
+ end
499
+ if $result.eql? true
500
+ query_string = Mutx::Support::QueryString.new req
501
+ task_name = task_name.gsub!("%20"," ") if task_name.include? "%20"
502
+ task = Mutx::Database::MongoConnector.task_data_for_name(task_name)
503
+ if task["task_status"].eql? "off"
504
+ status = "on"
505
+ else
506
+ status = "off"
507
+ end
508
+ Mutx::Database::MongoConnector.update_status(task["_id"], status)
509
+ res.redirect "/tasks"
510
+ else
511
+ on default do
512
+ res.status = 401
513
+ res.headers["WWW-Authenticate"] = 'Basic realm="MyApp"'
514
+ res.write "Access Denied, Mutx don't let you STOP/START this execution without authorization"
515
+ end
516
+ end
517
+ else
518
+ query_string = Mutx::Support::QueryString.new req
519
+ task_name = task_name.gsub!("%20"," ") if task_name.include? "%20"
520
+ task = Mutx::Database::MongoConnector.task_data_for_name(task_name)
521
+ if task["task_status"].eql? "off"
522
+ status = "on"
523
+ else
524
+ status = "off"
525
+ end
526
+ Mutx::Database::MongoConnector.update_status(task["_id"], status)
527
+ res.redirect "/tasks"
528
+ end
529
+ end
530
+
493
531
 
494
532
  on "message/task/:result_id" do |result_id|
495
533
  query_string = Mutx::Support::QueryString.new req
@@ -860,7 +898,7 @@ Cuba.define do
860
898
 
861
899
  end
862
900
 
863
- ##Mutx::Database::MongoConnector.force_close
901
+ ##Mutx::Database::MongoConnector.close
864
902
 
865
903
  rescue => e
866
904
  Mutx::Support::Log.error "Cuba: #{e} #{e.backtrace}" if Mutx::Support::Log
@@ -143,6 +143,7 @@ module Mutx
143
143
  else
144
144
  puts "Misconfiguration on email settings"
145
145
  end
146
+ Mutx::Database::MongoConnector.close
146
147
  end
147
148
  end
148
149
  end
@@ -44,7 +44,8 @@ module Mutx
44
44
  :su,
45
45
  :start_time,
46
46
  :stop_time,
47
- :stop_bots
47
+ :stop_bots,
48
+ :task_status
48
49
 
49
50
  REGEX_VALID_VALUES = ["failed","passed","none"]
50
51
  NOTIFY_VALID_VALUES = ["any","passed","failed"]
@@ -93,6 +94,7 @@ module Mutx
93
94
  @stop_time = task_data["stop_time"]
94
95
  @notify_on = task_data["notify_on"] || "any"
95
96
  @stop_bots = task_data["stop_bots"]
97
+ @task_status = task_data["task_status"] || "off"
96
98
  else
97
99
  Mutx::Support::Log.error "Creting task object. Argument is not a hash" if Mutx::Support::Log
98
100
  raise "Task data not defined correctly. Expecting info about task"
@@ -159,7 +161,8 @@ module Mutx
159
161
  "stop_time" => data["stop_time"],
160
162
  "value_for_regex" => data["value_for_regex"],
161
163
  "notify_on" => data["notify_on"],
162
- "stop_bots" => data["stop_bots"]
164
+ "stop_bots" => data["stop_bots"],
165
+ "task_status" => data["task_status"]
163
166
  }
164
167
  self.new(task_data)
165
168
  end
@@ -300,7 +303,8 @@ module Mutx
300
303
  "stop_time" => stop_time,
301
304
  "value_for_regex" => value_for_regex,
302
305
  "notify_on" => notify_on,
303
- "stop_bots" => stop_bots
306
+ "stop_bots" => stop_bots,
307
+ "task_status" => task_status
304
308
  }
305
309
  end
306
310
 
@@ -367,4 +371,4 @@ module Mutx
367
371
  end
368
372
 
369
373
  end
370
- end
374
+ end
data/lib/mutx/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mutx
2
- VERSION = "0.1.63"
2
+ VERSION = "0.1.64"
3
3
  end
@@ -2,6 +2,11 @@
2
2
  # encoding: utf-8
3
3
  query_string = args[:query_string]
4
4
 
5
+ msg = if query_string.msg
6
+ message_file_path = File.read("#{Mutx::View.path}/message.mote")
7
+ Mote.parse(message_file_path, self, [:query_string]).call(query_string: query_string)
8
+ end
9
+
5
10
  clean = query_string.clean || false
6
11
 
7
12
  message = section =~ /message/i ? " onload=\"javascript:startTimer();\"" : nil
@@ -54,14 +59,14 @@
54
59
 
55
60
  {{navigation_bar}}
56
61
 
57
-
62
+ {{msg}}
58
63
 
59
64
  <div class='container'>
60
65
  <br>
61
66
  {{git_information}}
62
67
  </div>
63
68
  <div class='container'>
64
-
69
+
65
70
  <p>{{content}}</p>
66
71
 
67
72
  {{footer}}
@@ -0,0 +1,13 @@
1
+ <?
2
+
3
+ output = Mutx::API::Result.last_notified
4
+
5
+ ?>
6
+
7
+ <div class="well">
8
+ <div style='width: 100%; display: table;'>
9
+ <div style='display: table-row'>
10
+ <div style='width: 600px; display: table-cell;'>{{output}}</div>
11
+ </div>
12
+ </div>
13
+ </div>
@@ -0,0 +1,8 @@
1
+ <div style="padding: 20px; z-index: 9999; position: absolute; top: 20px; right: 20px;">
2
+ <div class="alert alert-info alert-dismissible fade in" role="alert">
3
+ <button type="button" class="close" data-dismiss="alert" aria-label="Close">
4
+ <span aria-hidden="true"> × </span>
5
+ </button>
6
+ <strong>{{query_string.msg[0..30]}}</strong>
7
+ </div>
8
+ </div>
@@ -35,6 +35,11 @@ color = Mutx::View.color(status)
35
35
  </h3>
36
36
  </div>
37
37
  <div class="panel-body">
38
+ % if (task["task_status"].eql? "off")
39
+ <a href="task/status/{{task["name"].gsub(' ','%20')}}" title= "Click to allow task to be cronned" class="label label-danger" aria-hidden="true">&nbsp;<i <span class="glyphicon glyphicon-off"></span> OFF </i></a>
40
+ % elsif (task["task_status"].eql? "on")
41
+ <a href="task/status/{{task["name"].gsub(' ','%20')}}" title= "Click to stop task and cannot be cronned" class="label label-success" aria-hidden="true">&nbsp;<i <span class="glyphicon glyphicon-play-circle"></span> ON </i></a>
42
+ % end
38
43
  <a href='/{{task["type"]}}s/{{task["name"].gsub(' ','%20')}}' class='label label-success'>
39
44
  Open</a>
40
45
  <a href='/results/task/{{task["name"].gsub(' ','%20')}}' class='label label-info'>
@@ -69,4 +74,4 @@ color = Mutx::View.color(status)
69
74
  width: auto;
70
75
  padding: 10px;
71
76
  }
72
- </style>
77
+ </style>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mutx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.63
4
+ version: 0.1.64
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Rodriguez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-26 00:00:00.000000000 Z
11
+ date: 2017-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -493,9 +493,11 @@ files:
493
493
  - lib/mutx/view/help/page.mote
494
494
  - lib/mutx/view/help/search_result.mote
495
495
  - lib/mutx/view/javascript.mote
496
+ - lib/mutx/view/last_notified.mote
496
497
  - lib/mutx/view/list_repos.mote
497
498
  - lib/mutx/view/logs/log.mote
498
499
  - lib/mutx/view/logs/logs.mote
500
+ - lib/mutx/view/message.mote
499
501
  - lib/mutx/view/modals.mote
500
502
  - lib/mutx/view/navigation_bar.mote
501
503
  - lib/mutx/view/not_found.mote