Showing posts with label Heroku. Show all posts
Showing posts with label Heroku. Show all posts

Sunday, 16 June 2013

couldn't find file 'twitter/bootstrap'

Twitter Bootstrap in rails application not working in production while deployed to heroku.

When I check for logs in heroku, I am able to see the below error.

ActionView::Template::Error (couldn't find file 'twitter/bootstrap')

While doing some google I came to see that, I have included  'twitter-bootstrap-rails' gem in development env in my gem file. So it was unable to load in production.

I have made the 'twitter-bootstrap-rails' gem public and bundle install again. Now every thing works fine.

Thank You,
Uma Mahesh.

sqlite3 error while pusing code to heroku


Below is the issue while I am trying to push the code to heroku for the first time.

rails@rails:/media/AAFA1CCBFA1C95A3/ruby/rails_app/simple_form/sample1$ git push heroku master
Counting objects: 99, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (88/88), done.
Writing objects: 100% (99/99), 39.73 KiB, done.
Total 99 (delta 3), reused 0 (delta 0)

-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.3.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
       Fetching gem metadata from https://rubygems.org/.........
       Fetching gem metadata from https://rubygems.org/..
       Installing rake (10.0.4)
       Installing i18n (0.6.1)
       Installing multi_json (1.7.7)
       Installing activesupport (3.2.13)
       Installing builder (3.0.4)
       Installing activemodel (3.2.13)
       Installing erubis (2.7.0)
       Installing journey (1.0.4)
       Installing rack (1.4.5)
       Installing rack-cache (1.2)
       Installing rack-test (0.6.2)
       Installing hike (1.2.3)
       Installing tilt (1.4.1)
       Installing sprockets (2.2.2)
       Installing actionpack (3.2.13)
       Installing mime-types (1.23)
       Installing polyglot (0.3.3)
       Installing treetop (1.4.14)
       Installing mail (2.5.4)
       Installing actionmailer (3.2.13)
       Installing arel (3.0.2)
       Installing tzinfo (0.3.37)
       Installing activerecord (3.2.13)
       Installing activeresource (3.2.13)
       Installing rack-ssl (1.3.3)
       Installing json (1.8.0)
       Installing rdoc (3.12.2)
       Installing thor (0.18.1)
       Installing railties (3.2.13)
       Installing bootstrap-daterangepicker-rails (0.0.5)
       Installing coffee-script-source (1.6.2)
       Installing execjs (1.4.0)
       Installing coffee-script (2.2.0)
       Installing coffee-rails (3.2.2)
       Installing commonjs (0.2.6)
       Installing jquery-rails (3.0.1)
       Installing less (2.2.1)
       Installing less-rails (2.2.3)
       Installing libv8 (3.3.10.4)
       Using bundler (1.3.2)
       Installing rails (3.2.13)
       Installing sass (3.2.9)
       Installing sass-rails (3.2.6)
       Installing simple_form (2.1.0)
       Installing sqlite3 (1.3.7)
       Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
       /usr/local/bin/ruby extconf.rb
       checking for sqlite3.h... no
       sqlite3.h is missing. Try 'port install sqlite3 +universal'
       or 'yum install sqlite-devel' and check your shared library search path (the
       location where your sqlite3 shared library is located).
       *** extconf.rb failed ***
       Could not create Makefile due to some reason, probably lack of
       necessary libraries and/or headers.  Check the mkmf.log file for more
       details.  You may need configuration options.
       Provided configuration options:
       --with-opt-dir
       --without-opt-dir
       --with-opt-include
       --without-opt-include=${opt-dir}/include
       --with-opt-lib
       --without-opt-lib=${opt-dir}/lib
       --with-make-prog
       --without-make-prog
       --srcdir=.
       --curdir
       --ruby=/usr/local/bin/ruby
       --with-sqlite3-dir
       --without-sqlite3-dir
       --with-sqlite3-include
       --without-sqlite3-include=${sqlite3-dir}/include
       --with-sqlite3-lib
       --without-sqlite3-lib=${sqlite3-dir}/lib
       --enable-local
       --disable-local
       Gem files will remain installed in /tmp/build_27eau1y5d86jq/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.7 for inspection.
       Results logged to /tmp/build_27eau1y5d86jq/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.7/ext/sqlite3/gem_make.out
       An error occurred while installing sqlite3 (1.3.7), and Bundler cannot continue.
       Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
 !
 !     Failed to install gems via Bundler.
 !

 !     Push rejected, failed to compile Ruby/Rails app

To git@heroku.com:simple-form-app.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:simple-form-app.git'

 Solution: 

Add this to your Gemfile,
group :production do
  gem 'pg'
end
group :development, :test do
  gem 'sqlite3'
end
 
then do a bundle then repush to heroku. You cannot use sqlite3 on Heroku - which is the cause of the error.

Thank You,
Uma Mahesh.


Wednesday, 22 August 2012

Agent admitted failure to sign using the key. Permission denied (publickey).

Hi,

solution : ssh-add ~/.ssh/id_rsa


I have faced the below error while cloning the code from github. I have added my keys to heroku and every thing went good. But I am facing the below error

Agent admitted failure to sign using the key. Permission denied (publickey).

Cloning into master...
Agent admitted failure to sign using the key.
Permission denied (publickey).
fatal: The remote end hung up unexpectedly


Finally after google I found the solution as below

> ssh-add ~/.ssh/id_rsa

I have ran the above command and works for me.


Thank You,
Uma Mahesh.

Tuesday, 1 May 2012

Deploying static website on Heroku.

Hi,

Some times we may have static page website with three to four html pages. We can use heroku for deploying static websites also.

Heroku uses Rack app for this.

Here are the steps that need to be taken for creating the static website in heroku.

Your folder should be organised like this:

- MyApp
  |- config.ru
  |- public
    |- index.html
    |- stylesheets
    |- images


In config.ru file add the following:

use Rack::Static,
  :urls => ["/stylesheets", "/images"],
  :root => "public"

run lambda { |env|
  [
    200,
    {
      'Content-Type'  => 'text/html',
      'Cache-Control' => 'public, max-age=86400'
    },
    File.open('public/index.html', File::RDONLY)
  ]
}


And there you go, a static site being served on Heroku completely cached and easily served using a single dyno.

To know more information about this check the heroku website: https://devcenter.heroku.com/articles/static-sites-on-heroku

Thank You,
Uma Mahesh.