Migrating a complete Ruby rails app off heroku!!!

This is been driving me nuts for the last week.

The requirement: a Friend has a complete ruby rails app currently (was) running on heroku. It’s dead now as they don’t support the bamboo stack anymore.

So he’s asked me to help him take it off heroku (ok done that got all the code and db and everything)… and he wants to move it to a new / cloud server.

So ok. I’ve set-up an Ubuntu 14.x LTS Server for him and got the code oj to that. That’s done and fine.

But it just won’;t run. Compiles, etc. But whatever I say or do it won’t run. I done it all:

  • Pointed to a local DB. Postgres - set-up and working on local.

  • Moved DB from heroku to local with all data. Fine.

  • Compiled it - bundle install.

  • Yet when i run it… with ==> foreman start

13:54:36 web.1 | started with pid 12212

13:54:37 web.1 | I, [2015-06-30T13:54:37.799228 #12212] INFO – : listening on addr=0.0.0.0:5000 fd=10

13:54:37 web.1 | I, [2015-06-30T13:54:37.799328 #12212] INFO – : worker=0 spawning…

13:54:37 web.1 | I, [2015-06-30T13:54:37.800127 #12212] INFO – : master process ready

13:54:37 web.1 | I, [2015-06-30T13:54:37.800917 #12213] INFO – : worker=0 spawned pid=12213

13:54:37 web.1 | I, [2015-06-30T13:54:37.801238 #12213] INFO – : Refreshing Gem list

13:54:37 web.1 | DEPRECATION WARNING: require “activerecord” is deprecated and will be removed in Rails 3. Use require “active_record” instead. (called from /home/online/kacstbook-engage/vendor/bundle/ruby/1.8/gems/activerecord-2.3.15/lib/activerecord.rb:2)

… AND THEN …

tialized constant DEFAULT_HOST

13:56:09 web.1 | #<NoMethodError: undefined method `application’ for Rails:Module>

13:56:09 web.1 | E, [2015-06-30T13:56:09.106145 #12225] ERROR – : reaped #<Process::Status: pid=12235,exited(1)> worker=0

13:56:09 web.1 | I, [2015-06-30T13:56:09.106294 #12225] INFO – : worker=0 spawning…

13:56:09 web.1 | I, [2015-06-30T13:56:09.107351 #12239] INFO – : worker=0 spawned pid=12239

13:56:09 web.1 | I, [2015-06-30T13:56:09.107525 #12239] INFO – : Refreshing Gem list

13:56:09 web.1 | DEPRECATION WARNING: require “activerecord” is deprecated and will be removed in Rails 3. Use require “active_record” instead. (called from /home/online/kacstbook-engage/vendor/bundle/ruby/1.8/gems/activerecord-2.3.15/lib/activerecord.rb:2)

13:56:12 web.1 | /home/online/kacstbook-engage/config/initializers/paperclip.rb:6: warning: already initialized constant DEFAULT_HOST

13:56:12 web.1 | #<NoMethodError: undefined method `application’ for Rails:Module>

13:56:12 web.1 | E, [2015-06-30T13:56:12.745513 #12225] ERROR – : reaped #<Process::Status: pid=12239,exited(1)> worker=0

13:56:12 web.1 | I, [2015-06-30T13:56:12.745670 #12225] INFO – : worker=0 spawning…

13:56:12 web.1 | I, [2015-06-30T13:56:12.746711 #12243] INFO – : worker=0 spawned pid=12243

13:56:12 web.1 | I, [2015-06-30T13:56:12.746847 #12243] INFO – : Refreshing Gem list

13:56:12 web.1 | DEPRECATION WARNING: require “activerecord” is deprecated and will be removed in Rails 3. Use require “active_record” instead. (called from /home/online/kacstbook-engage/vendor/bundle/ruby/1.8/gems/activerecord-2.3.15/lib/activerecord.rb:2)

13:56:15 web.1 | /home/online/kacstbook-engage/config/initializers/paperclip.rb:6: warning: already initialized constant DEFAULT_HOST

13:56:16 web.1 | #<NoMethodError: undefined method `application’ for Rails:Module>

13:56:16 web.1 | E, [2015-06-30T13:56:16.003923 #12225] ERROR – : reaped #<Process::Status: pid=12243,exited(1)> worker=0

13:56:16 web.1 | I, [2015-06-30T13:56:16.004079 #12225] INFO – : worker=0 spawning…

13:56:16 web.1 | I, [2015-06-30T13:56:16.005235 #12247] INFO – : worker=0 spawned pid=12247

13:56:16 web.1 | I, [2015-06-30T13:56:16.005557 #12247] INFO – : Refreshing Gem list

13:56:16 web.1 | DEPRECATION WARNING: require “activerecord” is deprecated and will be removed in Rails 3. Use require “active_record” instead. (called from /home/online/kacstbook-engage/vendor/bundle/ruby/1.8/gems/activerecord-2.3.15/lib/activerecord.rb:2)

13:56:19 web.1 | /home/online/kacstbook-engage/config/initializers/paperclip.rb:6: warning: already initialized constant DEFAULT_HOST

13:56:19 web.1 | #<NoMethodError: undefined method `application’ for Rails:Module>

13:56:19 web.1 | E, [2015-06-30T13:56:19.368604 #12225] ERROR – : reaped #<Process::Status: pid=12247,exited(1)> worker=0

See the ==> <NoMethodError: undefined method `application’ for Rails:Module>

Any suggestions. I’m at my wits end. tried everything… And I just can’t see anything in port 5000!

Thanx.

Goan.

Rails.application exists only in rails 3 & above and from the log you appear to be running rails 2.3.15. At a guess you’ve a gem installed that requires rails 3 (or possibly rails 4). If you had run bundle update and some of your version constraints were quite loose then that might explain it.

Fred

Hi Fred,

Ok - is me, the same guy as the prev email (on this thread) Ok. Somehow it won't take my Google Login anymore - so had to create a new one.

Ok trying the bundle update here. And it seems to be doing something. Will keep you informed.

Any article or such youc an point me to? Unfortunately I'm not the programmer - that guy's left and gone and this is a legacy app I have to pport. I'm a Support Kinda guy :frowning: So anything that could be useful for me? links etc. Appreciate it.

And later, once it's done and running - we'll get some programmer to check/extend/de-bug it for future work....

Thanx again. Appreciated.

Goan.

Frederick Cheung wrote in post #1175881:

You should have copied Gemfile.lock from the working version, then used bundle install not bundle update. bundle install will install the versions that were specified in Gemfile.lock. bundle update will update everything to the latest version compatible with Gemfile, which is not the same thing. Once you have it all working and in a version control system such as git then you can update to later gems if you want/need to.

If you want to find out more about RoR then I suggest working through a good tutorial such as railstutorial.org, which is free to use online.

Colin

Hi Colin,

Tried that believe me. And I had the Gemfile.lock too. But it was erroring. Bundle install used to work - but errors after that.

Now am using the bundle update (As Fred above suggested) and it's asking for some ruby version changes - was 1.8.5 it asked to go to 1.9.2 for nokogiri, then did that then now again asked to go to 1.9.3 as it's asking for that for capybara....

So the update is still on and hopefully should work. I have no idea of the quality of the original code to be (able to be) upgraded across these versions etc. So Yes, plan to spend tomorrow reading-up on the tutorial you suggest. Thanks Colin.

I don't want it in Git yet. I want it working on my stand-alone Ubuntu LTS 14.2 server here first. Then will git it.

Coan.

Colin Law wrote in post #1175969:

Hi Colin,

Tried that believe me. And I had the Gemfile.lock too. But it was erroring. Bundle install used to work - but errors after that.

Now am using the bundle update (As Fred above suggested) and it's asking for some ruby version changes - was 1.8.5 it asked to go to 1.9.2 for nokogiri, then did that then now again asked to go to 1.9.3 as it's asking for that for capybara....

I don't think Fred suggested that, but pointed out that you may have problems using it. Replace Gemfile.lock with the original and run bundle install again. If you get errors then ask for the fix. By using update you will not end up with the same gems as on Heroku and if it does not work you will not know whether the problem may be due to the different gem versions or something else.

So the update is still on and hopefully should work. I have no idea of the quality of the original code to be (able to be) upgraded across these versions etc. So Yes, plan to spend tomorrow reading-up on the tutorial you suggest. Thanks Colin.

I don't want it in Git yet. I want it working on my stand-alone Ubuntu LTS 14.2 server here first. Then will git it.

This is absolutely the wrong approach. Put the version exactly as it was into git first, then get it working locally. That way you will be able to track the changes you made and easily go back when you go up a blind alley (such as running bundle update instead of bundle install). Such exercises are exactly where a source control system is most useful.

By the way, the convention on this list to to insert replies into the previous message as I have done. That way it is easier to follow the thread.

Colin

Colin Law wrote in post #1175974:

Hi Colin,

Tried that believe me. And I had the Gemfile.lock too. But it was erroring. Bundle install used to work - but errors after that.

Now am using the bundle update (As Fred above suggested) and it's asking for some ruby version changes - was 1.8.5 it asked to go to 1.9.2 for nokogiri, then did that then now again asked to go to 1.9.3 as it's asking for that for capybara....

I don't think Fred suggested that, but pointed out that you may have problems using it. Replace Gemfile.lock with the original and run bundle install again. If you get errors then ask for the fix. By using update you will not end up with the same gems as on Heroku and if it does not work you will not know whether the problem may be due to the different gem versions or something else.

So the update is still on and hopefully should work. I have no idea of the quality of the original code to be (able to be) upgraded across these versions etc. So Yes, plan to spend tomorrow reading-up on the tutorial you suggest. Thanks Colin.

I don't want it in Git yet. I want it working on my stand-alone Ubuntu LTS 14.2 server here first. Then will git it.

This is absolutely the wrong approach. Put the version exactly as it was into git first, then get it working locally. That way you will be able to track the changes you made and easily go back when you go up a blind alley (such as running bundle update instead of bundle install). Such exercises are exactly where a source control system is most useful.

By the way, the convention on this list to to insert replies into the previous message as I have done. That way it is easier to follow the thread.

Colin

Ok Got that. thanx. For the convention part. Will do.

Now about the coding thing - Ok am up a blind alley now. It upgraded everything - but still won't run. no bundle errors... But well :frowning:

It asked for a config.rb file and such stuff :frowning: Said puma was not available, etc etc... and then says this.....

20:56:07 wweb.1 | started with pid 3438 20:56:07 worker.1 | started with pid 3440 20:56:08 worker.1 | /home/online/.rvm/gems/ruby-1.9.3-p551/gems/rake-0.8.7/lib/rake/alt_system.rb:32: Use RbConfig instead of obsolete and deprecated Config. 20:56:08 wweb.1 | /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/dsl.rb:20:in `read': No such file or directory - config/puma.rb (Errno::ENOENT) 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/dsl.rb:20:in `_load_from' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/dsl.rb:9:in `block in load' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/dsl.rb:8:in `tap' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/dsl.rb:8:in `load' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/configuration.rb:35:in `load' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/cli.rb:545:in `parse_options' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/lib/puma/cli.rb:190:in `run' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/gems/puma-2.11.3/bin/puma:10:in `<top (required)>' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/bin/puma:23:in `load' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/bin/puma:23:in `<main>' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/bin/ruby_executable_hooks:15:in `eval' 20:56:08 wweb.1 | from /home/online/.rvm/gems/ruby-1.9.3-p551/bin/ruby_executable_hooks:15:in `<main>'

Any thoughts. But tomorrow (is 9 PM here now so leaving for the day) - I will do as you suggest - try getting down a clean copy, put it into git and then try and slowly upgrade/build it.

Thanx for the attention.

Goan.

Remember, bundle install not upgrade.

Colin

Colin Law wrote in post #1175982:

... Any thoughts. But tomorrow (is 9 PM here now so leaving for the day) - I will do as you suggest - try getting down a clean copy, put it into git and then try and slowly upgrade/build it.

Remember, bundle install not upgrade.

Colin

Thanx for the help. Appreciated. BTW, where are you? I'm in Goa (India) - just so I can coord to your time-zones - and make the most of the assistance you're so willingly offering Yes? Thank you again.

Ok. Got a latest copy from heroku. It does not run there anymore as the bamboo stack's depreciated - so Yes, got it. Checked into new-cedar-branch too - to avoid going "up the alley" again :slight_smile: All good.

Nothing's changed... Still errors...

With plain --> bundle install

$ foreman start /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:54:in `run': undefined method `spawn' for Process:Module (NoMethodError)         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:53:in `chdir'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:53:in `run'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:358:in `spawn_processes'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:355:in `upto'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:355:in `spawn_processes'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:354:in `each'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:354:in `spawn_processes'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:57:in `start'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/cli.rb:41:in `start'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/command.rb:27:in `__send__'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/bin/foreman:7         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/foreman:19:in `load'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/foreman:19         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/ruby_executable_hooks:15 online@online-Virtual-Machine:~/kacstbook-engage$

Any ideas? Anything I can try :frowning:

Goan.

OPSPL Goan wrote in post #1176005:

Colin Law wrote in post #1175982:

... Any thoughts. But tomorrow (is 9 PM here now so leaving for the day) - I will do as you suggest - try getting down a clean copy, put it into git and then try and slowly upgrade/build it.

Remember, bundle install not upgrade.

Colin

Thanx for the help. Appreciated. BTW, where are you? I'm in Goa (India) - just so I can coord to your time-zones - and make the most of the assistance you're so willingly offering Yes? Thank you again.

Ok. Got a latest copy from heroku. It does not run there anymore as the bamboo stack's depreciated - so Yes, got it. Checked into new-cedar-branch too - to avoid going "up the alley" again :slight_smile: All good.

Nothing's changed... Still errors...

With plain --> bundle install - it bundles. No errors. But still won't run.

$ foreman start

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:54:in

`run': undefined method `spawn' for Process:Module (NoMethodError)         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:53:in

`chdir'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/process.rb:53:in

`run'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:358:in

`spawn_processes'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:355:in

`upto'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:355:in

`spawn_processes'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:354:in

`each'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:354:in

`spawn_processes'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/engine.rb:57:in

`start'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/lib/foreman/cli.rb:41:in

`start'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/command.rb:27:in

`__send__'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/command.rb:27:in

`run'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/invocation.rb:126:in

`invoke_command'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor.rb:359:in

`dispatch'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/thor-0.19.1/lib/thor/base.rb:440:in

`start'         from

/home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/gems/foreman-0.78.0/bin/foreman:7

        from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/foreman:19:in `load'         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/foreman:19         from /home/online/.rvm/gems/ruby-1.8.7-p302@rails2310/bin/ruby_executable_hooks:15 online@online-Virtual-Machine:~/kacstbook-engage$

Any ideas? Anything I can try :frowning:

Goan.

1. Foreman looked like it was out of sync - so changed version. Was getting this error ==> 0.74.0 foreman start fails with undefined method `spawn' · Issue #473 · ddollar/foreman · GitHub Now.   foreman --version   0.61.0 *** That seems better.

2. Then is asked for puma. So included that in the Gemfile. and had to make a puma.rb file in config dir. Used info from here:

Is this correct?

3. Now it gives another error :frowning: $ foreman start 10:18:21 web.1 | started with pid 5846 10:18:21 web.1 | [5847] Puma starting in cluster mode... 10:18:21 web.1 | [5847] * Version 2.11.3 (ruby 1.8.7-p302), codename: Intrepid Squirrel 10:18:21 web.1 | [5847] * Min threads: 5, max threads: 5 10:18:21 web.1 | [5847] * Environment: development 10:18:21 web.1 | [5847] * Process workers: 2 10:18:21 web.1 | [5847] * Preloading application 10:18:21 web.1 | [5847] ERROR: No application configured, nothing to run 10:18:21 web.1 | exited with code 1 10:18:21 system | sending SIGTERM to all processes SIGTERM received $

:frowning:

G.

Don’t believe you can use preload_app! with Rails 2, by 1.87

Comment that out, and also the section about the worker.on_boot as I am fairly sure that won’t work either

Mike S. wrote in post #1176022:

Don't believe you can use preload_app! with Rails 2, by 1.87

Comment that out, and also the section about the worker.on_boot as I am fairly sure that won't work either

Still the same error...

$ foreman start 19:13:05 web.1 | started with pid 10007 19:13:06 web.1 | [10008] Puma starting in cluster mode... 19:13:06 web.1 | [10008] * Version 2.11.3 (ruby 1.8.7-p302), codename: Intrepid Squirrel 19:13:06 web.1 | [10008] * Min threads: 5, max threads: 5 19:13:06 web.1 | [10008] * Environment: development 19:13:06 web.1 | [10008] * Process workers: 2 19:13:06 web.1 | [10008] * Phased restart available 19:13:06 web.1 | [10008] ERROR: No application configured, nothing to run 19:13:06 web.1 | exited with code 1 19:13:06 system | sending SIGTERM to all processes SIGTERM received $

Suggestions? For stuff to try?

Goan.

Yes. Hire someone who knows what they're doing.

Seriously, this is like watching someone try to remove their own appendix reading "Abdominal Surgery for Dummies." It can't be an effective use of your (or anyone else's) time.

Failing that, stop trying to run the app; leave foreman, puma, etc. out of the picture and try running the tests. And use `bundle exec` to insure you're using the Gemfile-specified versions.

(P.S. The immediate error   ERROR: No application configured, nothing to run probably means there's no config.ru file in the main directory.)

Good luck.

Hassan Schroeder wrote in post #1176048:

Suggestions? For stuff to try?

Yes. Hire someone who knows what they're doing.

You wanna try? I can send you the stuff..... Basically need it ported off heroku for a friend that would like to run it all on a cloud server.

What'd it cost?

Let me know. And Yes was trying the abdominal surgery for dummies - as there isn't anyone here that could/can handle it. Remember the guy in Antarctica that did just that :smiley: - Not coz he was surrounded by hospitals and doctors. obviously coz he wasn't!!!! :frowning:

OK, let's back up a second.

Why did this application need to be "ported off heroku" in the first place? Because *no one was maintaining it.*

I wouldn't get this running somewhere else without upgrading it to supported versions of Ruby/Rails/etc. and having an agreement in place for at least handling security updates.

And if your friend doesn't understand the point of this, someone needs to educate him or her :slight_smile:

FWIW,

Hassan Schroeder wrote in post #1176058:

Yes. Hire someone who knows what they're doing.

You wanna try? I can send you the stuff..... Basically need it ported off heroku for a friend that would like to run it all on a cloud server.

OK, let's back up a second.

Why did this application need to be "ported off heroku" in the first place? Because *no one was maintaining it.*

Not exactly. Mainly coz they now have their own company server and they would like all their company apps on that server. Easier to maintain in one place etc. And Yes, the original developer is *Not available* to them anymore. So that's also an issue.

I wouldn't get this running somewhere else without upgrading it to supported versions of Ruby/Rails/etc.

It isn't happening on heroku and frankly I can't really be bothered as then they're still stuck to that platform. I'd prefer to get it running stand-alone on a Ubuntu box. So then we can migrate it to their own server.

and having an agreement in place for at least handling security updates.

All in good time. It's gotta work first. Isn't working on heroku as-of-now and isn't working anywhere else either :frowning: It is working code though Ok.

And if your friend doesn't understand the point of this, someone needs to educate him or her :slight_smile:

We work kinda differently here... :wink: We'll get it working, up-and-running, then discuss what needs to be done for the future... For now - just trying to get it past first-base to see that it *can run* on a stand-alone webserver and isn't too tightly bound to the heroku stuff. See?

So, again - any help is appreciated. Constructive criticism is too. :wink: You even been to Goa (India)? I you haven't you must visit - it'll improve your disposition :smiley:

Goan.

So, this is all because of the Heroku Bamboo retirement (for which there was a years notice anyway)

Bamboo had pre-installed gems that will be needed to be added to your Gemfile, with explicit versions

Current secure (or semi secure anyway) gems will not target ruby 1.8.7 (Heroku actually used the patched REE versions)

The fact that this is still running on Rails 2 (which has been out of support since June 2013), together with ruby 1.8.7 which went end of (extended) support in July 2014, means that you will have a hard time getting it to run now on a modern stack.

Also, if you are no longer hosting on Heroku, the deployment method will need to change (you cant just git push to the server, and hope it will ok - although there is the dokku project that used heroku buildpacks, but the only supported one there is Ceder)

Depending on if it can be classified as open source (in which case you could get some free help), or closed-source (in which case you will probably need to pay consultants under an NDA), you may be able to upgrade to a supported version (which will basically be Rails 4 or higher, as 3.2 will go end of support when Rails 5 is released in a couple of months), depending on the apps complexity, it may actually be worth rewriting it entirely from scratch. If you can host the code somewhere (either Github if it is open-source), or somewhere like Gitlab, or BitBucket if it is closed source (unless you want to pay Github for private repos), and then ask if anyone is prepared to help you fix it.

Sorry if this seems negative, but it is probably realistic.

Yes I know. I'd wanted to do it earlier - but there were delays - you can imagine :frowning: Not mine. But they needed to get funding to do it and then admin delays, etc etc....

Any info I can read-up on this anywhere? I have a couple of programmers here that will be working on it - but I need to give them something (they can hope) to work on. Huh? As of now - it isn't working and I need it doing that at least. * Basically info on how I could port this (legacy?) code to run on a rails 4 system.

Yes, the plan is to get it off any of the platforms. Host it on a clean Linux-Ruby-Rails Server. Virtual for that itself.

It's closed-source. Stuff owned by the people we're doing it for. So well, Looks like we'll have to upgrade it to Rails 4. And I'll have to find someone to do it. Know anyone who can try?

And Yes, thanx for the realistic answer. That was a real help. Any more thoughts let me know.

Thanx again, Mike.

Goan.

Get it working on the existing version of Rails first. Then upgrade it.

Colin

Colin Law wrote in post #1176179: