extremum CLI — это инструмент командной строки, который позволяет автоматизировать рутинные задачи, такие как конфигурирование вашего приложения после развертывания в новое окружение.
При помощи extremum CLI можно:
extremum CLI является основным интерфейсом администрирования платформы.
Установите необходимое ПО, если вы не сделали этого ранее
$ npm install -g extremum-cli
$ extremum
Usage: extremum [options] [command]
Extremum command-line interface
Options:
-v, --version output the version number
-h, --help display help for command
Commands:
add <app_name> add application
help [command] display help for command
Прежде всего необходимо выполнить аутентификацию в платформе
$ mycoolapp client login --url https://auth.app-0.<ваш-домен-extremum>/
Вы будете перенаправлены в браузер для ввода учетных данных
После успешного входа в систему в браузере откроется страница с текстом "Now you may close this page"
Для того, чтобы не указывать URL каждый раз в параметрах, создайте следующую переменную окружения:
EXTREMUM_AUTH_URL=https://auth.app-0.<ваш-домен-extremum>/
После аутентификации вам становятся доступны команды CLI, предназначенные для управления платформой и работы с данными
По умолчанию для работы с extremum.cli используется команда mycoolapp
. Вы можете изменить команду так, чтобы она соответствовала имени вашего приложения:
$ mycoolapp rename app guitarshop
Теперь можно обращаться с CLI по новому имени:
$ guitarshop
Usage: guitarshop [options] [command]
Extremum command-line interface
Options:
-v, --version output the version number
-h, --help display help for command
Commands:
app manage your apps
rename rename this command
client client configuration and login
iam identity and access management
signals send and receive signals
storage manage persistent data
functions manage serverless functions and packages
help [command] display help for command
Используйте команды mycoolapp help
и mycoolapp <раздел> [<подраздел>] help [<команда>]
для получения подсказок по использования CLI:
Помощь по разделу iam:
$ mycoolapp iam help
Usage: mycoolapp iam [options] [command]
identity and access management
Options:
-h, --help display help for command
Commands:
user manage users
roles manage user roles
rules manage access control rules
help [command] display help for command
Помощь по подразделу roles раздела iam:
$ mycoolapp iam roles help
Usage: mycoolapp iam roles [options] [command]
manage user roles
Options:
-h, --help display help for command
Commands:
create <role-name> <role-description> create a role
ls list roles
get <role-name> get role metadata
remove <role-name> remove a role
help [command] display help for command
Помощь по команде create подраздела roles раздела iam:
$ mycoolapp iam roles help create
Usage: mycoolapp iam roles create [options] <role-name> <role-description>
create a role
Options:
-h, --help display help for command
Создать псевдоним для CLI
синтаксис
$ mycoolapp rename app <new-name>
параметры
описание
Создает альтернативное имя для команды вызова CLI, которое в дальнейшем может быть использовано нарядуmycoolapp
. Возможно создание множественных альтернативных имен
Аутентификация в платформе
синтаксис
$ mycoolapp client login [options]
параметры
отсутствуют
опции
EXTREMUM_AUTH_URL
)описание
Открывает страницу аутентификации в браузере. После проверки введенных пользователем учетных данных записывает URL сервиса аутентификации, ID приложения и токен доступа в файл конфигурации. При дальнейшей работе пользоателя с CLI эти данные используются для доступа к API платформы
Инициализация приложения
синтаксис
$ mycoolapp app init <app-id>
параметры
описание
Создает в текущем каталоге подкаталог с именем, соападающим с именем команды, используемой для запуска CLI (например, при выполнении команды guitarshop app init 0
будет создан каталог с именем guitarshop
. В созданный каталог помещаются исходные тексты примера веб-фронтенда, которые могут послужить начальной точкой для дальнейшей реализации прикладной функциональности
Развертывание приложения
Данная команда не реализована в версии 3.0 платформы
Создать роль
синтаксис
$ mycoolapp iam roles create <role-name> <role-description>
параметры
описание
Создает роль пользователей с указанными именем и описанием
Удалить роль
синтаксис
$ mycoolapp iam roles remove <role-name>
параметры
описание
Удаляет роль пользователей с указанным именем
Получить информацию о роли
синтаксис
$ mycoolapp iam roles get <role-name>
параметры
описание
Выводит в терминал информацию о роли пользователей с указанным именем
Получить список ролей
синтаксис
$ mycoolapp iam roles ls
параметры
отсутствуют
описание
Выводит в терминал список ролей пользователей
Добавить правила управления доступом
синтаксис
$ mycoolapp iam rules create <new-rules>
параметры
описание
Добавляет новые правила управления доступом в конец списка правил
Загрузить правила управления доступом с заменой существующих правил новыми
синтаксис
$ mycoolapp iam rules replace <filename>
параметры
описание
Заменяет существующие правила управления доступом правилами из переданного файла
Получить действующие правила управления доступом
синтаксис
$ mycoolapp iam rules get
параметры
Отсутствуют
описание
Выводит в терминал действующие правила управления доступом в виде исходного кода языке описания правил доступа
Добавить пользователя
синтаксис
$ mycoolapp iam users create [options] <username>
параметры
опции
описание
Регистрирует нового пользователя платформы
Обновить данные пользователя
синтаксис
$ mycoolapp iam users update [options] <username>
параметры
опции
описание
Обновляет данные пользователя в соответствии с переданным патчем
Обновить данные пользователя
синтаксис
$ mycoolapp iam users remove <username>
параметры
описание
Удаляет пользователя из базы данных пользователей платформы
Получить данные пользователя
синтаксис
$ mycoolapp iam users get <username>
параметры
описание
Выводит в терминал информацию о пользователе
Получить список пользователей
синтаксис
$ mycoolapp iam users ls
параметры
отсутствуют
описание
Выводит в терминал информацию о пользователях платформы
Изменить пароль пользователя
синтаксис
$ mycoolapp iam users password [options] <username>
параметры
опции
описание
Устанавливает новый пароль для пользователя платформы
Добавить настройки аутентификации для клиентского приложения
синтаксис
$ mycoolapp iam clients create <filename>
параметры
описание
Регистрирует новое клиентское приложение и настраивает для него параметры аутентификации пользователей
Обновить настройки аутентификации для клиентского приложения
синтаксис
$ mycoolapp iam clients update [options] <client-id>
параметры
опции
описание
Обновляет настройки аутентификации в клиентском приложении в соответствии с переданным патчем
Удалить настройки аутентификации для клиентского приложения
синтаксис
$ mycoolapp iam clients remove <client-id>
параметры
описание
Удаляет настройки аутентификации для клиентского приложения из базы данных сервиса аутентификации
Получить настройки аутентификации для клиентского приложения
синтаксис
$ mycoolapp iam clients get <client-id>
параметры
описание
Выводит в терминал настройки аутентификации для клиентского приложения
Получить список клиентских приложений
синтаксис
$ mycoolapp iam clients ls
описание
Выводит в терминал настройки аутентификации для каждого из клиентских приложений
Отправляет сигнал
синтаксис
$ mycoolapp signals send <exchange-id>
параметры
опции
описание
Отправляет сигнал
Получить сигналы по подписке
синтаксис
$ mycoolapp signals poll <subscription-id>
параметры
описание
Выводит в терминал сигналы для указанной подписки, не удаляя их из очереди получателя
Создать подписку
синтаксис
$ mycoolapp signals subscribe [options] <exchange-id>
параметры
опции
описание
Создает подписку и выводит в терминал ее идентификатор
Отменить подписку
синтаксис
$ mycoolapp signals unsubscribe [options] <subscription-id>
параметры
описание
Отменяет подписку
Получить список точек обмена сигналами
синтаксис
$ mycoolapp signals ls-exchanges
параметры
отсутствуют
описание
Выводит в терминал список точек обмена сигналами
Получить список подписок
синтаксис
$ mycoolapp signals ls-subscriptions [options]
параметры
отсутствуют
опции
описание
Выводит в терминал список подписок. Если указана опция exchange, будут выведены подписки для указанной точки обмена, в противном случае будут выведены все подписки
Создать экземпляр сущности
синтаксис
$ mycoolapp storage entities create <collection>
параметры
опции
описание
Создает экземпляр сущности и выводит его идентификатор в терминал
Обновить экземпляр сущности
синтаксис
$ mycoolapp storage entities update [options] <instance-uuid>
параметры
опции
описание
Обновляет экземпляр сущности с указанным идентификатором в соответствии с патчем и выводит в терминал обновленное состояние
Удалить экземпляр сущности
синтаксис
$ mycoolapp storage entities remove <instance-uuid>
параметры
описание
Удаляет экземпляр сущности
Получить данные экземпляра сущности
синтаксис
$ mycoolapp storage entities get <instance-uuid>
параметры
описание
Выводит в терминал данные экземпляра сущности с указанным идентификатором
Получить содержимое коллекции экземпляров сущности
синтаксис
$ mycoolapp storage entities ls [options] <collection>
параметры
опции
описание
Выводит в терминал данные элементов коллекции
Связать два объекта
синтаксис
$ mycoolapp storage entities link [options] <subject> <object>
параметры
опции
описание
Создает RDF-связь с указанным предикатом между экземплярами сущностей или иными объектами
Удалить связь между объектами
синтаксис
$ mycoolapp storage entities unlink [options] <subject> <object>
параметры
опции
описание
Удаляет RDF-связь с указанным предикатом между экземплярами сущностей или иными объектами
Получить список связей для субъекта связи
синтаксис
$ mycoolapp storage entities ls-links [options] <subject>
параметры
опции
описание
Выводит в терминал список RDF-связей для заданного субъекта. Если указан предикат, выводятся только связи с этим предикатом
Выполнить GraphQL-запрос
синтаксис
$ mycoolapp storage entities graphql [options] <subject>
параметры
отсутствуют
опции
Следует указывать только одну из опций --file или --query при использовании данной команды
описание
Выполняет GraphQL-запрос (query или mutation) и выводит результат в терминал
Обновить конфигурацию модели сущности
синтаксис
$ mycoolapp storage models update [options] <model-name>
параметры
опции
описание
Обновляет конфигурацию модели сущности
В версии 3.0 платформы допустимо изменять только настройки модели (свойство
settings
), но не схему данных
Получить информацию о модели сущности
синтаксис
$ mycoolapp storage models get <model-name>
параметры
описание
Выводит в терминал информацию о модели сущности, включая JSON-схему и настройки
Получить список моделей сущностей
синтаксис
$ mycoolapp storage models ls [options]
параметры
отсутствуют
опции
описание
Выводит в терминал информацию о моделях сущности, включая JSON-схему и настройки. Если передана опция prefix, отбираются модели, имена которых начинаются с соответствующего префикса
Поместить данные в хранилище бинарных данных
синтаксис
$ mycoolapp storage binary put [options] <object-key> <file-path>
параметры
опции
описание
Загружает файл или содержимое каталога (в случае передачи опции recursive) в бинарное хранилище
Получить данные из хранилища бинарных данных
синтаксис
$ mycoolapp storage binary get <object-key>
параметры
описание
Выводит в поток стандартного вывода данные, хранящиеся по указанному ключу
Удалить данные из хранилища ресурсов
синтаксис
$ mycoolapp storage binary remove <object-key>
параметры
описание
Удаляет из хранилища ключ и соответствующие ему данные
Получить метаданные ключа в бинарном хранилище
синтаксис
$ mycoolapp storage binary describe <object-key>
параметры
описание
Выводит в терминал метаданные, соответствующие указанному ключу
Получить список ключей бинарного хранилища
синтаксис
$ mycoolapp storage binary ls <prefix>
параметры
опции
описание
Выводит в терминал список ключей бинарного хранилища для указанного префикса
Создать предподписанную форму для загрузки данных в хранилище бинарных данных
синтаксис
$ mycoolapp storage binary post-form <object-key>
параметры
описание
Выводит в терминал данные для формы однократной загрузки объекта в S3-совместимое бинарное хранилище по указанному ключу
Сгенерировать URL для временного доступа к бинарному хранилищу
синтаксис
$ mycoolapp storage binary presign-url [options] <object-key>
параметры
опции
описание
Генерирует и выводит в терминал временную ссылку, с использованием которой можно выполнять указанные операции над ограниченным набором ключей в течение ограниченного периода времени
Создать бакет (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets create <bucket-name>
параметры
описание
Создает бакет в бинарном хранилище. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Удалить бакет (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets remove <bucket-name>
параметры
описание
Удаляет бакет в бинарном хранилище. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Получить метаданные бакета (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets describe <bucket-name>
параметры
описание
Выводит в терминал метаданные бакета в бинарном хранилище. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Получить список бакетов (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets ls
параметры
отсутсвуют
описание
Выводит в терминал список бакетов бинарного хранилища. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Создать триггер бинарного хранилища (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets create-trigger [options] <bucket-name>
параметры
опции
описание
Создает триггер бинарного хранилища для указанных события и префикса ключа и назначает его обработчиком указанную функцию
Удалить триггер бинарного хранилища (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets remove-trigger [options] <bucket-name>
параметры
опции
описание
Удаляет триггер бинарного хранилища для указанных префикса ключа и функции-обработчика
Смонтировать бакет на перфикс ключа бинарного хранилища (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets mount <prefix> <bucket>
параметры
описание
Создает точку монтирования, отображающую ключи бинарного хранилища с перфиксом prefix на бакет bucket. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Удалить точку монтирования для бакета (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets unmount <bucket>
параметры
описание
Удаляет точку монтирования, отображающую ключи бинарного хранилища на бакет bucket. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Получить список точек монтирования (для бинарных хранилищ, поддерживающих концепцию бакета)
синтаксис
$ mycoolapp storage buckets ls-mount
параметры
отсутствуют
описание
Отображает список точек монтирования, отображающих ключи бинарного хранилища на бакеты физических бинарных хранили. Не поддерживается для хранилищ, в которых отсутствует концепция бакета
Создать пакетное задание по обработке данных в бинарном хранилище
синтаксис
$ mycoolapp storage jobs create
параметры
отсутствуют
опции
описание
Создает и добавляет в очередь на исполнение задание по массовой обработке данных в бинарном хранилище. Выводит в терминал идентификатор созданного задания
Получить информацию о задании по массовой обработке данных в бинарном хранилище
синтаксис
$ mycoolapp storage jobs describe <job-id>
параметры
описание
Выводит в терминал идентификатор информацию о задании
Получить список заданий по массовой обработке данных в бинарном хранилище
синтаксис
$ mycoolapp storage jobs ls
параметры
отсутствуют
описание
Выводит в терминал список запланированных, активных и завершенных заданий по массовой обработке данных в бинарном хранилище
Отменить задание по массовой обработке данных в бинарном хранилище
синтаксис
$ mycoolapp storage jobs cancel <job-id>
параметры
описание
Отменяет выполнение запланированного или активного задания по массовой обработке данных в бинарном хранилище
Создать функцию или пакет функций
синтаксис
$ mycoolapp functions create [options] <function-name>
параметры
опции
описание
Создает и развертывает в среде исполнения функцию или пакет функций, делая ее доступной для вызова и/или назначения обработчиком триггера или сигналов
Создать новую версию функции или пакета функций
синтаксис
$ mycoolapp functions create [options] <function-name>
параметры
опции
описание
Создает и развертывает в среде исполнения новую версию существующей функции или пакета функций, делая ее доступной для вызова и/или назначения обработчиком триггера или сигналов
Удалить функцию или пакет функций
синтаксис
$ mycoolapp functions remove [options] <function-name>
параметры
опции
описание
Удаляет функцию или пакет функций или конкретную версию функции/пакета. После удаления функция становится недоступной для вызова и/или назначения обработчиком триггера или сигналов
Получить информацию о функции или пакете функций
синтаксис
$ mycoolapp functions describe <function-name>
параметры
описание
Выводит в терминал информацию о функции или пакете функций
Получить список функций и пакетов функций
синтаксис
$ mycoolapp functions ls
параметры
отсутствуют
описание
Выводит в терминал список функций или пакетов функций, развернутых в платформе
Вызвать функцию
синтаксис
$ mycoolapp functions call [options] <function-name>
параметры
опции
описание
Вызывает функцию и выводит в терминал ее возвращаемое значение
Получить архив с кодом функции или пакета функций
Данная команда не реализована в версии 3.0 платформы
синтаксис
$ mycoolapp functions get-code [options] <function-name>
параметры
опции
описание
Выводит в поток стандартного вывода содержимое zip-архива с кодом функции или пакета функций в том виде, в котором он был передан при создании функции. Возвращает ошибку в случае, если при создании функции/пакета использовался образ Docker