Developers
From GlusterDocumentation
Contributing to the Gluster community
Are you itching to send in patches and participate as a developer in the Gluster community? Here are a number of starting points for getting involved. We don't require a signed contributor license agreement or copyright assignment, but we do require a "signed-off-by" line on each code check-in.
- Simplified Developer Workflow
- A simpler and faster intro to developing with GlusterFS, than the doc below.
- Developer Workflow - this tells you about our patch requirements, tools we use, and more. Required reading if you want to contribute code.
- License Change - we recently changed the client library code to a dual license under the GPL v2 and the LGPL v3 or later
- GlusterFS Coding Standards
Compiling Gluster
- Compiling RPMS - Step by step instructions for compiling Gluster RPMS
- Building GlusterFS - How to compile Gluster from source code. Including instructions for Ubuntu.
Developing
- Projects - Ideas for projects you could create
- Language Bindings - Connect to GlusterFS using various language bindings
- EasyFix_Bugs - Easy to fix bugs of GlusterFS. One of the best place to start contributing to GlusterFS.
- Fixing issues reported by tools for static code
analysis
- This is a good starting point for developers to fix bugs in GlusterFS project.
- Backport Wishlist - Problems fixed in the master branch might need to get fixed in stable release branches too. The Backport Guidelines describe the steps that branches too.
Adding File operations
Automatic File Replication
Data Structures
Find the gfapi symbol versions here
Daemon Management Framework
Translators
- Block Device Tanslator
- Performance/write-Behind Translator
- Translator Development
- Storage/posix Translator
- Compression translator
Testing
- Unit Tests in GlusterFS
- Using the Gluster Test Framework - Step by step instructions for running the Gluster Test Framework
- Our Jenkins Infrastructure - A braindump of the Jenkins infrastructure we have in place for automated testing
- Manual steps for setting up a Jenkins slave VM in Rackspace - Steps for setting up a slave VM in Rackspace
Bug Handling
- Bug reporting guidelines - Guideline for reporting a bug in GlusterFS
- Bug triage guidelines - Guideline on how to triage bugs for GlusterFS
- Bug report life cycle in Bugzilla - Information about bug life cycle
Patch Acceptance
- The Guidelines For Maintainers explains when maintainers can merge patches.
Release Process
- Versioning
- GlusterFS Release Process - Our release process / checklist