# Rails: "Migrations are pending

**URL:** <https://discuss.circleci.com/t/rails-migrations-are-pending/3629>\
**Category:** Build Environment\
**Tags:** rails, ruby\
**Created:** [April 27, 2016, 12:44am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629 "2016-04-27T00:44:05Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![gisborne](https://avatars.discourse-cdn.com/v4/letter/g/dc4da7/32.png) [@gisborne](https://discuss.circleci.com/u/gisborne)\
**Post date:** [April 27, 2016, 12:44am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/1 "2016-04-27T00:44:05Z")

</div>

My test is failing with “Migrations are pending”. As migrations should be run automatically, this would seem to be a bug.

---

<div class="post-metadata">

**Author:** ![gisborne](https://avatars.discourse-cdn.com/v4/letter/g/dc4da7/32.png) [@gisborne](https://discuss.circleci.com/u/gisborne)\
**Post date:** [April 27, 2016, 5:28am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/2 "2016-04-27T05:28:24Z")

</div>

It seems that the migration failed (still not sure why; it succeeds on my machine on the same database). The CI log does not report the error from the failed migration.

---

<div class="post-metadata">

**Author:** ![bucksw](https://avatars.discourse-cdn.com/v4/letter/b/d2c977/32.png) [@bucksw](https://discuss.circleci.com/u/bucksw)\
**Post date:** [June 10, 2016, 1:27am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/3 "2016-06-10T01:27:36Z")

</div>

I am having the same issue. Everything builds fine on my environment, but not with Circle CI. And when I try to run

- bundle exec rake db:migrate RAILS\_ENV=test I am getting errors that the tables already exist. I noticed it creates the database schema by running - bundle exec rake db:create db:schema:load --trace And it loads the whole schema, so why is it even asking for migrations?

---

<div class="post-metadata">

**Author:** ![bucksw](https://avatars.discourse-cdn.com/v4/letter/b/d2c977/32.png) [@bucksw](https://discuss.circleci.com/u/bucksw)\
**Post date:** [June 10, 2016, 4:05am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/4 "2016-06-10T04:05:31Z")

</div>

This probably isn’t the right way to fix this but for now I commented out ActiveRecord::Migration.maintain\_test\_schema! in Rails\_Helper for RSpec and it worked. I don’t understand why it’s trying to run the migrations when Circle CI does a rake db:create and loads the schema. There is nothing to migrate when creating a new db from the schema… I’m sure there might be ramifications down the line that I’ll run into but at least rspec is running now.

---

<div class="post-metadata">

**Author:** ![Blazy7](https://avatars.discourse-cdn.com/v4/letter/b/5fc32e/32.png) [@Blazy7](https://discuss.circleci.com/u/Blazy7)\
**Post date:** [June 22, 2016, 1:09pm UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/5 "2016-06-22T13:09:44Z")

</div>

I found workaround with adding this to my circle.yml file -  
database:  
override:  
- bundle exec rails db:create; bundle exec rails db:migrate; bundle exec rails db:migrate RAILS\_ENV=test

---

<div class="post-metadata">

**Author:** ![hmtanbir](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/hmtanbir/32/14323_2.png) [@hmtanbir](https://discuss.circleci.com/u/hmtanbir)\
**Post date:** [October 4, 2016, 5:37am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/7 "2016-10-04T05:37:17Z")

</div>

This configuration runs successfully in circleci.

```
machine:
      ruby:
        version: 2.3.1
    dependencies:
      pre:
        - gem install bundler
      post:
        - bundle exec rake assets:precompile
    database:
      override:
        - bundle exec rake db:drop
        - bundle exec rake db:create RAILS_ENV=test
        - bundle exec rake db:migrate RAILS_ENV=test
    test:
      post:
        - bundle exec rake test
```

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/circleci/original/3X/5/1/511608acda8e85906e15909b57bd0a46c1dbe291.png) [@system](https://discuss.circleci.com/u/system)\
**Post date:** [June 18, 2018, 11:38am UTC](https://discuss.circleci.com/t/rails-migrations-are-pending/3629/8 "2018-06-18T11:38:17Z")

</div>


