Блог о современных технологиях в интернете

Node.js, MongoDB, CoffeeScript, JavaScript, HTML5, CSS3, Zend Framework, PHP, Git, Social, Analytics

Ноябрь 22, 2011 at 10:42am
Метки: nodejs capistrano deploy cron

← Мои последние записи

Как управлять задачами cron с помощью Capistrano для NodeJS проектов

Как управлять задачами в Cron с помощью Capistrano для NodeJS проектов Я уже рассказывал о том как доставлять NodeJS проект на сервер с помощью Capistrano, теперь я расскажу как можно управлять задачами cron с помощью все того же Capistrano.

Для начала нам понадобится whenever — это замечательная библиотека для удобной работы с задачами крона. Библиотека написана на Ruby, но так как у вас уже стоит Capistrano это не должно быть проблемой. Устанавливаем:

gem install whenever

Чтобы создать структуру для работы с whenever, вызываем в кроне вашего проекта следующую команду:

wheneverize .

В проект будет добавлен один единственный файл config/schedule.rb, именно в нем будут описаны все задачи для исполения кроном. Для примера хочу показать как с помошью whenever можно запускать CoffeeScript файлы.

Смотреть пример schedule.rb на GitHub Gist.

То есть, каждые 2 часа из папки проекта будет запущен файл import.coffee. Больше примеров по работе с whenever можно посмотреть здесь.

Теперь нам осталось обновить config/deploy.rb, который мы разобрали в прошлый раз, и добавить в него два новых этапа, это task :update_crontab и task :clear_crontab. Результат:

Смотреть пример deploy.rb на GitHub Gist.

Думаю доставка ваших приложений с whenever будет еще проще, ведь теперь вы можете удаленно управлять кроном.

Комментировать

Заметки

  1. simonenko это опубликовал(а)