public
Fork of rails/rails
Description: Ruby on Rails
Homepage: http://rubyonrails.org
Clone URL: git://github.com/thewoolleyman/rails.git
commit  5c77e73a5872206aca4909857ef17b043916df25
tree    5718bdaf1b3a0cf475f95910571ead97d79dd7e8
parent  478abb74c8c18dcacee69350c2fc670c73037e4b
rails / ci_build.rb
100644 106 lines (87 sloc) 2.384 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#!/usr/bin/env ruby
require 'fileutils'
 
include FileUtils
 
puts "[CruiseControl] Rails build"
 
build_results = {}
 
cd 'activesupport' do
  puts
  puts "[CruiseControl] Building ActiveSupport"
  puts
  build_results[:activesupport] = system 'rake'
end
 
cd 'activerecord' do
  puts
  puts "[CruiseControl] Building ActiveRecord with MySQL"
  puts
  build_results[:activerecord_mysql] = system 'rake test_mysql'
end
 
cd 'activerecord' do
  puts
  puts "[CruiseControl] Building ActiveRecord with PostgreSQL"
  puts
  build_results[:activerecord_postgresql8] = system 'rake test_postgresql'
end
 
cd 'activerecord' do
 puts
 puts "[CruiseControl] Building ActiveRecord with SQLite 2"
 puts
 build_results[:activerecord_sqlite] = system 'rake test_sqlite'
end
 
cd 'activerecord' do
  puts
  puts "[CruiseControl] Building ActiveRecord with SQLite 3"
  puts
  build_results[:activerecord_sqlite3] = system 'rake test_sqlite3'
end
 
cd 'activemodel' do
  puts
  puts "[CruiseControl] Building ActiveModel"
  puts
  build_results[:activemodel] = system 'rake'
end
 
cd 'activeresource' do
  puts
  puts "[CruiseControl] Building ActiveResource"
  puts
  build_results[:activeresource] = system 'rake'
end
 
cd 'actionpack' do
  puts
  puts "[CruiseControl] Building ActionPack"
  puts
  build_results[:actionpack] = system 'rake'
end
 
cd 'actionmailer' do
  puts
  puts "[CruiseControl] Building ActionMailer"
  puts
  build_results[:actionmailer] = system 'rake'
end
 
cd 'railties' do
  puts
  puts "[CruiseControl] Building RailTies"
  puts
  build_results[:railties] = system 'rake'
end
 
 
puts
puts "[CruiseControl] Build environment:"
puts "[CruiseControl] #{`cat /etc/issue`}"
puts "[CruiseControl] #{`uname -a`}"
puts "[CruiseControl] #{`ruby -v`}"
puts "[CruiseControl] #{`/usr/bin/mysql --version`}"
puts "[CruiseControl] #{`/usr/bin/postgres --version`}"
puts "[CruiseControl] SQLite3: #{`/usr/bin/sqlite2 -version`}"
puts "[CruiseControl] SQLite3: #{`/usr/bin/sqlite3 -version`}"
puts "[CruiseControl] Local gems: #{`gem list`}"
puts
 
failures = build_results.select { |key, value| value == false }
 
if failures.empty?
  puts
  puts "[CruiseControl] Rails build finished sucessfully"
  exit(0)
else
  puts
  puts "[CruiseControl] Rails build FAILED"
  puts "[CruiseControl] Failed components: #{failures.map { |component| component.first }.join(', ')}"
  exit(-1)
end