from minioClientPool import MinioClientPool from threadSafeMinioClient import ThreadSafeMinioClient # Example Usage if __name__ == "__main__": # Upload a file bucket_name = 'test' test_bucket_name="test-xzy" pool = MinioClientPool('192.168.50.234:6900', '6VkF2ul6X7udr7RLsG2W', 'jtBuqZ80biRWQf6sbwzDQJwHtEBicPjkZBtvjTrA') ts_minio_client = ThreadSafeMinioClient(pool) # Check if a bucket exists exists = ts_minio_client.bucket_exists(test_bucket_name) print("Bucket exists:", exists) # Create a new bucket if it doesn't exist if not exists: ts_minio_client.create_bucket(test_bucket_name) print("Bucket create successfully:",test_bucket_name) else : ts_minio_client.delete_bucket(test_bucket_name) print("Bucket delete successfully:",test_bucket_name) # List all buckets buckets = ts_minio_client.get_buckets() print("Buckets:", [bucket.name for bucket in buckets]) # Delete a bucket # Make sure to handle this carefully, as it requires the bucket to be empty ts_minio_client.delete_bucket('your-old-bucket') object_name = 'new-example-object.txt' file_path = 'data/upload/path-to-your-local-file.txt' # Path to the local file to upload upload_result = ts_minio_client.upload_file(test_bucket_name, object_name, file_path) print(f"File uploaded successfully: {upload_result}") # List of files to upload (object_name, file_path) files_to_upload = [ ('new-example-object1.txt', r'data/upload/path-to-your-local-file1.txt'), ('new-example-object2.txt', r'data/upload/path-to-your-local-file2.txt') ] # Upload files upload_results = ts_minio_client.upload_files(test_bucket_name, files_to_upload) print("Files uploaded successfully:") for result in upload_results: print(result) # Download a file save_path = r'data/download/local-example-object.txt' # The path where you want to save the file ts_minio_client.download_file(test_bucket_name, object_name, save_path) print(f"File downloaded successfully and saved to {save_path}") # List of files to download (object_name, local_save_path) files_to_download = [ ('new-example-object1.txt', r'data/download/local-example-object1.txt'), ('new-example-object1.txt', r'data/download/local-example-object2.txt') ] # Download files ts_minio_client.download_files(test_bucket_name, files_to_download) print("Files downloaded successfully.")