hell 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.2.1
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "hell"
8
- s.version = "0.2.0"
8
+ s.version = "0.2.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jose Diaz-Gonzalez"]
12
- s.date = "2013-03-11"
12
+ s.date = "2013-06-24"
13
13
  s.description = "Hell is an open source web interface that exposes a set of capistrano recipes as a json api, for usage within large teams"
14
14
  s.email = "jose@seatgeek.com"
15
15
  s.executables = ["hell", "hell-pusher"]
@@ -90,6 +90,10 @@ module Hell
90
90
  erb :index
91
91
  end
92
92
 
93
+ get '/_status' do
94
+ json({:message => 'ok', :status => 200})
95
+ end
96
+
93
97
  get '/tasks' do
94
98
  tasks = cap.tasks
95
99
  json tasks
@@ -211,7 +211,7 @@ module Hell
211
211
  end
212
212
 
213
213
  def self.runner_option_parser(args)
214
- options = options = {
214
+ options = {
215
215
  :environment => nil,
216
216
  :task => nil,
217
217
  :verbose => false,
@@ -8,20 +8,23 @@ module Hell
8
8
 
9
9
  def escape_to_html(data)
10
10
  {
11
- 1 => :nothing,
12
- 2 => :nothing,
13
- 4 => :nothing,
14
- 5 => :nothing,
15
- 7 => :nothing,
16
- 8 => :backspace,
17
- 30 => "#303030",
18
- 31 => "#D10915",
19
- 32 => "#53A948",
20
- 33 => "#CD7D3D",
21
- 34 => "#3582E0",
22
- 35 => :magenta,
23
- 36 => "#30EFEF",
24
- 37 => :white,
11
+ 1 => {:color => :none, :class => "bold", :type => :special},
12
+ 2 => {:color => :none, :class => "low-intensity", :type => :special},
13
+ 3 => {:color => :none, :class => "italic", :type => :special},
14
+ 4 => {:color => :none, :class => "underline", :type => :special},
15
+ 5 => {:color => :none, :class => "blink-slow", :type => :special},
16
+ 5 => {:color => :none, :class => "blink-rapid", :type => :special},
17
+ 7 => {:color => :none, :class => "reverse", :type => :special},
18
+ 8 => {:color => :none, :class => "conceal", :type => :special},
19
+ 9 => {:color => :none, :class => "crossed-out", :type => :special},
20
+ 30 => {:color => "000000", :class => "color-black", :type => :color},
21
+ 31 => {:color => "7F0000", :class => "color-red", :type => :color},
22
+ 32 => {:color => "007F05", :class => "color-green", :type => :color},
23
+ 33 => {:color => "807F00", :class => "color-yellow", :type => :color},
24
+ 34 => {:color => "0D0080", :class => "color-blue", :type => :color},
25
+ 35 => {:color => "800080", :class => "color-magenta", :type => :color},
26
+ 36 => {:color => "00807F", :class => "color-cyan", :type => :color},
27
+ 37 => {:color => "C0C0C0", :class => "color-white", :type => :color},
25
28
  40 => :nothing,
26
29
  41 => :nothing,
27
30
  43 => :nothing,
@@ -32,10 +35,12 @@ module Hell
32
35
  }.each do |key, value|
33
36
  if value == :nothing
34
37
  data.gsub!(/\e\[#{key}m/,"<span>")
35
- elsif value == :backspace
36
- data.gsub!(/.[\b]/, '')
37
- else
38
- data.gsub!(/\e\[#{key}m/,"<span style=\"color:#{value}\">")
38
+ elsif value.is_a? Hash
39
+ if value[:class] == 'conceal'
40
+ data.gsub!(/.[\b]/, '')
41
+ else
42
+ data.gsub!(/\e\[#{key}m/, "<span class=\"#{value[:class]}\">")
43
+ end
39
44
  end
40
45
  end
41
46
  data.gsub!(/\e\[0m/, '</span>')
@@ -57,6 +62,7 @@ module Hell
57
62
  out << "data: " + ws_message(line) + "\n\n" unless out.closed?
58
63
  raise TailDone if HELL_SENTINEL_STRINGS.any? { |w| line =~ /#{w}/ }
59
64
  rescue
65
+ logger.info "kill " + io.pid
60
66
  Process.kill("KILL", io.pid)
61
67
  end
62
68
  end
@@ -120,6 +120,50 @@ td.task-rerun {
120
120
  -moz-border-radius: 4px;
121
121
  border-radius: 4px;
122
122
  }
123
+ .task-output .bold { font-weight: bold; }
124
+ .task-output .low-intensity { font-weight: lighter; }
125
+ .task-output .italic { font-style: italic; }
126
+ .task-output .underline { text-decoration: underline; }
127
+ .task-output .blink-slow {
128
+ -moz-animation-name: blinker;
129
+ -webkit-animation-name: blinker;
130
+ -moz-animation-iteration-count: infinite;
131
+ -webkit-animation-iteration-count: infinite;
132
+ -moz-animation-timing-function: cubic-bezier(1.0,0,0,1.0);
133
+ -webkit-animation-timing-function: cubic-bezier(1.0,0,0,1.0);
134
+ -moz-animation-duration: 2s;
135
+ -webkit-animation-duration: 2s;
136
+ }
137
+ .task-output .blink-rapid {
138
+ -moz-animation-name: blinker;
139
+ -webkit-animation-name: blinker;
140
+ -moz-animation-iteration-count: infinite;
141
+ -webkit-animation-iteration-count: infinite;
142
+ -moz-animation-timing-function: cubic-bezier(1.0,0,0,1.0);
143
+ -webkit-animation-timing-function: cubic-bezier(1.0,0,0,1.0);
144
+ -moz-animation-duration: 1s;
145
+ -webkit-animation-duration: 1s;
146
+ }
147
+ .task-output .reverse { unicode-bidi:bidi-override; direction:rtl; }
148
+ .task-output .conceal { display:none; }
149
+ .task-output .crossed-out { text-decoration: line-through; }
150
+ .task-output .color-black { color: #00000;}
151
+ .task-output .color-red { color: #7F0000; }
152
+ .task-output .color-green { color: #007F05;}
153
+ .task-output .color-yellow { color: #807F00; }
154
+ .task-output .color-blue { color: #0D0080; }
155
+ .task-output .color-magenta { color: #800080; }
156
+ .task-output .color-cyan { color: #00807F; }
157
+ .task-output .color-white { color: #C0C0C0;}
158
+
159
+ @-webkit-keyframes blinker {
160
+ from { opacity: 1.0; }
161
+ to { opacity: 0.0; }
162
+ }
163
+ @-moz-keyframes blinker {
164
+ from { opacity: 1.0; }
165
+ to { opacity: 0.0; }
166
+ }
123
167
 
124
168
  /* =============== Progress Bar Overlay */
125
169
  .black-overlay {
@@ -164,7 +164,7 @@ $(function() {
164
164
  });
165
165
  },
166
166
 
167
- _executeEventsource: function(task_id) {
167
+ _executeEventsource: function(task_id, name) {
168
168
  var that = this;
169
169
 
170
170
  // Create new EventSource
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-11 00:00:00.000000000 Z
12
+ date: 2013-06-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: capistrano
@@ -255,7 +255,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
255
255
  version: '0'
256
256
  segments:
257
257
  - 0
258
- hash: -2087860351003938988
258
+ hash: -95932347587502057
259
259
  required_rubygems_version: !ruby/object:Gem::Requirement
260
260
  none: false
261
261
  requirements: