Что лучший способ состоит в том, чтобы развернуть JRuby на приложении направляющих к Tomcat?

Это то, что вы хотите?

import itertools as it

def func(s):
    for i in range(len(s)+1):
        for combo in it.combinations(s,i):
            yield "".join(combo)

print list(func("abc"))
10
задан madlep 29 September 2008 в 05:58
поделиться

4 ответа

У меня нет большого опыта в этом, таким образом, я не знаю, могу ли я дать Вам Лучший способ, но если Capistrano не работает, и у Вас не может быть отдельной установки МРТ только для выполнения его, Вы имеете всего несколько альтернатив в запасе:

Попробуйте рабочие простые Грабли и запишите Вашу собственную цель развертывания: http://www.gra2.com/article.php/deploy-ruby-on-rails-applications-rake

Или используйте Муравья или Знатока.

Или если это всего ОДИН сервер, к которому необходимо развернуться, Вы могли бы просто взломать вместе два сценария Ruby - тот, который слушает на сервере для запросов завершения работы/запуска и одном локальном, к которому Вы работаете: Отправьте завершение работы, scp по файлу, отправьте запуск.

Между прочим, Вы отправили какие-либо ошибки интеграции, которые Вы находите с Capistrano команде JRuby? Я уверен, что они были бы рады иметь любой вклад.:)

3
ответ дан 3 December 2019 в 17:22
поделиться

Я выполняю проект направляющих, использующий JRuby и развертывающийся к серверу Tomcat. Я принял решение развернуться с Capistrano, потому что он автоматизирует примерно все. Я должен был сделать несколько незначительных модификаций к жизненному циклу развертывания Capistrano, чтобы заставить это работать на Tomcat:

Шаг 1: Я создал задачу трели, которая будет выполнена на сервере после того, как Capistrano обновляет код:

desc "Run the warble command to deploy the site"
namespace(:deploy) do
  task :warble do
    run ". ~/.profile;cd #{release_path};warble"
  end
end

И сцепленный это в жизненный цикл Capistrano с помощью:

after 'deploy:update_code', 'deploy:warble'

Мой сервер Tomcat имеет символьную ссылку, указывающую #{release_path}/tmp/war каталог создается трелью. Если Вам не нравится это, можно легко изменить задачу трели переместить военный файл в каталог Tomcat вместо этого.

Шаг 2: Я переопределил deploy:start и deploy:stop задачи так, чтобы они начали сервер Tomcat вместо сервера Полукровки:

desc "Starts the Tomcat Server"
namespace(:deploy) do
  task :start do
    sudo "#{tomcat_home}/bin/startup.sh"
  end
end

desc "Shutdown the Tomcat Server"
namespace(:deploy) do
  task :stop do
    sudo "#{tomcat_home}/bin/shutdown.sh"
  end
end

Я выполняю задачи Capistrano с помощью МРТ, а не интерпретатора JRuby.

15
ответ дан 3 December 2019 в 17:22
поделиться

Я, вероятно, использовал бы Муравья для этого. В конце концов, это - просто другой ВОЕННЫЙ файл, правильно? Я не знаю, какую версию Tomcat Вы используете, но версия 4.1x идет с задачей Ant для развертывания на Tomcat.

2
ответ дан 3 December 2019 в 17:22
поделиться

Могло бы стоить посмотреть 'на Vlad устройство развертывания', оно добавляет remote_task для Обстрела разрешения Вам выполнить задачи на удаленном сервере. Лично однако я предпочитаю иметь стандартную задачу Граблей на сервере, ssh в и выполнять ту задачу - который затем сделал бы svn контроль, сделать ВОЕННЫЙ файл, безотносительно...

2
ответ дан 3 December 2019 в 17:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: