rake数据库:迁移不适用于travis-ci版本 [英] rake db:migration not working on travis-ci build
问题描述
我试图在Travis-CI上从github构建我的Ruby on Rails项目,但是我遇到了迁移问题。它运行一个rake任务进行迁移,但它后来抱怨同样的迁移步骤。
它跟在我的.travis.yml文件中:
语言:ruby
rvm:
- 1.9.2
before_script:
- rake db:migrate RAILS_ENV = test
以下是构建输出:
1使用worker:ruby4.worker.travis-ci.org:travis-ruby-3
2
3
4
5 $ cd〜/ builds
6
7
8 $ git clone --depth = 100 --quiet git://github.com/rafaelportela/bacilo.git rafaelportela / bacilo
9
10
11
12 $ cd rafaelportela / bacilo
13
14 $ git checkout -qf 7553b7351b7a642e39ea7b55204de6cd4f320c36
15
16
17 $出口TRAVIS_RUBY_VERSION = 1.9.2
18
19 $ rvm使用1.9.2
20Using /home/vagrant/.rvm/gems/ruby-1.9.2-p290
21
22 $ ruby --version
23ruby 1.9.2p290(2011-07-09修订版32553)[i686-linux]
24
25 $ gem - 版本
261.8.17
27
28
29 $ export BUNDLE_GEMFILE = / home / vagrant / builds / rafaelportela / bacilo / Gemfile
30
31 $ bundle install
32从https:// rubygems获取gem元数据.org / .......
33使用rake(0.9.2.2)
34安装i18n(0.6.0)
35安装multi_json(1.3.4)
36安装主动支持3.2.2)
37安装建造者(3.0.0)
38安装主动模型(3.2.2)
39安装erubis(2.7.0)
40安装旅程(1.0.3)
41安装机架(1.4.1)
42安装机架高速缓存(1.2)
43安装机架测试(0.6.1)
44安装加固(1.2.1)
45安装倾斜(1.3.3)
46安装链轮(2.1.3)
47安装动作包(3.2.2)
48安装MIME类型(1.18)
49安装多边货币(0.3.3)
50安装树枝(1.4.10)
51安装邮件(2.4.4)
52安装actionmailer(3.2.2)
53安装arel(3.0.2)
54安装tzinfo 0.3.33)
55安装主动记录(3.2.2)
安装活动资源(3.2.2)
57使用本机扩展安装bcrypt-ruby(3.0.1)
安装coffee-script-source(1.3.1)
59安装execjs(1.3.1)
60安装咖啡脚本(2.2.0)
61安装rack-ssl(1.3.2)
62使用原生扩展安装json(1.7.0)
63安装rdoc(3.12)
64安装Thor(0.14.6)
65安装rappers(3.2.2)
66安装咖啡栏(3.2.2)
67安装orm_adapter(0.0.7)
68安装warden(1.1.1)
69安装设计(2.0.4)
70安装jquery-rails(2.0.2)
71使用原生扩展安装pg(0.13.2)
72使用捆绑器(1.1.3)
73安装rails(3.2.2)
74安装sass(3.1.16)
75安装sass-rails(3.2.5)
76安装sqlite3(1.3.6) )与原生扩展
77安装uglifier(1.2.4)
78您的包已完成!使用`bundle show [gemname]`来查看捆绑的gem的安装位置。
79从rdoc发送邮件安装消息:
80根据您的ruby版本,您可能需要安装ruby rdoc / ri数据:
81
82 <= 1.8.6:不支持
83 = 1.8.7:gem install rdoc-data; rdoc-data --install
84 = 1.9.1:gem install rdoc-data; rdoc-data --install
85> = 1.9.2:无所事事!好极了!
86
87
88 $ rake db:migrate RAILS_ENV = test
89 == DeviseCreateUsers:migrating ================= =============================
90-- create_table(:users)
91 - > 0.0174s
92-- add_index(:users,:email,{:unique => true})
93 - > 0.0017s
94-- add_index(:users,:reset_password_token,{:unique => true})
95 - > 0.0010s
96 == DeviseCreateUsers:迁移(0.0239s)================================== ===
97
98
99 $ bundle exec rake
100您有1个未决迁移:
101 20120508052346 DeviseCreateUsers
102Run`rake db:migrate`更新你的数据库,然后再试一次。
103
104
105Done。生成脚本退出:1
我很感激任何建议! =]
当我试图让我的Rails 3.2应用程序与Travis CI配合工作时,这篇博文帮助了我极大的帮助,实际工作的 .travis.yml
文件。这是我的参考,所以希望它有帮助:
$ b
.travis.yml
语言:ruby
rvm:
- 1.9.2
- 1.9.3
env:
- DB = sqlite
- DB = mysql
- DB = postgresql
脚本:
- RAILS_ENV =测试包exec rake db:migrate --trace
- bundle exec rake db:test :准备
- bundle exec rspec spec /
before_script:
- mysql -e'create database my_app_test'
- psql -c'create database my_app_test'-U postgres
bundler_args:--binstubs =。/ bundler_stubs
I'm trying to build my Ruby on Rails project from github on Travis-CI, but I 'm running into a migration problem. It runs a rake task for migration, but it complains about the same migration step after that.
It follows my .travis.yml file:
language: ruby
rvm:
- 1.9.2
before_script:
- "rake db:migrate RAILS_ENV=test"
And here's the build output:
1Using worker: ruby4.worker.travis-ci.org:travis-ruby-3
2
3
4
5$ cd ~/builds
6
7
8$ git clone --depth=100 --quiet git://github.com/rafaelportela/bacilo.git rafaelportela/bacilo
9
10
11
12$ cd rafaelportela/bacilo
13
14$ git checkout -qf 7553b7351b7a642e39ea7b55204de6cd4f320c36
15
16
17$ export TRAVIS_RUBY_VERSION=1.9.2
18
19$ rvm use 1.9.2
20Using /home/vagrant/.rvm/gems/ruby-1.9.2-p290
21
22$ ruby --version
23ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
24
25$ gem --version
261.8.17
27
28
29$ export BUNDLE_GEMFILE=/home/vagrant/builds/rafaelportela/bacilo/Gemfile
30
31$ bundle install
32Fetching gem metadata from https://rubygems.org/.......
33Using rake (0.9.2.2)
34Installing i18n (0.6.0)
35Installing multi_json (1.3.4)
36Installing activesupport (3.2.2)
37Installing builder (3.0.0)
38Installing activemodel (3.2.2)
39Installing erubis (2.7.0)
40Installing journey (1.0.3)
41Installing rack (1.4.1)
42Installing rack-cache (1.2)
43Installing rack-test (0.6.1)
44Installing hike (1.2.1)
45Installing tilt (1.3.3)
46Installing sprockets (2.1.3)
47Installing actionpack (3.2.2)
48Installing mime-types (1.18)
49Installing polyglot (0.3.3)
50Installing treetop (1.4.10)
51Installing mail (2.4.4)
52Installing actionmailer (3.2.2)
53Installing arel (3.0.2)
54Installing tzinfo (0.3.33)
55Installing activerecord (3.2.2)
56Installing activeresource (3.2.2)
57Installing bcrypt-ruby (3.0.1) with native extensions
58Installing coffee-script-source (1.3.1)
59Installing execjs (1.3.1)
60Installing coffee-script (2.2.0)
61Installing rack-ssl (1.3.2)
62Installing json (1.7.0) with native extensions
63Installing rdoc (3.12)
64Installing thor (0.14.6)
65Installing railties (3.2.2)
66Installing coffee-rails (3.2.2)
67Installing orm_adapter (0.0.7)
68Installing warden (1.1.1)
69Installing devise (2.0.4)
70Installing jquery-rails (2.0.2)
71Installing pg (0.13.2) with native extensions
72Using bundler (1.1.3)
73Installing rails (3.2.2)
74Installing sass (3.1.16)
75Installing sass-rails (3.2.5)
76Installing sqlite3 (1.3.6) with native extensions
77Installing uglifier (1.2.4)
78Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
79Post-install message from rdoc:
80Depending on your version of ruby, you may need to install ruby rdoc/ri data:
81
82<= 1.8.6 : unsupported
83 = 1.8.7 : gem install rdoc-data; rdoc-data --install
84 = 1.9.1 : gem install rdoc-data; rdoc-data --install
85>= 1.9.2 : nothing to do! Yay!
86
87
88$ rake db:migrate RAILS_ENV=test
89== DeviseCreateUsers: migrating ==============================================
90-- create_table(:users)
91 -> 0.0174s
92-- add_index(:users, :email, {:unique=>true})
93 -> 0.0017s
94-- add_index(:users, :reset_password_token, {:unique=>true})
95 -> 0.0010s
96== DeviseCreateUsers: migrated (0.0239s) =====================================
97
98
99$ bundle exec rake
100You have 1 pending migrations:
101 20120508052346 DeviseCreateUsers
102Run `rake db:migrate` to update your database then try again.
103
104
105Done. Build script exited with: 1
I'd appreciate any suggestion! =]
This blog post helped me tremendously when I was trying to get my Rails 3.2 app working with Travis CI, and write a .travis.yml
file that actually worked. Here's mine for your reference, so hope it helps:
.travis.yml
language: ruby
rvm:
- 1.9.2
- 1.9.3
env:
- DB=sqlite
- DB=mysql
- DB=postgresql
script:
- RAILS_ENV=test bundle exec rake db:migrate --trace
- bundle exec rake db:test:prepare
- bundle exec rspec spec/
before_script:
- mysql -e 'create database my_app_test'
- psql -c 'create database my_app_test' -U postgres
bundler_args: --binstubs=./bundler_stubs
这篇关于rake数据库:迁移不适用于travis-ci版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!