##// END OF EJS Templates
fix typo at lib/tasks/ci.rake...
Toshi MARUYAMA -
r12819:8c5d88160f16
parent child
Show More
@@ -1,92 +1,92
1 desc "Run the Continous Integration tests for Redmine"
1 desc "Run the Continuous Integration tests for Redmine"
2 task :ci do
2 task :ci do
3 # RAILS_ENV and ENV[] can diverge so force them both to test
3 # RAILS_ENV and ENV[] can diverge so force them both to test
4 ENV['RAILS_ENV'] = 'test'
4 ENV['RAILS_ENV'] = 'test'
5 RAILS_ENV = 'test'
5 RAILS_ENV = 'test'
6 Rake::Task["ci:setup"].invoke
6 Rake::Task["ci:setup"].invoke
7 Rake::Task["ci:build"].invoke
7 Rake::Task["ci:build"].invoke
8 Rake::Task["ci:teardown"].invoke
8 Rake::Task["ci:teardown"].invoke
9 end
9 end
10
10
11 namespace :ci do
11 namespace :ci do
12 desc "Setup Redmine for a new build"
12 desc "Setup Redmine for a new build"
13 task :setup do
13 task :setup do
14 Rake::Task["tmp:clear"].invoke
14 Rake::Task["tmp:clear"].invoke
15 Rake::Task["log:clear"].invoke
15 Rake::Task["log:clear"].invoke
16 Rake::Task["db:create:all"].invoke
16 Rake::Task["db:create:all"].invoke
17 Rake::Task["db:migrate"].invoke
17 Rake::Task["db:migrate"].invoke
18 Rake::Task["db:schema:dump"].invoke
18 Rake::Task["db:schema:dump"].invoke
19 if scms = ENV['SCMS']
19 if scms = ENV['SCMS']
20 scms.split(',').each do |scm|
20 scms.split(',').each do |scm|
21 Rake::Task["test:scm:setup:#{scm}"].invoke
21 Rake::Task["test:scm:setup:#{scm}"].invoke
22 end
22 end
23 else
23 else
24 Rake::Task["test:scm:setup:all"].invoke
24 Rake::Task["test:scm:setup:all"].invoke
25 end
25 end
26 Rake::Task["test:scm:update"].invoke
26 Rake::Task["test:scm:update"].invoke
27 end
27 end
28
28
29 desc "Build Redmine"
29 desc "Build Redmine"
30 task :build do
30 task :build do
31 if test_suite = ENV['TEST_SUITE']
31 if test_suite = ENV['TEST_SUITE']
32 Rake::Task["test:#{test_suite}"].invoke
32 Rake::Task["test:#{test_suite}"].invoke
33 else
33 else
34 Rake::Task["test"].invoke
34 Rake::Task["test"].invoke
35 end
35 end
36 # Rake::Task["test:ui"].invoke if RUBY_VERSION >= '1.9.3'
36 # Rake::Task["test:ui"].invoke if RUBY_VERSION >= '1.9.3'
37 end
37 end
38
38
39 desc "Finish the build"
39 desc "Finish the build"
40 task :teardown do
40 task :teardown do
41 end
41 end
42 end
42 end
43
43
44 desc "Creates database.yml for the CI server"
44 desc "Creates database.yml for the CI server"
45 file 'config/database.yml' do
45 file 'config/database.yml' do
46 require 'yaml'
46 require 'yaml'
47 database = ENV['DATABASE_ADAPTER']
47 database = ENV['DATABASE_ADAPTER']
48 ruby = ENV['RUBY_VER'].gsub('.', '').gsub('-', '')
48 ruby = ENV['RUBY_VER'].gsub('.', '').gsub('-', '')
49 branch = ENV['BRANCH'].gsub('.', '').gsub('-', '')
49 branch = ENV['BRANCH'].gsub('.', '').gsub('-', '')
50 dev_db_name = "ci_#{branch}_#{ruby}_dev"
50 dev_db_name = "ci_#{branch}_#{ruby}_dev"
51 test_db_name = "ci_#{branch}_#{ruby}_test"
51 test_db_name = "ci_#{branch}_#{ruby}_test"
52
52
53 case database
53 case database
54 when 'mysql'
54 when 'mysql'
55 dev_conf = {'adapter' => (RUBY_VERSION >= '1.9' ? 'mysql2' : 'mysql'),
55 dev_conf = {'adapter' => (RUBY_VERSION >= '1.9' ? 'mysql2' : 'mysql'),
56 'database' => dev_db_name, 'host' => 'localhost',
56 'database' => dev_db_name, 'host' => 'localhost',
57 'encoding' => 'utf8'}
57 'encoding' => 'utf8'}
58 if ENV['RUN_ON_NOT_OFFICIAL']
58 if ENV['RUN_ON_NOT_OFFICIAL']
59 dev_conf['username'] = 'root'
59 dev_conf['username'] = 'root'
60 else
60 else
61 dev_conf['username'] = 'jenkins'
61 dev_conf['username'] = 'jenkins'
62 dev_conf['password'] = 'jenkins'
62 dev_conf['password'] = 'jenkins'
63 end
63 end
64 test_conf = dev_conf.merge('database' => test_db_name)
64 test_conf = dev_conf.merge('database' => test_db_name)
65 when 'postgresql'
65 when 'postgresql'
66 dev_conf = {'adapter' => 'postgresql', 'database' => dev_db_name,
66 dev_conf = {'adapter' => 'postgresql', 'database' => dev_db_name,
67 'host' => 'localhost'}
67 'host' => 'localhost'}
68 if ENV['RUN_ON_NOT_OFFICIAL']
68 if ENV['RUN_ON_NOT_OFFICIAL']
69 dev_conf['username'] = 'postgres'
69 dev_conf['username'] = 'postgres'
70 else
70 else
71 dev_conf['username'] = 'jenkins'
71 dev_conf['username'] = 'jenkins'
72 dev_conf['password'] = 'jenkins'
72 dev_conf['password'] = 'jenkins'
73 end
73 end
74 test_conf = dev_conf.merge('database' => test_db_name)
74 test_conf = dev_conf.merge('database' => test_db_name)
75 when /sqlite3/
75 when /sqlite3/
76 dev_conf = {'adapter' => (Object.const_defined?(:JRUBY_VERSION) ?
76 dev_conf = {'adapter' => (Object.const_defined?(:JRUBY_VERSION) ?
77 'jdbcsqlite3' : 'sqlite3'),
77 'jdbcsqlite3' : 'sqlite3'),
78 'database' => "db/#{dev_db_name}.sqlite3"}
78 'database' => "db/#{dev_db_name}.sqlite3"}
79 test_conf = dev_conf.merge('database' => "db/#{test_db_name}.sqlite3")
79 test_conf = dev_conf.merge('database' => "db/#{test_db_name}.sqlite3")
80 when 'sqlserver'
80 when 'sqlserver'
81 dev_conf = {'adapter' => 'sqlserver', 'database' => dev_db_name,
81 dev_conf = {'adapter' => 'sqlserver', 'database' => dev_db_name,
82 'host' => 'mssqlserver', 'port' => 1433,
82 'host' => 'mssqlserver', 'port' => 1433,
83 'username' => 'jenkins', 'password' => 'jenkins'}
83 'username' => 'jenkins', 'password' => 'jenkins'}
84 test_conf = dev_conf.merge('database' => test_db_name)
84 test_conf = dev_conf.merge('database' => test_db_name)
85 else
85 else
86 abort "Unknown database"
86 abort "Unknown database"
87 end
87 end
88
88
89 File.open('config/database.yml', 'w') do |f|
89 File.open('config/database.yml', 'w') do |f|
90 f.write YAML.dump({'development' => dev_conf, 'test' => test_conf})
90 f.write YAML.dump({'development' => dev_conf, 'test' => test_conf})
91 end
91 end
92 end
92 end
General Comments 0
You need to be logged in to leave comments. Login now