This package implements the Minio API.
The following api functions are implemented.
-
presign_put_object
-
presign_get_object
The package is being developed as necessary for my personal use. If you require any api endpoint to be added, please add an issue and send a PR if you have the time.
To use the api a client struct must be created. This can be done the following way.
client = %Minio{
endpoint: "https://play.min.io",
access_key: "Q3AM3UQ867SPQQA43P2F",
secret_key: "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG",
region: "us-east-1"
}
The region has to be specified. It is not automatically retreived. The default region is set to "us-east-1"
Once the client sturct is created, the following api functions can be used.
Generate a presigned url to put an object to an minio instance.
{:ok, put_url} = Minio.presign_put_object(client, bucket_name: "test", object_name: "test3.png")
Generate a presigned url to get an object from an minio instance.
{:ok, get_url} = Minio.presign_get_object(client, bucket_name: "test", object_name: "test3.png")
If available in Hex, the package can be installed
by adding minio
to your list of dependencies in mix.exs
:
def deps do
[
{:minio, "~> 0.1.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. The docs can be found at https://hexdocs.pm/minio.