infobase create
Создайте базу по настройкам проекта.
Примеры ответов; пути и длительность зависят от запуска.
infobase create 
v8-runner infobase create
Используйте, когда базу нужно создать по настройкам проекта. Для EDT команда также подготавливает рабочую область. Смотрите успешные результаты и ошибки и отказы.
infobase create --dry-run 
v8-runner infobase create --dry-run
Используйте перед созданием, чтобы проверить настройки и доступность исполнителя. Платформа не запускается; база и выходные файлы не меняются. Результат — подготовленный план; отказ описан в подготовке команды.
Исполнение
Сначала читает настройки проекта, проверяет цель, исходники и доступность исполнителя, получает доступ к workPath. При раннем отказе шаги создания и подготовки рабочей области не начинаются. С --dry-run дальнейшие шаги только планируются.
- Файловая
- Создаёт базу через
ibcmd, сразу с конфигурацией из исходников. Если файловая база уже существует, шаг создания пропускается (74). - Кластер
- Конфигуратор одной командой регистрирует базу в кластере и создаёт базу данных в СУБД (73). В кластере под управлением раннера — так же, после
cluster start. - Автономный
- Для вашего сервера отказывает в создании: базу создают через
ibcmdв автономном режиме на машине сервера, до запускаibsrv(75). Для сервера под управлением раннера создаёт базу сам.
Для формата EDT после шага создания команда подготавливает рабочую область. Оба шага имеют отдельные статусы; подготовка EDT выполняется и после ошибки создания базы. Если рабочая область не нужна, этот шаг пропускается.
Кластер под управлением раннера
Для базы, объявленной cluster.managed, команда регистрирует базу в кластере, который поднял раннер, и создаёт её данные в объявленной СУБД — так же, как в любом кластере (73). Кластер должен быть поднят: если нет, команда отказывает и называет cluster start следующим шагом. При dbms.managed команда сначала проверяет, нет ли уже БД с именем dbms.name: если есть, отказывает и называет её, потому что платформа молча взяла бы чужие данные. Базу, которую кластер уже знает, команда не создаёт и отвечает, что она есть. После создания рабочие команды открывают базу; до него они отказывают и называют infobase create.
Автономный сервер под управлением раннера
Для базы, объявленной standalone.managed, команда создаёт файловую базу в db-path так, как этого требует платформа, — до запуска сервера (75): ibcmd infobase create с конфигурацией из исходников, теми же исполнителями, что у файловой базы. Если сервер уже поднят раннером, команда отказывает: базу под работающим сервером не создают. Следующий шаг после создания — standalone start.
Если база лежит в СУБД, команда создаёт её через ibcmd infobase create --create-database, а ibcmd server config init не нужен. СУБД должна работать: при dbms.managed команда иначе отказывает и называет dbms start. У PostgreSQL раннера существующая БД с именем dbms.name — отказ с её именем; у вашей СУБД так отвечает сам ibcmd, если в БД уже есть база. --from, создание копии другой базы, для такой базы отказывает: копию из образа кладут infobase restore через работающий сервер.
Созданную базу команда записывает в память, поэтому первый push после неё идёт как обычный.
Успешные результаты
Варианты ответа показывают выполненные, пропущенные и запланированные шаги. Причины ошибок и поля ответа описаны в словаре ответов.
База создана
После создания все необходимые шаги выполнены. База создана; рабочая область EDT подготовлена или её подготовка пропущена, если она не нужна. Фрагмент текстового ответа:
Init completed successfully
База уже существует
Для создания файловой базы, которая уже существует, шаг создания пропускается: существующая база не пересоздаётся. Команда успешна; ориентируйтесь на статусы шагов, а не только на provider_dispatched.
○ infobase: create - file infobase already exists: .local/db
Init completed successfully
План создания подготовлен
После вызова с --dry-run нужные шаги имеют статус planned, ненужные — skipped. База и рабочая область не создаются; успех подтверждает подготовку плана. Фрагмент текстового ответа:
infobase: create - would create server infobase Srvr=srv:1541;Ref=demo via /opt/1cv8/bin/1cv8
Ошибки и отказы
Подготовка команды отклонена
При создании или превью настройки проекта не прочитаны либо workPath занят. Предметные шаги не начались; база и рабочая область не менялись. invalid_argument (настройки, выход CLI 2) или workspace_busy (каталог занят, выход CLI 3). Исправьте указанную настройку либо дождитесь завершения владельца каталога. Пример занятого рабочего каталога:
ERROR: workspace busy: workPath is locked by another command
Автономная цель не поддерживает создание
Команда создания отказывает для автономной цели, сервер которой поднимаете вы. База и рабочая область не создаются. target, выход CLI 2. Базу подготавливают на машине сервера до запуска ibsrv. Тот же отказ применим к превью.
ERROR: capability unavailable: infobase create is not available for a standalone target
Шаги создания и подготовки EDT завершились ошибкой
После вызова создания один или оба необходимых шага имеют статус failed: утилита завершилась ошибкой, исполнитель недоступен, маркер базы не появился или произошёл сбой EDT. platform_failure (сбой утилиты) или invalid_output (нет ожидаемого результата), выход CLI 4; при отсутствии исполнителя — environment_unavailable, выход CLI 2. Здесь оба шага не завершены; статусы не обещают удаления созданных файлов или общего отката. Проверьте журнал и оставшиеся файлы перед повтором.
✗ infobase: create - infobase creation failed
✗ edt_workspace: import - EDT import failed
Init failed
ERROR: platform error: infobase creation failed
База создана, подготовка EDT не удалась
После создания шаг базы выполнен, а шаг EDT завершился ошибкой. platform_failure, выход CLI 4. Проверьте журнал EDT и рабочую область перед повтором. База уже создана; ошибка EDT не означает, что базы нет. Оба исхода сохранены в ответе, общий откат не обещается.
✓ infobase: create - ok
✗ edt_workspace: import - EDT import failed
Init failed
ERROR: platform error: EDT import failed
Создание базы завершилось ошибкой, EDT подготовлен
После создания подготовка EDT выполнена, хотя шаг создания базы завершился ошибкой. platform_failure, выход CLI 4. Проверьте состояние базы и журнал создания перед повтором. Рабочая область уже подготовлена; ответ сохраняет оба исхода. Статус failed не обещает удаления файлов незавершённого создания.
✗ infobase: create - infobase creation failed
✓ edt_workspace: import - EDT workspace initialized
Init failed
ERROR: platform error: infobase creation failed
Выполнение прервано
При отмене или таймауте создания ответ сохраняет фактические статусы шагов. cancelled или timed_out, выход CLI 4. В примере база уже создана, но подготовка EDT прервана по таймауту. Выполненный шаг не отменяется самим ответом; состояние незавершённой рабочей области нужно проверить.
✓ infobase: create - ok
✗ edt_workspace: import - EDT workspace import timed out
Init failed
ERROR: timed out: EDT workspace import timed out