CodeFlowAIСправочник нод
S3/MINIO
| Параметр | Значение |
|---|---|
| Версия | 1.0.0 |
| Категория | storage |
| Пакет | caia_core |
| Статус | активная |
| Теги | S3, Storage, Minio |
Описание: Нода для взаимодействия с S3-совместимым хранилищем (например, MinIO). Позволяет выполнять основные операции над файлами, папками и бакетами: загрузку, скачивание, удаление файлов, создание и удаление бакетов, а также проверку и листинг содержимого.
Параметры конструктора
- credentials:
object(обяз.).- endpoint:
string(обяз.). - access_key:
string(обяз.). - secret_key:
string(обяз.). - secure:
Union[string, null].
- endpoint:
- method:
string (enum: file_upload, file_download, file_delete, file_exists, file_list_objects, bucket_create, bucket_delete, bucket_exists, bucket_list, folder_delete, folder_exists, folder_list_folders)(обяз.).
Входы
Входы метода file_upload
- bucket_name:
string(обяз.). Название бакета. - file_path:
string(обяз.). Путь к локальному файлу. - s3_filepath:
string(обяз.). Имя файла/путь в хранилище.
Входы метода file_download
- bucket_name:
string(обяз.). Название бакета. - file_path:
string(обяз.). Путь, куда сохранить файл локально. - s3_filepath:
string(обяз.). Путь/имя файла в хранилище.
Входы метода file_delete
- bucket_name:
string(обяз.). Название бакета. - s3_filepaths:
Union[array[string], string](обяз.). Список или строка с путём/именем файла(ов) в хранилище.
Входы метода file_exists
- bucket_name:
string(обяз.). Название бакета. - s3_filepath:
string(обяз.). Путь/имя файла в хранилище.
Входы метода file_list_objects
- bucket_name:
string(обяз.). Название бакета. - prefix:
string. Папка/префикс поиска (опционально). - recursive:
boolean. Искать рекурсивно (по всем подпапкам, по умолчанию False).
Входы метода bucket_create
- bucket_name:
string(обяз.). Название бакета. - location:
string. Локация бакета (опционально). - object_lock:
boolean. Включить блокировку объектов (опционально).
Входы метода bucket_delete
- bucket_name:
string(обяз.). Название бакета.
Входы метода bucket_exists
- bucket_name:
string(обяз.). Название бакета.
Входы метода bucket_list
- result:
object. Получить список всех бакетов в хранилище.- Структура объекта не детализирована в схеме.
Входы метода folder_delete
- bucket_name:
string(обяз.). Название бакета. - folder_path:
string(обяз.). Путь к папке (например, "images/").
Входы метода folder_exists
- bucket_name:
string(обяз.). Название бакета. - folder_path:
string(обяз.). Путь к папке (например, "images/").
Входы метода folder_list_folders
- bucket_name:
string(обяз.). Название бакета. - folder_path:
string(обяз.). Путь к родительской папке (например, "images/").
Выходы
Выходы метода file_upload
- status:
boolean. - s3_filepath:
string. - error:
Union[string, null].
Выходы метода file_download
- status:
boolean. - file_path:
string.
Выходы метода file_delete
- status:
boolean. - error:
Union[string, null].
Выходы метода file_exists
- status:
boolean. - error:
Union[string, null].
Выходы метода file_list_objects
- status:
boolean. - error:
Union[string, null].
Выходы метода bucket_create
- bucket_name:
string.
Выходы метода bucket_delete
- status:
boolean. - error:
Union[string, null].
Выходы метода bucket_exists
- status:
boolean. - error:
Union[string, null].
Выходы метода bucket_list
- items:
array[string].
Выходы метода folder_delete
- status:
boolean. - error:
Union[string, null].
Выходы метода folder_exists
- status:
boolean. - error:
Union[string, null].
Выходы метода folder_list_folders
- items:
array[string].
Примеры вызова через ранер
Пример 1: Загрузка локального файла в выбранный бакет хранилища.
Конфигурация ноды:
{
"uuid": "s3/minio_file_upload_example",
"name": "S3/MINIO - file_upload",
"type": "S3/MINIO",
"parameters": {
"credentials": {
"endpoint": "example_value",
"access_key": "example_value",
"secret_key": "example_value"
},
"method": "file_upload"
},
"inputs": {
"bucket_name": "example_value",
"file_path": "example_value",
"s3_filepath": "example_value"
},
"next": [
"next_node_id"
]
}Ожидаемый результат:
{
"status": true,
"s3_filepath": "example_value",
"error": "example_value"
}Пример 2: Скачивание файла из хранилища в локальное хранилище.
Конфигурация ноды:
{
"uuid": "s3/minio_file_download_example",
"name": "S3/MINIO - file_download",
"type": "S3/MINIO",
"parameters": {
"credentials": {
"endpoint": "example_value",
"access_key": "example_value",
"secret_key": "example_value"
},
"method": "file_upload"
},
"inputs": {
"bucket_name": "example_value",
"file_path": "example_value",
"s3_filepath": "example_value"
},
"next": [
"next_node_id"
]
}Ожидаемый результат:
{
"status": true,
"file_path": "example_value"
}Пример 3: Удаление одного или нескольких файлов из выбранного бакета.
Конфигурация ноды:
{
"uuid": "s3/minio_file_delete_example",
"name": "S3/MINIO - file_delete",
"type": "S3/MINIO",
"parameters": {
"credentials": {
"endpoint": "example_value",
"access_key": "example_value",
"secret_key": "example_value"
},
"method": "file_upload"
},
"inputs": {
"bucket_name": "example_value",
"s3_filepaths": [
"item1",
"item2"
]
},
"next": [
"next_node_id"
]
}Ожидаемый результат:
{
"status": true,
"error": "example_value"
}Информация о файле
Путь: s3\S3Node.yaml