47 lines
2.6 KiB
Markdown
47 lines
2.6 KiB
Markdown
# calista-components
|
||
|
||
Данный репозиторий является листингов компонентом операционной системы Calista. Он используется для работы менеджеров
|
||
компонентов Calista.
|
||
|
||
В этом репозитории существует два файла - README.md, то есть этот файл, а также файл components.json, который описывает
|
||
доступные компоненты, их версии, зависимости и ссылки на репозитории этих компонентов.
|
||
|
||
Формат файла components.json
|
||
|
||
```json
|
||
|
||
{
|
||
"version": "v1",
|
||
"components": [
|
||
{
|
||
"id": "уникальный-идентификатор",
|
||
"name": "Человекочитаемое название",
|
||
"desc": "Описание",
|
||
"repo": "ссылка на git-репозиторий",
|
||
"latest": "тег-последней-версии",
|
||
"requires": ["зависимости"],
|
||
"tags": {
|
||
"тег-версии": "хэш-коммита"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
|
||
```
|
||
|
||
Описание ключей
|
||
|
||
- version - Версия спецификации описания файла components.json - обязательный
|
||
- components - Массив объектов описания компонентов (далее component) - обязательный
|
||
- component->id - Идентификатор компонента, без пробелов - обязательный
|
||
- component->name - Имя компонента - обязательный
|
||
- component->desc - Описание компонента - необязательный
|
||
- component->repo - Ссылка на git репозиторий - обязательный
|
||
- component->latest - Тег последней версии - обязательный
|
||
- component->requires - Массив идентификаторов зависимых компонентов с указанием версии в формате "имя компонента:версия" - необязательный
|
||
- component->tags - Объект указывающий на коммиты версий компонентов - обязательный
|
||
- component->tags->тег-версии - Хеш коммита - обязательный для тега latest, остальные не обязательны
|
||
|
||
По необходимости ключи могут дополняться, но в данный момент я вижу что этих ключей хватит надолго
|
||
|