[devel] idea: webapps packaging and webapps control system
Vladimir Lettiev
=?iso-8859-1?q?crux_=CE=C1_gorodmasterov=2Ecom?=
Сб Фев 26 17:08:08 MSK 2005
Добрый день.
Появилась идея насчёт запаковки веб-пакетов.
Основная сложность опакечивания веб-приложений состоит в том, что
установка приложения зачастую не сводится к простому распихиванию файлов
по нужным каталогам:
webapps, использующие СУБД (создание базы, залитие первоначального
контента и последующие апдейты).
webapps, требующие отдельный виртуальный хостинг
webapps, расшаренные между несколькими виртуальными хостингами.
возжможны конфликты в namespace названий каталогов, баз данных между
разными приложениями.
Т.о. майнтейнер, не может создать пакет, который бы на автомате
обрабатывал бы все такие моменты, поскольку они целиком на совести того,
кто установил пакет.
Есть мысль, что необходимо создать некое приложение, под кодовым
названием webapps control system (WCS), которое бы выполняло роль
посредника между пользователем и пакетом веб-приложения, предоставляя
единообразный интерфейс для конфигурации как для одного, так и для
другого. Поясню на примере:
Есть пакет веб-приложения "X". Он требует базу данных в MySQL, а также
виртуальный хостинг. Чтобы провести настройку требуется: знать пароль
для создания БД, знать имя(имена) виртуального хоста(ов) (или ip-адрес(ов)).
Есть пользователь, который знает: имя для базы (и адрес, если СУБД не на
localhost), пароль для её создания, имена(ip) для виртохостов. Эти
данные он заносит в некий конфигурационный файл, который предоставляет
веб-приложение "X". Потом запускает WCS, который читает это конф и
вуаля: база создана, виртохосты созданы, осталось только проделать
конфигурирование самого приложения (которое уникально для каждого случая).
В будущем, при обновлении приложения "X", WCS на основе уже имеющегося
конфига, проапдейтит базу (и даже сам сделает бэкап-дамп на всякий
случай), правильно разведёт симлинки по вирт-хостам.
Если идти дальше, то можно придумать для каждого приложения робота,
который бы производил автоконфигурацию веб-приложения, основываясь на
данных, который ввёл пользователь в конфиге WCS для данного приложения.
Как вам такая идея?
--
С уважением, Владимир Леттиев aka crux <crux на gorodmasterov.com>
Подробная информация о списке рассылки Devel