Интеграция с S3-хранилищем
Для хранения файлов скринов, передаваемых роботами вместе с логами (RobotLogs), и архивов дистрибутивов роботов и агентов (WebApi) имеется возможность сконфигурировать службы RobotLogs и WebApi для использования S3-хранилища (Minio).
В службе RobotLogs в секцию ScreenFileUpload требуется добавить параметры:

В службе WebApi требуется добавить секцию FileStore:

Описание параметров подключения к S3 в ScreenFileUpload/FileStore
| №п/п | Наименование параметра | Назначение | Примечание |
|---|---|---|---|
| 1. | StoreType/Type | 0 – файловое хранилище,1 – S3 (minio) | |
| 2. | Minio.Endpoint | Адрес конечной точки minio | |
| 3. | Minio.AccessKey | Параметры доступа. Настраиваются администратором minio (см. рисунок ниже) | |
| 4. | Minio.SecretKey | Должен быть зашифрован утилитой шифрования | |
| 5. | Minio.SSL | Устанавливается в true, если minio настроен на использование https | |
| 6. | Minio.Folder | Путь к директории внутри бакета | Необязательный параметр. По умолчанию: ”/” (корневая директория) |
Параметры подключения к minio:

Настройка общего бакета для нескольких служб
Начиная с версии Оркестратора 1.25.9, службы WebApi и NuGet поддерживают использование выделенных директорий внутри общего бакета Minio. Это позволяет централизованно управлять хранилищем и упростить его администрирование.
Конфигурация для WebApi
В службе WebApi в секции FileStore добавлен параметр Folder для указания целевой директории в бакете:
"FileStore": {
"Type": 1,
"Minio": {
"Endpoint": "localhost:9000",
"AccessKey": "your-access-key",
"SecretKey": "encrypted-secret-key",
"SSL": false,
"Bucket": "common-bucket",
"Folder": "webapi" // <- Новый параметр с версии 1.25.9
}
}Конфигурация для NuGet
В службе NuGet добавлена аналогичная секция для работы с общим бакетом:
"Storage": {
"Type": "Minio"
},
"Minio": {
"Endpoint": "localhost:9000",
"AccessKey": "d8J5XJvQHM5iGteIlCPv",
"SecretKey": "0WbI3qwqpBGFMVCvszoq0a2KGzAz8kJJWXQEUkOu",
"Bucket": "common-bucket",
"Folder": "nuget",
"SSL": false
}Выбор типа хранилища:
В секции Storage нужно выбрать значение Type: либо Minio, либо FileSystem.
Если выбран FileSystem:
- В секции
FileSystemнужно указать путь хранения в файловой системе - Секция
Minioпри этом игнорируется
"Storage": {
"Type": "FileSystem"
},
"FileSystem": {
"Path": "C:\\some\\path"
}Если выбран Minio:
- В секции
Minioнужно присвоить соответствующие значения параметрам - Секция
FileSystemбудет проигнорирована
"Storage": {
"Type": "Minio" // Minio, FileSystem
},
"Minio": {
"Endpoint": "localhost:9000",
"AccessKey": "d8J5XJvQHM5iGteIlCPv",
"SecretKey": "0WbI3qwqpBGFMVCvszoq0a2KGzAz8kJJWXQEUkOu",
"Bucket": "nuget",
"Folder": "/",
"SSL": false
},
"FileSystem": {
"Path": ""
}Для использования общего бакета с Оркестратором нужно явно указать оба свойства:
"Bucket": "common-bucket",
"Folder": "nuget"Примечание по параметрам Bucket и Folder:
В NuGet параметры Bucket и Folder опциональны, т.к. для них предусмотрены значения по умолчанию:
"Bucket": "nuget"- для хранения используется индивидуальный бакет"Folder": ""- данные будут записываться в корневой каталог бакета*
Пустая строка "" и слэш "/" работают одинаково - оба варианта означают корневую директорию бакета