PHPackages                             rollun-com/rollun-installer - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [DevOps &amp; Deployment](/categories/devops)
4. /
5. rollun-com/rollun-installer

ActiveComposer-plugin[DevOps &amp; Deployment](/categories/devops)

rollun-com/rollun-installer
===========================

Installer

5.1.0(1y ago)19.1k↓25%1[1 issues](https://github.com/rollun-lc/rollun-installer/issues)5proprietaryPHPPHP ^8.0

Since Jan 13Pushed 1y ago3 watchersCompare

[ Source](https://github.com/rollun-lc/rollun-installer)[ Packagist](https://packagist.org/packages/rollun-com/rollun-installer)[ RSS](/packages/rollun-com-rollun-installer/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (13)Versions (67)Used By (5)

rollun-installer
----------------

[](#rollun-installer)

---

[Оглавление](https://github.com/rollun-com/rollun-skeleton/blob/master/docs/Contents.md)
----------------------------------------------------------------------------------------

[](#оглавление)

---

- [README InstallerSelfCall](https://github.com/rollun-com/rollun-installer/blob/master/docs/InstallerSelfCall.md)

Документация 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`.

Даный метод вернет массив-конфиг сгенерированый вызываемым инсталлером, либо пустой массив, в случае если инсталлер уже был установлен ранее.

### Пример

[](#пример)

Пример инсталлера который создает требуемый для приложения файл

```
