yngc0der/bitrix-cli

Bitrix command line interface

Installs: 36

Dependents: 0

Suggesters: 0

Security: 0

Stars: 5

Watchers: 2

Forks: 0

Open Issues: 0

Type:bitrix-d7-module

v1.2.0 2022-07-18 07:49 UTC

This package is auto-updated.

Last update: 2024-04-18 12:01:17 UTC


README

PHP Bitrix (main)
>= 7.1.3 >= 14.00.00

Установка

Если вы используете Composer не в корне проекта, то необходимо сконфигурировать директорию для установки модулей.

Например, если файл composer.json находится в директории /local/:

...
"extra": {
    "bitrix-dir": "../bitrix"
},
...

После этого необходимо выполнить команду composer require yngc0der/bitrix-cli, и выполнить регистрацию модуля в Bitrix через админку.

После установки создасться точка входа для консольных команд - bitrix/tools/cli.

Использование

Пакет позволяет использовать symfony/console в контексте Bitrix Framework. Создание команд детально описано в документации (https://symfony.com/doc/current/console.html)

Для получения короткой справки и списка доступных команд выполните в консоли php bitrix/tools/cli

Запустить нужную команду можно, выполнив php bitrix/tools/cli command args. Например, php bitrix/tools/cli orm:annotate -c -m main

Регистрация команд через подписку на событие

Для регистрации собственной команды нужно подписаться на событие OnCommandsLoad модуля yngc0der.cli

\Bitrix\Main\EventManager::getInstance()->addEventHandler(
    'yngc0der.cli',
    'OnCommandsLoad',
    function (\Bitrix\Main\Event $event) {
        $result = new \Bitrix\Main\EventResult(
            \Bitrix\Main\EventResult::SUCCESS,
            [
                new \Bitrix\Main\Cli\OrmAnnotateCommand(),  // instance of Symfony\Component\Console\Command\Command
            ]
        );
        
        return $result;
    }
);