Документация Joomla 4: CLI Update - Обновление интерфейса командной строки (GSoC 2018)

  1. Введение
    1. Требования
    2. Термины и определения
  2. Использование обновления интерфейса командной строки (CLI Update)
  3. Общее Использование Команд
    1. Доступные команды
      1. Проверка обновлений ядра
      2. Команды расширения
        1. Список установленных расширений
        2. Установка расширения
        3. Удаление расширения
      3. Обновление ядра Joomla 4
      4. Установка Joomla через интерфейс командной строки
        1. Интерактивная установка
        2. Неинтерактивная установка
      5. Команды на основе конфигурации
        1. Настройка конфигураций
        2. Получение конфигураций
        3. Получение сгруппированных конфигураций
      6. Команды "Site down" и "Site up"
  4. Участие в обновлении CLI в качестве разработчика
    1. Добавление дополнительных команд
    2. Вызов других команд в классах команд
    3. Некоторые важные вещи, которые следует проверить


Введение.

Выполнение некоторых второстепенных задач в панели администратора Joomla может показаться громоздким и медленным. Обновление интерфейса командной строки (CLI Update) для CMS Joomla представляет более быстрый способ выполнения некоторых из этих операций с помощью командной строки. Это открывает путь к более быстрой интеграции в приложение Joomla. С его помощью небольшие тесты можно выполнять быстрее, не используя монотонные процессы работы в веб-панели мониторинга. Это приложение CLI для CMS Joomla, которое позволяет пользователю выполнять обновления в CMS.

В этой документации показано, как можно использовать обновление командной строки и как вы можете расширить его функциональность как разработчик.

Требования.

Как и для всех приложений CLI (интерфейс командной строки), для использования инструментов, предоставляемых обновлением командной строки, требуется доступ к вашей установке Joomla через командную строку. Возможно, вы захотите рассмотреть возможность доступа по SSH к вашему рабочему серверу.

Термины и определения.

  • CLI - Интерфейс командной строки (Command Line Interface)
  • SSH - Защищенная оболочка (Secure SHell)

Использование обновления интерфейса командной строки (CLI Update).

Для того чтобы вы могли использовать инструменты, предоставляемые CLI Update, как сказано в предыдущем разделе, вам необходим доступ к CLI в корневой каталог установки Joomla. Другими словами, вы должны находиться в корневой папке вашей CMS Joomla, так как все команды будут выполняться из корневой папки.

Вы должны находиться в корневой папке вашей CMS Joomla, так как все команды будут выполняться из корневой папки.

Общее Использование Команд.

В этом разделе мы поговорим об использовании команд. Мы рассмотрим различные команды, что это такое и как вы можете их использовать. Мы перейдем к проверке доступных команд в обновлении командной строки.

Доступные команды.

В обновлении командной строкой (CLI Update) доступно довольно много команд, готовых к использованию. Эти команды сгруппированы в зависимости от области CMS Joomla, к которой они относятся.

Проверка обновлений ядра CMS Joomla.

Обновление командной строки (CLI Update) предоставляет команду для проверки обновлений Joomla, оно работает так же, как веб-версия com_joomlaupdate. Оно проверяет наличие обновлений и сообщает, доступно ли обновление или нет. Чтобы запустить проверку обновлений, мы просто выполним команду следующим образом из корневого каталога:

php cli/joomla.php core:check-updates

Команда выполняется, и на выходе отображается доступная версия обновления, если она доступна, или указывается, что текущая установка обновлена до последней доступной версии Joomla.

текущая установка обновлена до последней доступной версии Joomla

Команды расширения.

Следующая группа команд - это команды на основе расширений, проще говоря, команды позволяют нам управлять расширениями в ядре Jommla, обновление командной строки (CLI Update) поставляется с командами для установки, вывода списков и удаления расширений.

Список установленных расширений.

Эта команда позволяет нам увидеть в виде списка все установленные расширения. Эта команда может выполняться двумя различными способами:

  1. Общий список (General Listing): Перечисляет все установленные расширения. Под расширениями подразумеваются компоненты, языки, плагины, модули Joomla 4, которые будут перечислены вместе при выполнении этой команды. Вот как вы называете команду:
    php cli/joomla.php extension:list

    Под расширениями подразумеваются компоненты, языки, плагины, модули Joomla 4, которые будут перечислены вместе при выполнении этой команды.
  2. Список по типам (Listing By types): Общий список расширений может быть слишком длинным, если вы ищете конкретное расширение из большого списка, однако вы можете сократить их число, указывая явно тип расширений, которые вы хотите отобразить командой, добавив параметр типа в команду. Вот как это делается:
    php cli/joomla.php extension:list --type=language

    вы можете сократить их число, указывая явно тип расширений, которые вы хотите отобразить командой, добавив параметр типа в команду

    Здесь будут перечислены только языковые расширения, вы также можете указать --type как модуль, плагин и компонент.
Установка расширения.

Joomla обеспечивает установку расширения через URL-адрес zip-файла или путь к файлу, обновление командной строки (CLI Update) также предоставляет и то, и другое, и как вы можете их использовать, описано ниже.

  1. Установка по URL (Installing from URL): Чтобы установить расширение по URL, мы выполним команду следующим образом и предоставим аргумент и опцию для команды extension:install.
    php cli/joomla.php extension:install --url=https://github.com/joomla-extensions/patchtester/releases/download/3.0.0-beta3/com_patchtester.zip

    Это позволит загрузить и установить расширение Joomla com_patchtester.

    Чтобы установить расширение по URL, мы выполним команду следующим образом и предоставим аргумент и опцию для команды extension:install
  2. Установка с использованием ПУТИ (Installing from a PATH): Чтобы установить расширение с ПУТИ, по которому находится устанавливаемый пакет, мы запустим ту же команду extension:install и укажем аргументы для путей расположения пакета с расширением на локальном диске сервера:
    php cli/joomla.php extension:install --path=/Users/bosunski/docs/com_pathtester.zip
    Чтобы установить расширение с ПУТИ, по которому находится устанавливаемый пакет, мы запустим ту же команду extension:install и укажем аргументы для путей расположения пакета с расширением

    Это загружает расширение и выполняет установку, как и ожидалось.
Удаление расширения.

Последней командой в этой категории является команда extension:remove, которая используется для удаления расширений из CMS Joomla. Эта команда принимает в качестве аргумента идентификатор extension_id, вы всегда можете использовать extension:list для отображения идентификатора расширения id. Вот как мы удаляем расширение с id 803:

php cli/joomla.php extension:remove 803

команда extension:remove, которая используется для удаления расширений из CMS Joomla

Обновление ядра Joomla 4.

Поскольку обновление командной строки (CLI Update) предоставляет команду для проверки обновления, оно также предоставляет команду для выполнения обновления, если обновление доступно. Чтобы выполнить обновление, мы просто запустим это:

php cli/joomla.php core:update

Эта команда обновляет ядро Joomla до последней доступной версии.

команда обновляет ядро Joomla до последней доступной версии

Установка Joomla через интерфейс командной строки.

Следующая команда - это команда core:install, которая позволяет устанавливать CMS Joomla через интерфейс командной строки. Эта команда может работать в двух режимах: Интерактивном режиме и неинтерактивном режиме.

Интерактивная установка CMS Joomla.

Чтобы выполнить новую установку Joomla в интерактивном режиме, мы просто запустим команду extension:install следующим образом:

php cli/joomla.php extension:install

Будет запущен режим установки по умолчанию, и вам будет предложено ввести необходимые настройки, как только все параметры будут введены и проверены, установка будет запущена и Joomla будет установлена.

как только все параметры будут введены и проверены, установка будет запущена и Joomla будет установлена

Неинтерактивная установка CMS Joomla.

Другой тип установки CMS Joomla - неинтерактивный режим. В этом режиме вам не будет предложено ввести параметры, поскольку все параметры будут указаны в файле, и команда выберет параметр, указывающий путь к файлу, из которого вы хотите загрузить параметры, это делается так:

php cli/joomla.php core:install --file=/path/to/config.json

Другой тип установки CMS Joomla - неинтерактивный режим

Примером содержимого файла config.json может быть:

{
  "language":"en-GB",
  "site_name":"Joomla",
  "admin_email":"email@example.com",
  "admin_user":"user",
  "admin_password":"password",
  "db_type":"mysql",
  "db_host":"localhost",
  "db_user":"root",
  "db_pass":"xcdxcx",
  "db_name":"jtest",
  "db_prefix":"efs0k_",
  "db_old":"remove",
  "helpurl":"https://joomla.org"
}

или в качестве примера config.ini

site_name="gsoc"
admin_email="user@example.com"
admin_user="user"
admin_password="secret"
db_type="mysql"
db_host="localhost"
db_user="root"
db_pass=""
db_name="joomla"
db_prefix="prefix_"

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

Команды на основе конфигурации.

Следующий набор команд, которые мы рассмотрим, предназначен для настройки и просмотра параметров конфигурации внутри установки Joomla:

Настройка конфигураций с помощью CLI Update в CMS Joomla 4.

Обновление командной строки (CLI Update) предоставляет команду для изменения значения параметра, существующего в конфигурации. С помощью команды config:get вы можете установить любой параметр конфигурации, который существует внутри configuration.php. Вот так можно использовать команду:

php cli/joomla.php config:set mailer=mail

Настройка конфигураций с помощью CLI Update в CMS Joomla 4

Вы даже можете добавить несколько пар параметров-значений для CMS Joomla, например:

php cli/joomla.php config:set mailer=mail fromname=Joomla! sitename="Joomla Site"

Это позволит установить сразу несколько параметров.

Вы даже можете добавить несколько пар параметров-значений для CMS Joomla

Получение конфигураций с помощью CLI Update из файла конфигурации CLI Update CMS Joomla 4.

Следующей командой в этой категории является команда config:get, как следует из названия, она получает значение параметра, существующего внутри configuration.php, если команде не задан аргумент, она отобразит все доступные параметры в табличной форме. Вот команда эта:

php cli/joomla.php config:get sitename

Это вернет значение для параметра sitename.

команда config:get, как следует из названия, она получает значение параметра, существующего внутри configuration.php

php cli/joomla.php config:get

Это вернет все значения для доступных параметров из файла конфигурации CLI Update CMS Joomla 4:

Это вернет все значения для доступных параметров из файла конфигурации CLI Update CMS Joomla 4

Получение сгруппированных конфигураций с помощью CLI Update из файла конфигурации CLI Update CMS Joomla 4.

CLI Update добавляет опцию в команду config:get, которая позволяет нам получить логически сгруппированные параметры, например, вы хотите просмотреть все параметры, связанные с вашей базой данных, или вы хотите просмотреть все параметры, связанные с электронной почтой. Для достижения этой цели обновление командной строки (CLI Update) предоставляет возможность указать группу параметров для отображения, вот как это сделать:

php cli/joomla.php config:get --group=mail

Для достижения этой цели обновление командной строки (CLI Update) предоставляет возможность указать группу параметров для отображения

Команда принимает параметр group и присваивает значение mail. CLI Update в настоящее время поддерживает групповые значения: mail, db и session.

Команды "Site down" и "Site up".

Как следует из названия, эти команды позволяют быстро перевести ваш веб-сайт на Joomla в автономный или онлайн-режим. Вот как использовать команды:

php cli/joomla.php site:up

Команды "Site down" и "Site up"

php cli/joomla.php site:down

Вторая команда переводит веб-сайт в автономный режим, в то время как первая команда переводит веб-сайт в онлайн-режим.

Вторая команда переводит веб-сайт в автономный режим, в то время как первая команда переводит веб-сайт в онлайн-режим.

Участие в CLI Update в качестве разработчика.

Добавление дополнительных команд.

Обновление CLI (CLI Update) поставляется с некоторыми командами, которые добавляются в зависимости от необходимости, наблюдаемой на данный момент. Однако обновление интерфейса командной строки позволяет легко добавлять другие команды, и именно для этого предназначен этот раздел. Видеоурок на английском языке: https://youtu.be/gcJJtTcPiTg

Вызов других команд в классах команд.

В случае, если команда, которую вы хотите написать для обновления командной строки (CLI Update), потребует, чтобы вы вызвали существующую команду внутри, это то смотри код ниже того, как это может быть достигнуто из другого класса команд:

<?php
class RunHelloCommand extends AbstractCommand {
    ...

    public function execute(): int {
        $command = $this->getApplication()->getCommand('say:hello');
        $code = $command->execute();

        if($code === 0) {
            // command ran successfully, do something
        }
    }

    ...
}

Здесь мы пытаемся вызвать команду say:hello, созданную в видео по ссылке выше.

Некоторые важные вещи, которые следует проверить.

Перевод с английского официальной документации Joomla 4:
https://docs.joomla.org/J4.x:CLI_Update

Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню