Create an account

Very important

  • To access the important data of the forums, you must be active in each forum and especially in the leaks and database leaks section, send data and after sending the data and activity, data and important content will be opened and visible for you.
  • You will only see chat messages from people who are at or below your level.
  • More than 500,000 database leaks and millions of account leaks are waiting for you, so access and view with more activity.
  • Many important data are inactive and inaccessible for you, so open them with activity. (This will be done automatically)


Thread Rating:
  • 439 Vote(s) - 3.38 Average
  • 1
  • 2
  • 3
  • 4
  • 5
"bin/rails: No such file or directory" w/ Ruby 2 & Rails 4 on Heroku

#1
While following the Rails 4 **Beta** version of Michael Hartl's *[Ruby on Rails Tutorial][1]*, my app fails to start on Heroku, but runs fine locally with `bundle exec rails server`. Checking `heroku logs -t` reveals the following error:

$ heroku[web.1]: State changed from crashed to starting
$ heroku[web.1]: Starting process with command `bin/rails server
-p 33847 -e $RAILS_ENV`
$ app[web.1]: bash: bin/rails: No such file or directory
$ heroku[web.1]: Process exited with status 127
$ heroku[web.1]: State changed from starting to crashed
$ heroku[web.1]: Error R99 (Platform error) -> Failed to launch the
dyno within 10 seconds
$ heroku[web.1]: Stopping process with SIGKILL

If I `heroku run bash` and check the `bin` directory, I can see that there is **not** a `rails` executable:

~$ ls bin
erb gem irb node rdoc ri ruby testrb

What have I done wrong? I followed the tutorial exactly.

[1]:

[To see links please register here]

Reply

#2
On rails 5.2.6, rake app:update:bin worked for me. Now deployment to heroku is working.
Reply

#3
**Steps** :

>1. `bundle config --delete bin` # Turn off Bundler's stub generator

>2. `rake rails:update:bin` # Use the new Rails 4 executables

>3. `git add bin or git add bin -f` # Add bin/ to source control

>4. `git commit -a -m "you commit message"`

>5. `git push heroku master`

>6. `heroku open`

Reply

#4
I had the very same problem that you did. The issue lied in the fact that the bin folder was never pushed to the heroku repository.

I looked, I looked, and then I looked again, there was no rule in the .gitignore file for the bin/ folder...

Then, after a lot of pain and anguish, I realized that a couple of months before I had created a global .gitignore that would ignore all bin folders of all my repositories (why lord, why??).

I deleted the global .gitignore, and everything worked fine.
Reply

#5
I can confirm running `rake rails:update:bin` works, as said by @Ryan Taylor.

I think I had this problem because I originally created this Rails app on Windows. Running the command above on Linux solved for me.

Also, on changing from Windows to Linux for development, it is a good idea to delete `Gemfile.lock` file and run `bundle install` to generate it again without Windows specific gems listed there.
Reply

#6
I had this issue because the permissions on my ```~/bin``` directory were ```644``` instead of ```755```. Running ```rake rails:update:bin``` locally (on Mac/*nix) and then pushing the changes fixed the problem.
Reply

#7
We didn't have a myapp/bin directory in our rails 4 app, so we created one and then copied in the my app/script/rails file, plus the bundle and rake files from under rvm/ruby/bin and then added these to the repo for git and pushed it up to heroku and all was well.
Reply

#8
I had this problem also since I upgraded to rails 4.0.0

Run this command


rake rails:update:bin

You can go here for more info

[To see links please register here]

Reply

#9
After struggling with this for a bit, I noticed that my Rails 4 project had a `/bin` directory, unlike some older Rails 3 projects I had cloned. `/bin` contains 3 files, `bundle`, `rails`, and `rake`, but these weren't making it to Heroku because I had `bin` in my global `.gitignore` file.

This is a pretty common ignore rule if you work with Git and other languages (Java, etc.), so to fix this:

1. Remove `bin` from `~/.gitignore`
2. Run `bundle install`
3. Commit your
changes with `git add .` and `git commit -m "Add bin back"`
4. Push your changes to Heroku with `git push heroku master`
Reply



Forum Jump:


Users browsing this thread:
1 Guest(s)

©0Day  2016 - 2023 | All Rights Reserved.  Made with    for the community. Connected through