CORTX is about building the world's best scalable mass-capacity object storage system. If you’re interested in what we’re building and intrigued by hard challenges, here's everything you need to know about contributing to the project and how to get started.
This guide is intended to provide quick start instructions for developers who want to build, test, and contribute to the CORTX software. If you are merely looking to test CORTX, please use these instructions.
After reading this guide, you'll be able to pick up topics and issues to contribute, submit your codes, and how to turn your pull request into a successful contribution. And if you have any suggestions on how we can improve this guide, or anything else in the project, we want to hear from you!
Thanks for joining us and we're glad to have you. We take community very seriously and we are committed to creating a community built on respectful interactions and inclusivity as documented in our Contributor Covenant Code of Conduct.
You can report instances of abusive, harassing, or otherwise unacceptable behavior by contacting the project team at [email protected].
- Learn various methods to acquire, build, run and test CORTX in our Quick Start Guide.
- Please read our CORTX Code Style Guide.
- Get started with GitHub Tools and Procedures, if you are new to GitHub.
- Please find additional information about working with git specific to CORTX.
- Please read about our DCO and CLA policies.
Development Environment: First you need to configure your development environment.
Core Functionality: For basic development and testing of CORTX, you only need the motr and S3 submodules.
- CORTX Motr
- The main data path of the system responsible for the actual storage and distribution of objects and key-value pairs.
- CORTX S3
- The S3 interface to CORTX.
Complete System: For the complete CORTX experience, you will need to install the remaining submodules:
- CORTX HA
- The module responsible for maintaining highly available access to shared storage.
- CORTX Hare
- The module responsible for monitoring the distributed health of the system and maintaining consensus.
- CORTX Management Portal
- The module providing a user interface for management and monitoring of CORTX.
- CORTX Manager
- The module providing API's with which the management portal communicates with the other modules.
- CORTX Monitor
- The module tracking platform health and raising alerts on sensing any unintended state.
- CORTX POSIX
- The module providing a file interface to CORTX.
- CORTX Provisioner
- The module which assists the users is satisfying dependencies, configuring the components and the other modules, and initializing the CORTX environment.
- Learn more about the CORTX Architechture.
- Learn more about CORTX CI/CD and Automation.
- Browse our suggested list of contributions.
Please refer to the Support section to know more about the various channels by which you can reach out to us.
After making a contribution, please don't forget to include yourself in our Contributors list.
We thank you for stopping by to check out the CORTX Community. We are fully dedicated to our mission to build open source technologies that help the world save unlimited data and solve challenging data problems. Join our mission to help reinvent a data-driven world.