LINUX.ORG.RU

Деплой lisp-веб-приложений

 , ,


1

2

Существует ли какое-нибудь средство для деплоя commom lisp веб-приложений (конкретно — restas + huchentoot), похожее на capistrano для ruby или fabric для python?

Что нужно:

  • Поддержка git.
  • Простой деплой на сервер (что-то вроде cap deploy), который получает изменения из гит и перезапускает веб-сервер (применяет обновления кода/данных).
  • поддержка миграций баз данных.

Если нет, то интересно, как деплоятся в продакшн сайты на lisp?

Ах да, cast: archimag mv

PS. Уже третий день никто не может предложить решение =/ гугл тоже молчит.

★★★★

Последнее исправление: drakmail (всего исправлений: 1)
Ответ на: комментарий от Deleted

Ну, имелось ввиду именно обновление данных и кода запущенного приложения.

PS. Ни в коей мере не являюсь знатоком lisp, просто присматриваюсь.
PPS. Если есть еще какие-нибудь замечания — с удовольствием выслушаю.

drakmail ★★★★
() автор топика
Ответ на: комментарий от drakmail

Посмотри на хабре статейки в стиле «создаем web сайт на лисп» и пр. - для ознакомления вполне подойдет.

Deleted
()
Ответ на: комментарий от Deleted

Прочитал все статьи первой страницы по запросу lisp web на хабре, как правильно и удобно выполнять деплой на продакшн так и не увидел.

PS. Забыл еще catap кастануть.

drakmail ★★★★
() автор топика

На StackOverflow посоветовали просто использовать fabricator/capistrano для деплоя. Тоже вариант, но хотелось бы чего-нибудь нативного.

drakmail ★★★★
() автор топика

1) если компилятор доступен в образе веб-приложения, то по крону можно загружать сырцы с помощью asdf:load-system и asdf:compile-system: git pull && ./your_server.sh ctrl update

написание скрипта, который компилирует и загружает исходный код, будет домашним заданием ;)

2) если компилятор не доступен (например в коммерческих версиях), то по крону можно загружать патчи в виде fasl файлов: git pull && ./your_server.sh ctrl load-patches

У меня так работают мы поделки на продакшене.

gensym ★★
()
Ответ на: комментарий от gensym

Плюс еще надо написать средства для обновления схемы БД, когда она меняется. Плюс придумать как откатывать последнее обновление, если оно внезапно что-то сломало.

Собственно, я и ищу уже готовый инструментарий, который это может делать :)

drakmail ★★★★
() автор топика
Ответ на: комментарий от gensym

если компилятор не доступен (например в коммерческих версиях)

Ну compile-то доступен. Это compile-file вырезают по понятным причинам.

mv ★★★★★
()
Ответ на: комментарий от mv

Ну compile-то доступен.

Да, но неудобно же. ;) И еще он выпиливается при delivery-level > 0 (если не ошибаюсь), хотя с помощью ключей можно его оставить.

gensym ★★
()
Ответ на: комментарий от gensym

При delivery вообще много что выпиливается, а ключами вспотеешь всё обратно прибивать, поэтому мы с level 0 деливерим ;)

mv ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.