lowcoder
lowcoder copied to clipboard
[Feat]: Implementation of a MinIO S3 Plugin
Is your feature request related to a problem? Please describe. I frequently encounter the need to integrate MinIO storage in various projects. The absence of a convenient plugin for this purpose presents additional challenges and slows down the development process.
Describe the solution you'd like I would like a plugin for MinIO that allows for easy integration of MinIO S3 storage into projects. This plugin should support fundamental operations such as CRUD for files, listing objects, generating file access URLs, and validating data source configurations.
Describe alternatives you've considered I have considered using general libraries for working with S3-compatible storages, but they often lack the necessary flexibility and specific features offered by MinIO.
Additional context The plugin should be able to handle various tasks demonstrated in my tests, including data source configuration validation, file operations (CRUD), object listing, and URL generation for file access. This would significantly streamline the process of integrating MinIO storage into different projects.
It would be truly fantastic if you could contribute to this important topic!
Please take a look, I have never worked with forks or Opensource projects before https://github.com/lowcoder-org/lowcoder/pull/582/files
We had a loon and see that you did write tests for the minio s3 plugin which is ofc great!. But the issue is for these tests to work we will need a minio server to respond to the queries. At least it would need to be a Mock-Server. Without such a mock server or real Min.io installation these tests wil never run and build will always fail.
Out of here we have multiple ways:
- You reduce the tests to work without a Min.io connection, which is frustrating "in a way" naturally.
- We host a Min.io where we can test against. But this is "fragile" "in a way" too.
We think to move on in general it is suggested - but not perfect - to reduce the tests for the PR after you did tests intensely locally.