...
Just my blog

Blog about everything, mostly about tech stuff I made. Here is the list of stuff I'm using at my blog. Feel free to ask me about implementations.

Soft I recommend
Py lib I recommend

I'm using these libraries so you can ask me about them.

Установка нового плагина в Redmine и проблемы

Установка нового плагина в Redmine и проблемы: - иногда может потребоваться миграция базы - иногда может не хватать нужного модуля или gems - иногда возникают конфликты версий gems - может не запуститься или обломить весь Redmine Сначала: Обязательно

cd /var/www/redmine/plugins

В папке плагинов редмайна:

git clone git://github.com/Адрес_репозитория_кода

Это скопирует плагин в папку, в которой запустили команду.

После чего может потребоваться миграция:

rake redmine:plugins:migrate RAILS_ENV=production

Если она прошла успешно, покажется вывод, содержащий перечень всех плагинов установленных в системе:

root@tet-redmine redmine/plugins# rake redmine:plugins:migrate RAILS_ENV=production
(in /var/www/redmine)
Migrating redmine_ckeditor (Redmine CKEditor plugin)...
Migrating redmine_issue_detailed_tabs_time (Redmine Issue Detailed Tabs & Time)...
Migrating redmine_lightbox (Redmine Light Box plugin)...
Migrating redmine_open_links_in_new_window (Redmine Open Links In New Window plugin)...
Migrating redmine_people (Redmine People plugin)...
Migrating redmine_screenshot_paste (Screenshot Paste)...
Migrating redmine_send_mails (Send Mails plugin)...
Migrating sidebar_hide (Sidebar Hide Plugin)...

Если чего-то не хватает, это как правило gems:

root@tet-redmine redmine/plugins# rake redmine:plugins:migrate RAILS_ENV=production
(in /var/www/redmine)
Could not find gem 'simplecov (>= 0) ruby' in the gems available on this machine.
Run `bundle install` to install missing gems.

То необходимо сперва поставить недостающий gem:

root@tet-redmine redmine/plugins# gem install simplecov #команда установки джема и вывод ниже
Fetching: simplecov-html-0.8.0.gem (100%)
Fetching: docile-1.1.5.gem (100%)
Fetching: simplecov-0.8.2.gem (100%)
Successfully installed simplecov-html-0.8.0
Successfully installed docile-1.1.5
Successfully installed simplecov-0.8.2
3 gems installed
Installing ri documentation for simplecov-html-0.8.0...
Building YARD (yri) index for simplecov-html-0.8.0...
Installing ri documentation for docile-1.1.5...
Building YARD (yri) index for docile-1.1.5...
Installing ri documentation for simplecov-0.8.2...
Building YARD (yri) index for simplecov-0.8.2...
Installing RDoc documentation for simplecov-html-0.8.0...
Installing RDoc documentation for docile-1.1.5...
Installing RDoc documentation for simplecov-0.8.2...

После чего обновить список джемов и проинсталить их:

root@tet-redmine redmine/plugins# bundle install
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine.
Your Gemfile lists the gem yard (>= 0) more than once.
You should probably keep only one of them.
While it's not a problem now, it could cause errors if you change the version of just one of them later.
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.........
Fetching additional metadata from https://rubygems.org/..
Fetching additional metadata from https://rubygems.org/..
Fetching additional metadata from https://rubygems.org/..
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...

- далее очень длинный список того, что установлено, что будет установлено и версии. Успешной операция может быть только с таким выводом:

Your bundle is complete!
Gems in the groups development, test and rmagick were not installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.

- если вывод отличается или сообщает об ошибке - готовься к костылям! Лучше всего откатить плагин назад, удалить папку с ним из корня плагинов, рестартнуть апач или редмайн и сделать полный бекап всего, на случай, если вдруг разрешение проблем версий и костылей надоест - чтобы вернуться к прежней рабочей версии. После того как все прошло ОК - мигрируем:

root@tet-redmine redmine/plugins# rake redmine:plugins:migrate RAILS_ENV=production
(in /var/www/redmine)
Migrating redmine_ckeditor (Redmine CKEditor plugin)...
Migrating redmine_issue_detailed_tabs_time (Redmine Issue Detailed Tabs & Time)...
Migrating redmine_issue_templates (Redmine Issue Templates plugin)...

и рестартуем:

root@tet-redmine redmine/plugins# service apache2 restart

На то, чтобы понять правильный порядок действий, понять откуда растут ноги и что зачем идет, у меня ушло два дня, несколько банок энергетика и пару сотет тысяч нервных клеток. Надеюсь, мои инструкции сохранят ваши нервные клетки и вы мне еще скажете спасибо =)