Быстрый старт: 5 шагов к первому проекту
Это пошаговое руководство поможет вам создать и запустить первый проект Runium.
Вы познакомитесь с некоторыми базовыми концепциями Runium:
- создание проекта с задачами
- настройка зависимостей между задачами
- использование обработчиков состояния задачи
- сохранение проекта в профиль
Шаг 1: Установка
Цель
Установить Runium и убедиться, что он работает.
Установите Runium глобально
npm install -g @runium/cliПроверьте установку
runium --versionРезультат
Вы увидите номер версии, например runium 2026.2.0. Это означает, что Runium установлен корректно.
Шаг 2: Создание первого проекта
Что хотим сделать
Хотим открыть новое окно браузера с любимым сайтом.
В этом примере мы будем использовать браузер Firefox и команду firefox для запуска.
Поклонникам Google Chrome можно использовать команду google-chrome.
Создайте директорию для проекта
mkdir my-first-runium && cd my-first-runiumСоздайте файл project.json
{
"id": "my-first-project",
"tasks": [
{
"id": "browser",
"options": {
"command": "firefox",
"arguments": [
"https://ya.ru",
"--new-window"
]
}
}
]
}Что здесь происходит
- добавили проект
my-first-project - добавили задачу
browser, которая открывает новое окно браузера с указанным сайтом
Запустите проект
runium project start -f project.jsonРезультат
Проект запустится и откроет браузер с указанным сайтом.
Для завершения проекта необходимо нажать Ctrl+C в терминале.
Шаг 3: Зависимости между задачами
Цель
Создать две задачи, где вторая зависит от завершения первой.
Что хотим сделать
Хотим открыть новое окно браузера с любимым сайтом. После закрытия этого окна, запустить новое окно браузера с другим сайтом.
Обновите project.json
{
"id": "my-first-project",
"tasks": [
{
"id": "browser",
"options": {
"command": "firefox",
"arguments": [
"https://ya.ru",
"--new-window"
]
}
},
{
"id": "browser2",
"options": {
"command": "firefox",
"arguments": [
"https://google.com",
"--new-window"
]
},
"dependencies": [
{
"taskId": "browser",
"condition": {
"status": "completed"
}
}
]
}
]
}Что здесь происходит
- добавили новую задачу
browser2, которая открывает новое окно браузера с другим сайтом - добавили зависимость
browser2отbrowser(запускать только после завершенияbrowser)
Запустите проект
runium project start -f project.jsonРезультат
Проект запустится и откроет браузер с указанным сайтом.
Закройте окно браузера. После этого запустится новое окно с другим сайтом.
Для завершения проекта необходимо нажать Ctrl+C в терминале.
Шаг 4: Обработчики состояния задачи
Цель
Научиться использовать обработчики состояния задачи.
Что хотим сделать
Хотим автоматически завершить проект после закрытия второго окна браузера. После этого не нужно будет нажимать Ctrl+C в терминале.
Обновите project.json
{
"id": "my-first-project",
"tasks": [
{
"id": "browser",
"options": {
"command": "firefox",
"arguments": [
"https://ya.ru",
"--new-window"
]
}
},
{
"id": "browser2",
"options": {
"command": "firefox",
"arguments": [
"https://google.com",
"--new-window"
]
},
"dependencies": [
{
"taskId": "browser",
"condition": {
"status": "completed"
}
}
],
"handlers": [
{
"condition": {
"status": "completed"
},
"action": {
"type": "stop-project"
}
}
]
}
]
}Что здесь происходит
- добавили обработчик состояния задачи
browser2, который завершает проект после завершения задачи
Запустите проект
runium project start -f project.jsonРезультат
Проект запустится и откроет браузер с указанным сайтом.
Закройте окно браузера. После этого запустится новое окно с другим сайтом.
Закройте новое окно браузера. Проект автоматически завершится.
Шаг 5: Сохранение проекта в профиль
Цель
Добавить проект в профиль, чтобы запускать его по короткому имени без указания пути к файлу.
Добавьте проект в профиль
runium project add project.json my-firstТеперь можно запускать короткой командой
runium project start my-firstПросмотр списка проектов
runium project listРезультат
Проект сохранён под псевдонимом my-first. Теперь не нужно каждый раз указывать путь к файлу конфигурации.
Что дальше?
- Что такое проект? - подробнее о структуре проекта
- Задачи - все возможности настройки задач
- Зависимости - сложные сценарии зависимостей
- Обработчики - реакция на изменение состояния
- FAQ и решение проблем - ответы на часто задаваемые вопросы и решения проблем
