Sean Magyar
Sean Magyar

Reputation: 2380

Can't push rails code to Heroku from Cloud9 because of sqlite

An error occurred while installing sqlite3 (1.3.10), and Bundler cannot
remote:        continue.
remote:        Make sure that `gem install sqlite3 -v '1.3.10'` succeeds before bundling.
remote:  !
remote:  !     Failed to install gems via Bundler.
remote:  !     
remote:  !     Detected sqlite3 gem which is not supported on Heroku.
remote:  !     https://devcenter.heroku.com/articles/sqlite3
remote:  !
remote: 
remote:  !     Push rejected, failed to compile Ruby app
remote: 
remote: Verifying deploy...
remote: 
remote: !       Push rejected to stark-reaches-8517.
remote: 
To https://git.heroku.com/stark-reaches-8517.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com....

First I installed the latest sqlite3, but it didn't help. Then I tried to switch from sqlite to postgresql, but it didn't work out either (or I just missed something). Can somebody tell me how the gem file should look like before bundling? Btw. I am trying to follow Michael Hartl's Rails Tutorial, but it doesn't mention anything about this.

Added:

I have the rails_12factor and postgres gems in the production group. sqlite3 is in the development group so heroku should not attempt to install it.

Upvotes: 0

Views: 608

Answers (1)

Kyle Swartz
Kyle Swartz

Reputation: 46

When you used postgresql did you have add a Procfile to your app with this line:

web: bundle exec thin start -p $PORT

I use the following in my gem file, in addition to postgres to deploy to heroku

#User the 'thin' server instead of the default webrick
gem 'thin'

#Use postgres and the Heroku rails gem for Heroku
group :production do
gem 'rails_12factor'
end

Also, have you checked out the heroku help center? It jumps around a little bit, but goes into more detail about defing a Profile.
https://devcenter.heroku.com/articles/getting-started-with-ruby#introduction

Upvotes: 3

Related Questions