heidi 0.2.1 → 0.3.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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.3.0
data/bin/heidi CHANGED
@@ -7,6 +7,10 @@ cmd = ARGV.shift
7
7
  for_a = ARGV.shift
8
8
 
9
9
  ENV['PATH'] = "/bin:/usr/bin:/usr/local/bin"
10
+ if ENV['HEIDI_PATH']
11
+ ENV['PATH'] += ":#{ENV['HEIDI_PATH']}"
12
+ ENV['HEIDI_PATH'] = nil
13
+ end
10
14
 
11
15
  shell = SimpleShell.new
12
16
 
@@ -19,10 +23,9 @@ end
19
23
 
20
24
  case cmd
21
25
  when "new"
22
- puts "creating #{for_a}"
26
+ puts "creating #{for_a}/"
23
27
  puts "creating #{for_a}/projects"
24
28
  shell.mkdir %W(-p #{for_a}/projects)
25
- puts "creating #{for_a}/bin"
26
29
  shell.mkdir %W(-p #{for_a}/bin)
27
30
  puts "creating #{for_a}/Gemfile"
28
31
  File.open("#{for_a}/Gemfile", File::CREAT|File::WRONLY) do |f|
@@ -30,14 +33,27 @@ when "new"
30
33
  f.puts 'gem "heidi"'
31
34
  end
32
35
 
33
- puts "running bundle install"
34
- shell.in(for_a) do |sh|
35
- sh.bundle "install --binstubs --deployment"
36
- end
36
+ puts "\nIf you like you can run: bundle install --binstubs"
37
+ puts "this will tie heidi and heidi_web to this location"
38
+ puts "\nFor even more tying down, run: bundle install --deployment"
39
+ puts "after running bundle install --binstubs"
40
+
37
41
 
38
42
  when "project"
43
+ repo = ARGV.shift
44
+
45
+ if repo.nil?
46
+ $stderr.puts "You must specify a repository"
47
+ exit 1
48
+ end
49
+
39
50
  check_heidi_root
40
51
 
52
+ if File.exists? "projects/#{for_a}"
53
+ $stderr.puts "projects/#{for_a} is in the way. Please remove it"
54
+ exit 1
55
+ end
56
+
41
57
  # create a logs dir
42
58
  puts "creating projects/#{for_a}"
43
59
  puts "creating projects/#{for_a}/logs"
@@ -51,7 +67,7 @@ when "project"
51
67
  # make a clone
52
68
  shell.in("projects/#{for_a}") do |sh|
53
69
  puts "filling #{for_a} cache"
54
- repo = ARGV.shift
70
+
55
71
  puts "git clone #{repo}"
56
72
  sh.git %W(clone #{repo} cached)
57
73
 
@@ -60,7 +76,7 @@ when "project"
60
76
  cached.git %W(config heidi.name #{for_a})
61
77
  end
62
78
  end
63
- puts "Creating default test hook: projects/#{for_a}/hooks/test/01_rspec"
79
+ puts "Creating default test hook: projects/#{for_a}/hooks/tests/01_rspec"
64
80
  File.open("projects/#{for_a}/hooks/tests/01_rspec", File::CREAT|File::WRONLY) do |f|
65
81
  f.puts %q(#!/bin/sh
66
82
 
@@ -68,7 +84,7 @@ when "project"
68
84
  bundle exec rake spec
69
85
  )
70
86
  end
71
- shell.chmod %W(+x projects/#{for_a}/hooks/test/01_rspec)
87
+ shell.chmod %W(+x projects/#{for_a}/hooks/tests/01_rspec)
72
88
  puts "\n"
73
89
  puts "Now edit or add some hooks and run: heidi integrate #{for_a}"
74
90
 
data/heidi.gemspec CHANGED
@@ -5,14 +5,14 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "heidi"
8
- s.version = "0.2.1"
8
+ s.version = "0.3.0"
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"]
12
- s.date = "2012-02-09"
12
+ s.date = "2012-02-14"
13
13
  s.description = "CI-Joe alike CI system called Heidi."
14
14
  s.email = "hartog@organisedminds.com"
15
- s.executables = ["heidi", "heidi_console", "heidi_cron", "heidi_web"]
15
+ s.executables = ["heidi", "heidi_web"]
16
16
  s.extra_rdoc_files = [
17
17
  "LICENSE.txt",
18
18
  "README.rdoc"
@@ -27,8 +27,6 @@ Gem::Specification.new do |s|
27
27
  "Rakefile",
28
28
  "VERSION",
29
29
  "bin/heidi",
30
- "bin/heidi_console",
31
- "bin/heidi_cron",
32
30
  "bin/heidi_web",
33
31
  "heidi.gemspec",
34
32
  "lib/heidi.rb",
@@ -46,6 +44,8 @@ Gem::Specification.new do |s|
46
44
  "lib/heidi/web/public/images/OrganisedMinds.png",
47
45
  "lib/heidi/web/public/images/heidi.jpeg",
48
46
  "lib/heidi/web/views/build.erb",
47
+ "lib/heidi/web/views/commit.erb",
48
+ "lib/heidi/web/views/config.erb",
49
49
  "lib/heidi/web/views/home.erb",
50
50
  "lib/heidi/web/views/layout.erb",
51
51
  "lib/heidi/web/views/project.erb",
@@ -63,7 +63,7 @@ Gem::Specification.new do |s|
63
63
  s.homepage = "http://github.com/coffeeaddict/heid"
64
64
  s.licenses = ["MIT"]
65
65
  s.require_paths = ["lib"]
66
- s.rubygems_version = "1.8.10"
66
+ s.rubygems_version = "1.8.16"
67
67
  s.summary = "A naive CI system"
68
68
 
69
69
  if s.respond_to? :specification_version then
data/lib/heidi/git.rb CHANGED
@@ -37,6 +37,12 @@ class Heidi
37
37
  res.out.split("\n").collect{ |b| b.gsub(/^[\s*]+/, '') }
38
38
  end
39
39
 
40
+ def remote_branches
41
+ res = @shell.git(%W(branch --no-color -r))
42
+ branches = res.out.split("\n").collect{ |b| b.gsub(/^[\s*]+/, '') }
43
+ branches.select { |b| b !~ /HEAD/ }
44
+ end
45
+
40
46
  # git checkout $name
41
47
  def switch(name)
42
48
  return nil unless branches.include?(name)
@@ -118,6 +124,14 @@ class Heidi
118
124
  @shell.git %W(log -n#{amount} --color --graph --pretty=oneline --abbrev-commit)
119
125
  end
120
126
 
127
+ def stat(commit)
128
+ @shell.git(%W(log -n1 --color --stat #{commit})).out
129
+ end
130
+
131
+ def diff(commit)
132
+ @shell.git(%W(diff --color #{commit}^ #{commit})).out
133
+ end
134
+
121
135
  # git config $key $value
122
136
  def []=(key, value)
123
137
  @shell.system("git", "config", "heidi.#{key}", value)
data/lib/heidi/project.rb CHANGED
@@ -46,6 +46,10 @@ class Heidi
46
46
  @name ||= @git[:name]
47
47
  end
48
48
 
49
+ def basename
50
+ File.basename(@root)
51
+ end
52
+
49
53
  def commit
50
54
  @git.commit[0..8]
51
55
  end
@@ -90,6 +94,14 @@ class Heidi
90
94
  name = @git["build.branch"]
91
95
  name == "" ? nil : name
92
96
  end
97
+ def integration_branch=(name)
98
+ name = name.split('/').last if name =~ /\//
99
+ @git["build.branch"] = name
100
+ end
101
+
102
+ def integration_branches
103
+ @git.remote_branches
104
+ end
93
105
 
94
106
  def integrate(forced=false)
95
107
  return true if !forced && self.current_build == self.commit
@@ -148,14 +160,29 @@ class Heidi
148
160
 
149
161
  lines = []
150
162
  log.out.lines.each do |line|
151
- color_less = line.gsub(/\e\[[^m]+m/, '')
152
- commit = color_less.scan(/^[\| \*]+ ([a-z0-9]+)/).flatten.first
153
- lines << { :line => line, :build => builds.find(commit) }
163
+ color_less = line.gsub(/\e\[[^m]*m?/, '')
164
+ commit = color_less.scan(/^[^a-z0-9]+([a-z0-9]+)/).flatten.first
165
+ (graph, message) = line.chomp.split(commit)
166
+ lines << {
167
+ :line => line,
168
+ :commit => commit,
169
+ :build => builds.find(commit),
170
+ :graph => graph,
171
+ :message => message,
172
+ }
154
173
  end
155
174
 
156
175
  return lines
157
176
  end
158
177
 
178
+ def stat(commit)
179
+ @git.stat(commit)
180
+ end
181
+
182
+ def diff(commit)
183
+ @git.diff(commit)
184
+ end
185
+
159
186
  def unlock
160
187
  File.unlink lock_file
161
188
  end
@@ -148,6 +148,9 @@ pre.terminal {
148
148
  .terminal a {
149
149
  color: inherit;
150
150
  text-decoration: none;
151
+ }
152
+
153
+ .terminal a.build {
151
154
  font-weight: bold;
152
155
  border-bottom: dashed #ccc 1px;
153
156
  margin: 4px 0;
@@ -191,3 +194,9 @@ ul.projects {
191
194
  width: 75%;
192
195
  overflow: hidden;
193
196
  }
197
+
198
+ label {
199
+ display: inline-block;
200
+ min-width: 120px;
201
+ font-weight: bold;
202
+ }
@@ -1,18 +1,22 @@
1
1
  <h1><%= project.name %></h1>
2
2
 
3
- <a href="/projects/<%= project.name %>"><< back</a>
3
+ <a href="/projects/<%= project.basename %>"><< back</a>
4
4
  <br /><br />
5
5
 
6
6
  <h2 class="<%= build.status %>"><%= build.commit %></h2>
7
-
7
+ <div class="column">
8
8
  <% if build.status == "passed" %>
9
- <a href='/projects/<%= project.name %>/build/<%= build.commit %>/tar_ball'>download</a>
9
+ <a href='/projects/<%= project.basename %>/build/<%= build.commit %>/tar_ball'>download</a>
10
10
  <br /><br />
11
11
  <% end %>
12
12
 
13
13
  | <% build.logs.each do |log| %>
14
14
  <a href="#<%= log.file_name %>"><%= log.file_name %></a> |
15
15
  <% end %>
16
+ </div>
17
+ <div class="column">
18
+ <a href="/projects/<%= project.basename %>/commit/<%= build.commit %>">Want to see the commit?</a>
19
+ </div>
16
20
  <br class="clear" />
17
21
  <br />
18
22
  <br />
@@ -20,6 +24,6 @@
20
24
  <% build.logs.each do |log| %>
21
25
  <h3 class="log"><%= log.file_name %></h3>
22
26
  <a name="<%= log.file_name %>" href="#top" class="top">top</a>
23
- <pre class="terminal"><%= ansi_color_codes(log.contents) %></pre>
27
+ <pre class="terminal"><%= ansi_color_codes(h(log.contents)) %></pre>
24
28
  <% end %>
25
29
  <br /><br />
@@ -0,0 +1,10 @@
1
+ <h1><%= project.name %></h1>
2
+
3
+ <a href="/projects/<%= project.basename %>"><< back</a>
4
+ <br /><br />
5
+
6
+ <h2><%= commit %></h2>
7
+
8
+ <pre class="terminal"><%= ansi_color_codes(h(stat)) %>
9
+
10
+ <%= ansi_color_codes(h(diff)) %></pre>
@@ -0,0 +1,21 @@
1
+ <h1>Configure <%= project.name %></h1>
2
+
3
+ <form method="POST" action="/projects/<%= project.basename %>">
4
+ <label for="name">Name</label>
5
+ <input type="text" name="name" value="<%= project.name %>" />
6
+ <br />
7
+ <br />
8
+
9
+ <label for="branch">Integration branch</label>
10
+ <select name="branch">
11
+ <option value="">...</option>
12
+ <% project.integration_branches.each do |branch| %>
13
+ <% branch_name = branch.split("/").last %>
14
+ <option value="<%= branch_name %>" <%= "selected" if branch_name == project.integration_branch %>><%= branch %></option>
15
+ <% end %>
16
+ </select>
17
+
18
+ <br />
19
+ <br />
20
+ <input type="submit" />
21
+ </form>
@@ -2,7 +2,10 @@
2
2
  <h1>Projects</h1>
3
3
  <ul class="projects">
4
4
  <% projects.each do |project| %>
5
- <li class="<%= project.build_status %>"><a href="/projects/<%= project.name %>"><%= project.name %></a> - <%= project.build_status %></li>
5
+ <li class="<%= project.build_status %>">
6
+ <a href="/projects/<%= project.basename %>"><%= project.name %></a>
7
+ - <%= project.build_status %>
8
+ </li>
6
9
  <% end %>
7
10
  </ul>
8
11
  </div>
@@ -9,21 +9,29 @@
9
9
  latest = builds.select { |b| b.commit == project.latest_build }.first
10
10
  %>
11
11
 
12
- <h2>Overview</h2>
13
- <strong class="label">Current</strong> :
14
- <% unless current.nil? %>
15
- <a class="<%= current.status %>" href="/projects/<%= project.name %>/build/<%= current.commit %>"><%= current.commit %></a>
16
- <% end %>
17
- <br />
18
- <strong class="label">Latest successful</strong> :
19
- <% unless latest.nil? %>
20
- <a class="<%= latest.status %>" href="/projects/<%= project.name %>/build/<%= latest.commit %>"><%= latest == current ? "current" : latest.commit %></a>
21
- <% end %>
22
- <br />
12
+ <div class="column">
13
+ <h2>Overview</h2>
14
+ <strong class="label">Current</strong> :
15
+ <% unless current.nil? %>
16
+ <a class="<%= current.status %>" href="/projects/<%= project.basename %>/build/<%= current.commit %>"><%= current.commit %></a>
17
+ <% end %>
18
+ <br />
19
+ <strong class="label">Latest successful</strong> :
20
+ <% unless latest.nil? %>
21
+ <a class="<%= latest.status %>" href="/projects/<%= project.basename %>/build/<%= latest.commit %>"><%= latest == current ? "current" : latest.commit %></a>
22
+ <% end %>
23
+ <br />
24
+ <strong class="label">Integration branch</strong> :
25
+ <%= project.integration_branch %>
26
+ <br />
27
+ </div>
28
+ <div class="column">
29
+ <a href="/projects/<%= project.basename %>/configure">Configure <%= project.name %></a>
30
+ </div>
31
+ <br class="clear"/>
23
32
  <br />
24
33
  <br />
25
34
 
26
35
  <h2>Build history</h2>
27
- <pre class="history terminal"><% project.log.each do |line| %><% build = nil; if (build = line[:build]) %><a title="<%= build.author %>" href="/projects/<%= project.name %>/build/<%= build.commit %>"><%= ansi_color_codes(line[:line]).chomp %></a> <span class="status">[<span class="<%= build.status %>"><%= build.status %></span>] (<%= build.date %>, <%= build.author.gsub '<', '&lt;' %>)</span>
28
- <% else %><%= ansi_color_codes line[:line] %>
29
- <% end %><% end %></pre>
36
+ <pre class="history terminal"><% project.log.each do |line| %><% build = nil %><%= ansi_color_codes line[:graph] %><a href="/projects/<%= project.basename %>/commit/<%= line[:commit] %>"><%= line[:commit] %></a><% if (build = line[:build]) %><a class="build" href="/projects/<%= project.basename %>/build/<%= build.commit %>"><%= ansi_color_codes(line[:message]) %></a> <span class="status">[<span class="<%= build.status %>"><%= build.status %></span>] (<%= build.date %>, <%= build.author.gsub '<', '&lt;' %>)</span><% else %><%= ansi_color_codes line[:message] %><% end %>
37
+ <% end %></pre>
data/lib/heidi/web.rb CHANGED
@@ -84,18 +84,52 @@ class Heidi
84
84
 
85
85
  end
86
86
 
87
- put '/projects/:name/build' do
88
- project = $heidi[params[:name]]
87
+ get '/projects/:name/commit/:commit' do
88
+ project = @heidi[params[:name]]
89
89
  if project.nil?
90
90
  return "no project by that name: #{params[:name]}"
91
91
  end
92
92
 
93
- project.integrate
93
+ commit = params[:commit]
94
+
95
+ erb(:commit, { :locals => {
96
+ :commit => commit,
97
+ :project => project,
98
+ :stat => project.stat(commit),
99
+ :diff => project.diff(commit),
100
+ }})
94
101
  end
95
102
 
103
+ get '/projects/:name/configure' do
104
+ project = @heidi[params[:name]]
105
+ if project.nil?
106
+ return "no project by that name: #{params[:name]}"
107
+ end
108
+
109
+ erb(:config, { :locals => { :project => project } } )
110
+ end
111
+
112
+ post '/projects/:project_name' do
113
+ # update project
114
+ project = @heidi[params[:project_name]]
115
+ if project.nil?
116
+ return "no project by that name: #{params[:project_name]}"
117
+ end
118
+
119
+ project.name = params[:name]
120
+ project.integration_branch = params[:branch]
121
+
122
+
123
+ redirect "/projects/#{project.basename}", 302
124
+ end
96
125
 
97
126
  helpers do
127
+ include Rack::Utils
128
+ alias_method :h, :escape_html
129
+
98
130
  def ansi_color_codes(string)
131
+ return "" if string.nil?
132
+
99
133
  string.gsub(/\e\[0?m/, '</span>').
100
134
  gsub /\e\[[^m]+m/ do |codes|
101
135
  colors = codes.gsub(/[\e\[m]+/, '')
metadata CHANGED
@@ -1,116 +1,116 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: heidi
3
- version: !ruby/object:Gem::Version
4
- version: 0.2.1
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 0.3.0
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Hartog C. de Mik
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-09 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
12
+
13
+ date: 2012-02-14 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
15
16
  name: thin
16
- requirement: &90563140 !ruby/object:Gem::Requirement
17
+ requirement: &id001 !ruby/object:Gem::Requirement
17
18
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: "0"
22
23
  type: :runtime
23
24
  prerelease: false
24
- version_requirements: *90563140
25
- - !ruby/object:Gem::Dependency
25
+ version_requirements: *id001
26
+ - !ruby/object:Gem::Dependency
26
27
  name: sinatra
27
- requirement: &90562840 !ruby/object:Gem::Requirement
28
+ requirement: &id002 !ruby/object:Gem::Requirement
28
29
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
- version: '0'
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
33
34
  type: :runtime
34
35
  prerelease: false
35
- version_requirements: *90562840
36
- - !ruby/object:Gem::Dependency
36
+ version_requirements: *id002
37
+ - !ruby/object:Gem::Dependency
37
38
  name: simple_shell
38
- requirement: &90562490 !ruby/object:Gem::Requirement
39
+ requirement: &id003 !ruby/object:Gem::Requirement
39
40
  none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
43
- version: '0'
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ version: "0"
44
45
  type: :runtime
45
46
  prerelease: false
46
- version_requirements: *90562490
47
- - !ruby/object:Gem::Dependency
47
+ version_requirements: *id003
48
+ - !ruby/object:Gem::Dependency
48
49
  name: rspec
49
- requirement: &90562160 !ruby/object:Gem::Requirement
50
+ requirement: &id004 !ruby/object:Gem::Requirement
50
51
  none: false
51
- requirements:
52
+ requirements:
52
53
  - - ~>
53
- - !ruby/object:Gem::Version
54
+ - !ruby/object:Gem::Version
54
55
  version: 2.8.0
55
56
  type: :development
56
57
  prerelease: false
57
- version_requirements: *90562160
58
- - !ruby/object:Gem::Dependency
58
+ version_requirements: *id004
59
+ - !ruby/object:Gem::Dependency
59
60
  name: rdoc
60
- requirement: &90561910 !ruby/object:Gem::Requirement
61
+ requirement: &id005 !ruby/object:Gem::Requirement
61
62
  none: false
62
- requirements:
63
+ requirements:
63
64
  - - ~>
64
- - !ruby/object:Gem::Version
65
- version: '3.12'
65
+ - !ruby/object:Gem::Version
66
+ version: "3.12"
66
67
  type: :development
67
68
  prerelease: false
68
- version_requirements: *90561910
69
- - !ruby/object:Gem::Dependency
69
+ version_requirements: *id005
70
+ - !ruby/object:Gem::Dependency
70
71
  name: bundler
71
- requirement: &90561560 !ruby/object:Gem::Requirement
72
+ requirement: &id006 !ruby/object:Gem::Requirement
72
73
  none: false
73
- requirements:
74
+ requirements:
74
75
  - - ~>
75
- - !ruby/object:Gem::Version
76
+ - !ruby/object:Gem::Version
76
77
  version: 1.0.0
77
78
  type: :development
78
79
  prerelease: false
79
- version_requirements: *90561560
80
- - !ruby/object:Gem::Dependency
80
+ version_requirements: *id006
81
+ - !ruby/object:Gem::Dependency
81
82
  name: jeweler
82
- requirement: &90561290 !ruby/object:Gem::Requirement
83
+ requirement: &id007 !ruby/object:Gem::Requirement
83
84
  none: false
84
- requirements:
85
+ requirements:
85
86
  - - ~>
86
- - !ruby/object:Gem::Version
87
+ - !ruby/object:Gem::Version
87
88
  version: 1.8.3
88
89
  type: :development
89
90
  prerelease: false
90
- version_requirements: *90561290
91
- - !ruby/object:Gem::Dependency
91
+ version_requirements: *id007
92
+ - !ruby/object:Gem::Dependency
92
93
  name: rcov
93
- requirement: &90560970 !ruby/object:Gem::Requirement
94
+ requirement: &id008 !ruby/object:Gem::Requirement
94
95
  none: false
95
- requirements:
96
- - - ! '>='
97
- - !ruby/object:Gem::Version
98
- version: '0'
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: "0"
99
100
  type: :development
100
101
  prerelease: false
101
- version_requirements: *90560970
102
+ version_requirements: *id008
102
103
  description: CI-Joe alike CI system called Heidi.
103
104
  email: hartog@organisedminds.com
104
- executables:
105
+ executables:
105
106
  - heidi
106
- - heidi_console
107
- - heidi_cron
108
107
  - heidi_web
109
108
  extensions: []
110
- extra_rdoc_files:
109
+
110
+ extra_rdoc_files:
111
111
  - LICENSE.txt
112
112
  - README.rdoc
113
- files:
113
+ files:
114
114
  - .document
115
115
  - .rspec
116
116
  - Gemfile
@@ -120,8 +120,6 @@ files:
120
120
  - Rakefile
121
121
  - VERSION
122
122
  - bin/heidi
123
- - bin/heidi_console
124
- - bin/heidi_cron
125
123
  - bin/heidi_web
126
124
  - heidi.gemspec
127
125
  - lib/heidi.rb
@@ -139,6 +137,8 @@ files:
139
137
  - lib/heidi/web/public/images/OrganisedMinds.png
140
138
  - lib/heidi/web/public/images/heidi.jpeg
141
139
  - lib/heidi/web/views/build.erb
140
+ - lib/heidi/web/views/commit.erb
141
+ - lib/heidi/web/views/config.erb
142
142
  - lib/heidi/web/views/home.erb
143
143
  - lib/heidi/web/views/layout.erb
144
144
  - lib/heidi/web/views/project.erb
@@ -153,31 +153,34 @@ files:
153
153
  - spec/heidi_spec.rb
154
154
  - spec/spec_helper.rb
155
155
  homepage: http://github.com/coffeeaddict/heid
156
- licenses:
156
+ licenses:
157
157
  - MIT
158
158
  post_install_message:
159
159
  rdoc_options: []
160
- require_paths:
160
+
161
+ require_paths:
161
162
  - lib
162
- required_ruby_version: !ruby/object:Gem::Requirement
163
+ required_ruby_version: !ruby/object:Gem::Requirement
163
164
  none: false
164
- requirements:
165
- - - ! '>='
166
- - !ruby/object:Gem::Version
167
- version: '0'
168
- segments:
165
+ requirements:
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ hash: 2807118662915516022
169
+ segments:
169
170
  - 0
170
- hash: -727738623
171
- required_rubygems_version: !ruby/object:Gem::Requirement
171
+ version: "0"
172
+ required_rubygems_version: !ruby/object:Gem::Requirement
172
173
  none: false
173
- requirements:
174
- - - ! '>='
175
- - !ruby/object:Gem::Version
176
- version: '0'
174
+ requirements:
175
+ - - ">="
176
+ - !ruby/object:Gem::Version
177
+ version: "0"
177
178
  requirements: []
179
+
178
180
  rubyforge_project:
179
- rubygems_version: 1.8.10
181
+ rubygems_version: 1.8.16
180
182
  signing_key:
181
183
  specification_version: 3
182
184
  summary: A naive CI system
183
185
  test_files: []
186
+
data/bin/heidi_console DELETED
@@ -1,3 +0,0 @@
1
- #!/bin/sh
2
-
3
- irb -I $HEIDI_LOAD_PATH -r heidi
data/bin/heidi_cron DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require './lib/heidi'
4
-
5
- heidi = Heidi.new
6
- heidi.projects.each do |project|
7
- project.integrate
8
- end