Download the PHP package rollun-com/rollun-installer without Composer
On this page you can find all versions of the php package rollun-com/rollun-installer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package rollun-installer
rollun-installer
Оглавление
Документация rollun-installer
Библиотека install позволяет произвести настройку окружение для вашей библиотеки или приложения.
Вы должны создать реализации интерфейса InstallerInterface
в которых и будет описана процедура настройки окружения.
Данные реализации обязаны содержать в себе суфикс Installer
.
Так же существует InstallerAbstract
абстрактная реализация интерфейса.
При ее использоваии вам нужно реализовать обязательные метды install
, uninstall
, isInstall
, getDescription
.
install
- Установить данный инсталлер, и вернет конфиг который нужно добавить для работы данного инсталлера.uninstall
- Удалить все созданное инсталятором.isInstall
- Возвращяетtrue
в случае если данный инсталлер был установлен, иfalse
в ином случае.getDescription
- Выводит на консоль описание данного инсталлера. Есть еще перечень дополнительные методов:isDefaultOn
- Возвращаетtrue
в случае если данный инсталлер рекомендован к установке.getDependencyInstallers
- Возвращает список зависимых инсталлеров для данного инсталлера.Инсталлера из данного списка будут запущены раньше основного инсталлера.
При запуске инсталяции, будут найдены все подобные инсталлеры в порядке сверху вниз.
Учитывайте это при напсании своих инсталлеров если вам важен порядок их вызова.
Данная библиотека позволяет настраивать окружение для зависимых библиотек.
Сначало будут обрабатыватся инсталлеры зависимых библиотек, а в конце ваши.
Вызов инсталяции в рантайме.
Так же иснталлер имеет возможность во время своей работы, вызвать установку другого иснталлера.
Для этого используйте метод InstallerAbstract::callInstaller($installerName)
, передав ему в парметры, имя желаемого инсталлера.
В качестве имени инсталлера используеться его className, то есть для инсталлера ExampleOneInstaller className -
rollun\installer\Example\ExampleOneInstaller::class
.
Даный метод вернет массив-конфиг сгенерированый вызываемым инсталлером, либо пустой массив, в случае если инсталлер уже был установлен ранее.
Пример
Пример инсталлера который создает требуемый для приложения файл
Переменные окружения
Для обозначения типа рабочего окружения используется переменная окружения APP_EVN
Используйте ее что бы определять для какого окружение происходит настройка.
Так же должны быть переменная MACHINE_NAME
которая должна содержать в себе имя текущей контейнера/машины.
Она должна содержать имя в таком виде {server_name}-{vm_name}-{container_name}
.
В случае если одной составляющей из данной цепочи не существует - пропустите ее.
Пример:
ServerDrakon-ProductionVM-5000
ServerDrakon-ProductionVM-
ServerDrakon--5000
ServerDrakon--
Запуск установщиков
Для того что бы можно было запускать инсталлеры используя композер вы должны установить rollun-com/rollun-installer в качестве зависимости.
Теперь после того как все предыдущее шаги были сделаны, вы можете используя команды
composer lib install
- Запускать инсталяторы для настрройки окружения.composer lib uninstall
- Удалять настроки окружения. Так же существует необязательный параметр-l=
которым можно указать язык на котором будет выводится описаниеcomposer lib install -l=ru
- Запускать инсталяторы, описание выводить на русском языке.- Так же для удобства существует флаг
debug
- он выведет всю информацию о найденый и проаналезированых библиотеках в котором не нашел инсталлера. Подобные данные могут помочь в отладке. Пример использованияcomposer lib install debug
.
Composer\IO\IOInterface
Для удобства использования, созданы вспомогательные функции
InstallerAbstract::askParams
- будет повторять вопрос и сообщать об ошибке пока ответ пустойInstallerAbstract::askParamWithDefault
- спросить пользователя хочет ли он использовать значение по умолчанию если ответ отрецательный попросить пользователя ввести значение.
Краткий туториал
Что бы вывести сообщение используйте ф-цию write
Что бы вывести сообщение об ошибке используйте ф-цию write
Что бы задать пользователю вопрос используйте ф-цию write
Для более детального изучения читайте документацию.
Debug
Для убдобства отладки ваших Installers есть скрипт InstallerSelfCall
, ознакомится с ним можно тут.
All versions of rollun-installer with dependencies
psr/log Version ^1.0 || ^2.0
composer/composer Version ^2.0
composer-plugin-api Version ^2.2
laminas/laminas-http Version ^2.15.1
laminas/laminas-servicemanager Version ^3.10.0
laminas/laminas-db Version ^2.13.4
laminas/laminas-diactoros Version ^2.8.0
laminas/laminas-stratigility Version ^3.5.0
rollun-com/rollun-dic Version ^4.0.0