an abstraction on top of the minio package to make basic functions easier
Project description
minio_handler
This is an abstraction on the Minio package to make basic usage of the Minio package a little less cumbersome
usage
Init the handler
my_minio_server = Minio_Handler("127.0.0.1:9000", "minioadmin", "minioadmin", False)
(class) Minio_Handler(host: str, access_key: str, secret_key: str, secure: bool = False)
Arguments
| Name | Description | Example | Type |
|---|---|---|---|
| host | Address and Port to your minio instance | 127.0.0.1:9000 | str |
| access_key | username to access minio instance | minioadmin | str |
| access_key | password to access minio instance | minioadmin | str |
| secure | use tls, defaults to false | True/False | bool |
Method: bucket
(method) bucket(bucket_name: str, action: str) -> bool
Arguments
| Name | Description | Example | Type |
|---|---|---|---|
| bucket_name | Name of the minio bucket to preform action on | my-bucket | str |
| action | Action to preform on bucket | check/create/delete/list | str |
check a bucket
my_minio_server.bucket(bucket_name="my-bucket", action="check")
return a bool
create a bucket
my_minio_server.bucket(bucket_name="my-bucket", action="create")
return a bool
delete a bucket
my_minio_server.bucket(bucket_name="my-bucket", action="delete")
return a bool
delete a bucket
my_minio_server.bucket(bucket_name="none", action="list")
return a list[dict{"name": str, "creation_date": str}]
Method: object
(method) object(bucket_name: str, object_name: str, action: str, data: bytes = bytes("none", encoding="utf-8")) -> (str | bool)
Arguments
| Name | Description | Example | Type |
|---|---|---|---|
| bucket_name | Name of the minio bucket to preform an object action in | my-bucket | str |
| object_name | Name of the minio object_name to preform an action on | my-object | str |
| action | Action to preform on bucket | check/create/delete/list | str |
| data | Optional argument only used with create actions | bytes |
put object
my_minio_server.object("my-bucket", "test.txt", "put", data=bytes("test data", encoding='utf-8')
return a bool
delete object
my_minio_server.object("my-bucket", "test.txt", "delete")
return a bool
get object
my_minio_server.object("my-bucket", "test.txt", "get")
return a string
list objects
my_minio_server.object("my-bucket", "none", "list")
return a list
Unit Test
Requirements
- Docker runtime
- Docker cli tool
Run test
file: test_Minio_Handler_unittest.py
cd ./minio_handler/minio_handler
python test_Minio_Handler_unittest.py
Output
----------------------------------------------------------------------
Starting container minio-handler-test
e2c2ec3b4fe1924500b253db83238b1a33cd9a8f69516af32bab64859312c037
----------------------------------------------------------------------
Waiting 5 seconds for minio-handler-test container to start
......
----------------------------------------------------------------------
Ran 6 tests in 0.117s
OK
----------------------------------------------------------------------
Stopping and Removing minio-handler-test container
minio-handler-test
minio-handler-test
```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file minio_handler-0.0.7.tar.gz.
File metadata
- Download URL: minio_handler-0.0.7.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e78fbe4de4c93ae48d0707c2df600bb7eaf6e5a304e6551e0678f8e46aa93cbb
|
|
| MD5 |
f51786a55cf1d57313647e8b8e3ae6e7
|
|
| BLAKE2b-256 |
2647550f60781ea663521f25d66933c5eb988670658a2d39fc7c686e2e95070e
|