Как лучше всего развернуть приложение Perl?

Я отправил этот вопрос в поисках чего-то похожего на Buildout для Perl. Я думаю, что Shipwright - это то, что я ищу, но я не совсем уверен. Я поигрался с этим, и я создал проект, импортировал все мои исходники и зависимости, и я экспортировал все на судно, после чего документация просто прекратилась. Что мне делать с судном верфи? Занимаюсь ли я собственно опытно-конструкторскими работами на судне или занимаюсь разработкой на верфи? Я предполагаю, что судно предназначено только для развертывания, но как мне на самом деле развернуть судно на веб-сервере (скажем, я использую linux, apache и просто использую cgi).

Подходит ли Shipwright для того, что я пытаюсь выполнить, или есть что-то еще, что было бы более подходящим? В идеале я мог бы использовать Shipwright так же, как я использую Buildout. Я использую Buildout для создания красивой изолированной среды для моей разработки, а также я использую Buildout при развертывании на живые серверы для управления всеми зависимостями моего приложения.

РЕДАКТИРОВАТЬ: Вот основные моменты того, что я могу сделать с Buildout, что я бы хотелось бы иметь возможность делать это на Perl.

С помощью Buildout у меня есть файл в моей кодовой базе, в котором перечислены зависимости (которые для Perl будут либо модулями CPAN, либо другими репозиториями исходных текстов). Я могу запустить сценарий начальной загрузки, который извлечет все эти зависимости и поместит их в каталог в моем проекте и НЕ устанавливает их на системном уровне . Buildout также создает служебные сценарии, которые могут делать все, что вы хотите (запускать тесты, другие инструменты командной строки, что угодно на самом деле), и эти сценарии явно добавляют зависимости в путь, чтобы по мере выполнения моих сценариев все мои зависимости были доступны для импорта.

Что действительно очень хорошо, так это то, что он позволяет мне управлять своими зависимостями без необходимости устанавливать что-либо на системном уровне. Это упрощает переход с одной версии на другую. Кроме того, это позволяет мне запускать несколько проектов Buildout в одной системе с использованием разных версий одного и того же модуля. Наконец, одним из огромных преимуществ является то, что структура каталогов Buildout позволяет Я могу просто зафиксировать зависимости в системе управления версиями и развернуть их на новом компьютере. Мне просто нужно выполнить проверку, и все мои зависимости уже удовлетворены, без необходимости касаться чего-либо, установленного на системном уровне.

9
задан Community 23 May 2017 в 11:51
поделиться