Skip to content

MCV is a command-line interface (CLI) tool built with Node.js that provides functionality to replicate and manage versioned objects between S3 or MinIO buckets.

Notifications You must be signed in to change notification settings

CadenScharpf/minio-client-versioned

Repository files navigation

Minio Client Versioned (MCV)

NPM Version

MCV is a drop in replacement for the MinIO mirror CLI with the added benefit of ensuring replication while preserving the order of versioned objects. Utilize MCV for seamless data migration between any S3 or MinIO bucket.

Installation

To install MCV, you need to have Node.js and npm installed. Then, you can install MCV globally using npm:

npm install -g @cscharpf/minio-client-versioned

Usage

MCV provides commands for mirroring buckets and managing aliases.

Mirror Command

The mirror command is used to mirror objects between source and target buckets.

mcv mirror [options]

Options:

  • -b, --bucket [bucket]: Bucket to mirror.
  • -s, --source [source]: Source client.
  • -t, --target [target]: Target client.
  • -c, --clean: Clean objects in the target bucket that are not in the source bucket.
  • -v, --verbose: Verbose output.
  • -C, --concurrency: Number of concurrent object streams (default 100).

Alias Command

The alias command is used to manage aliases for clients.

mcv alias [add|remove|list] [options]

Subcommands:

  • add: Add a new alias.
  • remove: Remove an existing alias.
  • list: List all aliases.

Options:

  • -n, --name: Alias name.
  • -e, --endpoint: Endpoint.
  • -p, --port: Port.
  • --use-ssl: Use SSL.
  • --access-key: Access key.
  • --secret-key: Secret key.

Examples

Mirror a Bucket

mcv mirror -b my-bucket -s source-client -t target-client

Add Alias

mcv alias add -n my-alias -e example.com -p 9000 --use-ssl --access-key my-access-key --secret-key my-secret-key

Remove Alias

mcv alias remove -n my-alias

List Aliases

mcv alias list

Contributing

If you have suggestions or found bugs, please feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

MCV is a command-line interface (CLI) tool built with Node.js that provides functionality to replicate and manage versioned objects between S3 or MinIO buckets.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published