Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Redmine Plugin - requires restart after every code change

I am working on some plugin on redmine (project management web application written using Ruby on Rail).

For every change i make to the code of the plugin(say view.html.erb file), i have to restart the redmine(application) server. This is because, it runs on production mode by default.

Will running the application on development mode, solve this problem?

If yes, how can i change its running mode or over-ride this behavior so that classes are loaded per every request (yes this will not be efficient but will be good for development) and changes to the code reflect without restarting the application application server(redmine in this case)

I tried adding this line to environment.rb file

ENV['RAILS_ENV'] ||= 'development'

Also tried answers/comments posted below, but they did'nt solve my problem.

Any working solution would be of great help.

Thank You.

Other Related information:

It uses Rails 2.3.14 and its installed using bitnami stack

like image 571
hitesh israni Avatar asked Oct 09 '22 16:10

hitesh israni


1 Answers

For automatic plugin reload on Rails 2.3:

Add config.reload_plugins = true on config/environment.rb. It has to be there, you can't put it on config/environments/development.rb due to the Rails start up steps. You may add if RAILS_ENV = 'development' instead.

config/environment.rb

config.reload_plugins = true  

On the plugin's init.rb, add the following line: init.rb

ActiveSupport::Dependencies.explicitly_unloadable_constants = 'YourPluginModuleName' 

That's all. Don't forget to remove it when you're done.

like image 79
alony Avatar answered Oct 12 '22 12:10

alony