Sign inSign up

nitisht/mint

By nitisht

•Updated over 9 years ago

Mint repo

Image
0

93

nitisht/mint repository overview

⁠Mint Slack Docker Pulls

Collection of tests to detect overall correctness of Minio server.

⁠Goals

  • To run tests in self contained manner, with various tools pre-installed
  • To assess the quality of the Minio server product

⁠Roadmap

  • Add test cases under categories like correctness, stress/load, etc.
  • Add specific tests for distributed mode, shared-backend mode, gateway mode
  • Add other SDK/Client side tools to increase the test case variety
  • Add bench-marking tools

⁠How to Run

The project will be published in Docker hub after further more testing. Till then the docker image has to be built locally and run.

⁠Build
$ git clone https://github.com/minio/mint.git
$ cd mint
$ docker build -t minio/mint .
⁠Options
⁠Env variables

Set environment variables to pass test target server details to the docker container. Supported envs:

  • SERVER_ENDPOINT- <IP/URL>: of the Minio server on which the tests has to be run
  • ACCESS_KEY - Access Key of the server
  • SECRET_KEY - Secret Key of the server
  • ENABLE_HTTPS - Optional value when set to 1 sends HTTPS requests on SSL enabled deployment

Note: With no env variables provided the tests are run on play.minio.io by default

⁠Config file
  • apps - Directories specified in this section are executed in sequential order. You can comment out specific directories to remove them from execution or rearrange them to change execution order.
  • mode - Only quick mode supported right now. Only basic tests are run in quick mode.
⁠Run

To run Mint image, use the docker run command. For example, to run Mint with Minio Play server as test target use the below command

$ docker run -e SERVER_ENDPOINT=play.minio.io:9000 -e ACCESS_KEY=Q3AM3UQ867SPQQA43P2F -e SECRET_KEY=zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG -e ENABLE_HTTPS=1 minio/mint 

After the tests are run, output is stored in /mint/log directory inside the container. You can access these logs via docker cp command. For example to store logs to /tmp/logs directory on your host, run

docker cp minio/mint:/mint/log /tmp/logs

Then navigate to /tmp/logs directory to access the test logs.

⁠Current tests

Following SDKs/CLI tools are available:

  • mc
  • minio-go
  • minio-java
  • minio-js
  • minio-py
⁠Adding tests

To add tests to an existing SDK folder:

  • Navigate to specific SDK test file in the path apps/<sdk_name>/.
  • Add test cases and update main method if applicable.

To add new SDK/CLI to Mint:

  • Create new directory in apps/ directory with corresponding tool name
  • Add a run.sh script. This script should set up the SDK/CLI tool and then execute the tests
  • Add an entry in config.yaml with name of folder, e.g test_folder

Tag summary

Content type

Image

Digest

Size

277.8 MB

Last updated

over 9 years ago

docker pull nitisht/mint:dockerfile-fix