Работа с версиями конфигураций

Версия конфигурации описывается в файле формата JSON.

Пример версии конфигурации в JSON

Пример описания версии конфигурации для формулы по установке веб-браузера «Яндекс Браузер»:

{
    "displayName": "Яндекс Браузер",
    "description": "Яндекс Браузер — безопасный и быстрый браузер с голосовым помощником.",
    "fullDescription": "Яндекс Браузер — безопасный и быстрый браузер с голосовым помощником.",
    "type": "application",
    "categories": ["network"],
    "icon": {
        "resourcePath": "specifications/icons/yandex-browser-logo.svg",
        "contentType": "image/svg+xml"
    },
    "images": [
        {
            "resourcePath": "specifications/images/yandex-browser-screen1.webp",
            "contentType": "image/webp"
        }
    ],
    "version": {
        "displayName": "23.9.1.1023",
        "formulaName": "yandex-browser",
        "releaseDate": "2023-11-14",
        "softwareRequirements": "example",
        "pillarProperty": {
            "lookup": {
                "pkg": {
                    "version": "23.9.1.1023-1"
                }
            }
        }
    },
    "availableInAppStore": true
}

Описание атрибутов:

  • displayName — имя, которое отображается в пользовательском интерфейсе;

  • description — краткое описание приложения, отображаемое в списках или карточках;

  • fullDescription — развернутое описание приложения, отображаемое на странице деталей;

  • type — тип объекта;

  • categories — массив категорий, к которым относится приложение;

  • icon — объект с метаданными значка:

    • resourcePath — путь к файлу значка относительно репозитория;

    • contentType — MIME-тип значка;

  • images — массив скриншотов приложения; каждый элемент содержит:

    • resourcePath — путь к изображению относительно репозитория;

    • contentType — MIME-тип изображения;

  • version — объект с данными конкретной версии:

    • displayName — версия ПО, отображаемая пользователю;

    • formulaName — имя формулы SaltStack, используемой для установки этой версии;

    • releaseDate — дата выпуска версии в формате YYYY-MM-DD;

    • softwareRequirements — требования к системе (например, ОС, архитектура, зависимости); если не указано — установка считается возможной на любой совместимой системе;

    • pillarProperty — параметры, передаваемые в pillar при установке;

      • lookup — корневой ключ для пользовательских параметров формулы;

        • pkg.version — версия пакета, которую необходимо установить;

  • availableInAppStore — флаг, определяющий доступность приложения в интерфейсе «Магазин приложений»: true — отображается для установки, false — скрыто.

Особенности работы с версиями конфигураций

Работа с версиями конфигурации выполняется через пользовательский интерфейс «Кабинет Администратора» (см. подробнее в разделе «Конфигурации»).

При работе с версиями конфигураций следует учитывать следующие особенности:

  • если при создании или редактировании версии простой конфигурации в поле данных pillar введены какие-либо параметры, система автоматически добавляет два корневых ключа: имя формулы и идентификатор версии (атрибут version_id); для пакетов конфигураций идентификатор версии добавляется в pillar для каждого шага;

  • если в pillar не задано ни одного параметра, система не вносит никаких изменений; в этом случае pillar сохраняется в исходном состоянии, без добавления имени формулы или идентификатора версии.