From Free IPA
Contributing to freeIPA
- Join mailing list
- Find us on IRC
- Read developer docs
- Install freeIPA
- Sign CLA
- Jump into our code and process
Developer Documentation
Version 1 Documentation
- v1 PRD: requirements for IPA v1
- v1 Architecture: overview of v1 architecture.
- Schema: overview of the LDAP schema used in IPA
- Access Control Discussion: Discussion on access control in v1.
- User/Install Documentation: freeIPA user/install/admin documentation
Version 2 Documentation
- v2 PRD: draft requirements for IPA v2
- Group Discussion: Discussion on how to deal with primary groups
- Policy Enforcement: Discussion on v2 and beyond policy enforcement.
Communication
Mailing List
The development of FreeIPA is done on the freeipa-devel mailing list. You can join at https://www.redhat.com/mailman/listinfo/freeipa-devel. Feel free to introduce yourself to the list and let us know what areas of development are of most interest to you.
IRC
We also hang out on IRC at irc.freenode.net in the #freeipa channel.
Bug and Feature Tracking
Bugs and feature requests are tracked using Bugzilla. The product is 'freeIPA'.
We formerly used Trac.
CLA
A CLA is a contributor license agreement. Before contributions to freeIPA can be accepted, we need to have a signed copy of the CLA.
- Why a CLA? Why do I need to sign a CLA to contribute to this project?
- Download the CLA
- Where do I send the CLA? Instructions for where to send the CLA are listed in the CLA itself.
Development Process
Working with the Codebase
- Git Documentation: Information on using Git, our source control system of choice.
- Coding Style Guide: Our style guide for coding FreeIPA.
Source Repository
The source repository for FreeIPA is stored in git. The code can be retrieved with the command:
git clone git://git.fedorahosted.org/git/freeipa.git
This will create the initial repository (named 'freeipa') in the current directory. Updating the repository can be accomplished with the command 'git pull' from within the repository. More information on GIT can be found at GitDocs.
You can also browse the source repository via the web.
Submitting Changes
Changes to the repository are submitted via patches on the freeipa-devel mailing list (see above for list information). The best way to prepare the patch is to commit the change locally and use 'git-format-patch -1 commit-id' to export the patch (where commit-id is the commit number of the checkin you want to send, use 'git log' to see it).
You will also want to look at our Coding Style Guide
Wiki Editing
If you would like access to edit this Wiki, please send a request to the freeipa-devel mailing list and someone will create an account for you.


