heidi 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/heidi.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "heidi"
8
- s.version = "0.1.1"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Hartog C. de Mik"]
@@ -23,6 +23,26 @@ h1 a {
23
23
  color: #000;
24
24
  }
25
25
 
26
+ .color1 {
27
+ font-weight: bold;
28
+ }
29
+
30
+ .color3 {
31
+ font-style: italic;
32
+ }
33
+
34
+ .color4 {
35
+ text-decoration: underline;
36
+ }
37
+
38
+ .color9 {
39
+ text-decoration: line-through;
40
+ }
41
+
42
+ .color30 {
43
+ color: black !important;
44
+ }
45
+
26
46
  .failed, .color31 {
27
47
  color: red !important;
28
48
  }
@@ -35,6 +55,56 @@ h1 a {
35
55
  color: yellow !important;
36
56
  }
37
57
 
58
+ .color34 {
59
+ color: blue !important;
60
+ }
61
+
62
+ .color35 {
63
+ color: purple !important;
64
+ }
65
+
66
+ .color36 {
67
+ color: aqua !important;
68
+ }
69
+
70
+ .color37, .color39 {
71
+ color: white !important;
72
+ }
73
+
74
+ .color40, .color49 {
75
+ background-color: #333;
76
+ }
77
+
78
+ .color41 {
79
+ background-color: red;
80
+ }
81
+
82
+ .color42 {
83
+ background-color: green;
84
+ }
85
+
86
+ .color43 {
87
+ background-color: yellow;
88
+ }
89
+
90
+ .color44 {
91
+ background-color: blue;
92
+ }
93
+
94
+ .color45 {
95
+ background-color: purple;
96
+ }
97
+ .color46 {
98
+ background-color: aqua;
99
+ }
100
+ .color47 {
101
+ background-color: white;
102
+ }
103
+
104
+ .status {
105
+ padding-left: 2em;
106
+ }
107
+
38
108
  p {
39
109
  margin: 1em 0;
40
110
  }
@@ -106,3 +176,8 @@ ul {
106
176
  margin-right: 10px;
107
177
  float: left;
108
178
  }
179
+
180
+ .label {
181
+ display: inline-block;
182
+ min-width: 120px;
183
+ }
@@ -1,34 +1,29 @@
1
1
  <h1><%= project.name %></h1>
2
2
 
3
3
  <a href="/"><< back</a><br /><br />
4
- <div class="column">
5
- <h2 class="<%= project.build_status %>"><%= project.build_status %></h2>
6
-
7
- <%
8
- builds = project.builds
9
- current = builds.select { |b| b.commit == project.current_build }.first
10
- %>
4
+ <h2 class="<%= project.build_status %>"><%= project.build_status %></h2>
11
5
 
12
- <% unless current.nil? %>
13
- <% builds -= [ current ] %>
14
- <h2>Current build</h2>
15
- <a class="<%= current.status %>" href="/projects/<%= project.name %>/build/<%= current.commit %>"><%= current.commit %></a>
16
- <br />
17
- <br />
18
- <br />
19
- <% end %>
6
+ <%
7
+ builds = project.builds
8
+ current = builds.select { |b| b.commit == project.current_build }.first
9
+ latest = builds.select { |b| b.commit == project.latest_build }.first
10
+ %>
20
11
 
21
- <h2>Build history</h2>
22
-
23
- <ul>
24
- <% builds.each do |build| %>
25
- <li class="<%= build.status %>"><a href='/projects/<%= project.name %>/build/<%= build.commit %>'><%= build.commit %></a> - <%= build.status %></li>
26
- <% end %>
27
- </ul>
28
- </div>
12
+ <% unless current.nil? && latest.nil?%>
13
+ <h2>Overview</h2>
14
+ <strong class="label">Current</strong> :
15
+ <a class="<%= current.status %>" href="/projects/<%= project.name %>/build/<%= current.commit %>"><%= current.commit %></a>
16
+ <br />
17
+ <strong class="label">Latest successful</strong> :
18
+ <a class="<%= latest.status %>" href="/projects/<%= project.name %>/build/<%= latest.commit %>"><%= latest == current ? "current" : latest.commit %></a>
19
+ <br />
20
+ <br />
21
+ <br />
22
+ <% end %>
29
23
 
24
+ <h2>Build history</h2>
30
25
  <div class="column">
31
- <pre class="terminal"><% project.log.each do |line| %><% build = nil; if (build = line[:build]) %><a href="/projects/<%= project.name %>/build/<%= build.commit %>"><%= ansi_color_codes(line[:line]).chomp %></a>
26
+ <pre class="terminal"><% project.log.each do |line| %><% build = nil; if (build = line[:build]) %><a href="/projects/<%= project.name %>/build/<%= build.commit %>"><%= ansi_color_codes(line[:line]).chomp %></a> <span class="status">[<span class="<%= build.status %>"><%= build.status %></span>]</span>
32
27
  <% else %><%= ansi_color_codes line[:line] %>
33
28
  <% end %><% end %></pre>
34
29
  </div>
data/lib/heidi/web.rb CHANGED
@@ -97,7 +97,11 @@ class Heidi
97
97
  helpers do
98
98
  def ansi_color_codes(string)
99
99
  string.gsub(/\e\[0?m/, '</span>').
100
- gsub(/\e\[([\d\;]+)m/, "<span class=\"color\\1\">")
100
+ gsub /\e\[[^m]+m/ do |codes|
101
+ colors = codes.gsub(/[\e\[m]+/, '')
102
+ classes = colors.split(";").collect { |c| "color#{c}" }
103
+ "<span class=\"#{classes.join(" ")}\">"
104
+ end
101
105
  end
102
106
  end
103
107
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heidi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-02-08 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thin
16
- requirement: &77740420 !ruby/object:Gem::Requirement
16
+ requirement: &86199260 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *77740420
24
+ version_requirements: *86199260
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sinatra
27
- requirement: &77740120 !ruby/object:Gem::Requirement
27
+ requirement: &86198960 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *77740120
35
+ version_requirements: *86198960
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: simple_shell
38
- requirement: &77739770 !ruby/object:Gem::Requirement
38
+ requirement: &86198610 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *77739770
46
+ version_requirements: *86198610
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &77739480 !ruby/object:Gem::Requirement
49
+ requirement: &86198320 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.8.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *77739480
57
+ version_requirements: *86198320
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rdoc
60
- requirement: &77739180 !ruby/object:Gem::Requirement
60
+ requirement: &86198000 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '3.12'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *77739180
68
+ version_requirements: *86198000
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
- requirement: &77734750 !ruby/object:Gem::Requirement
71
+ requirement: &86193660 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 1.0.0
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *77734750
79
+ version_requirements: *86193660
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: jeweler
82
- requirement: &77734400 !ruby/object:Gem::Requirement
82
+ requirement: &86193270 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 1.8.3
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *77734400
90
+ version_requirements: *86193270
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: rcov
93
- requirement: &77734060 !ruby/object:Gem::Requirement
93
+ requirement: &86192970 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,7 +98,7 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *77734060
101
+ version_requirements: *86192970
102
102
  description: CI-Joe alike CI system called Heidi.
103
103
  email: hartog@organisedminds.com
104
104
  executables:
@@ -164,7 +164,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
164
164
  version: '0'
165
165
  segments:
166
166
  - 0
167
- hash: 967555357
167
+ hash: -593404611
168
168
  required_rubygems_version: !ruby/object:Gem::Requirement
169
169
  none: false
170
170
  requirements: