Introduction to the SSSD development
Thank you for your interest in contributing to the SSSD project. The development is happening on the SSSD GitHub project using the git version control system and GitHub workflow. SSSD is a large complex project with many dependencies. Feel free to reach us on our community channels to ask for help.
See also
Check out also other GitHub Guides if you are not familiar with GitHub.
Contribution Quick Start
There are plenty of guides available to get you started with git and GitHub workflow if you are not yet familiar with these, therefore we don’t go into details here. As an example, we suggest reading the Git Handbook on GitHub. The following steps describe the process in a nut shell to provide you a basic template:
Get familiar with the Coding Style
Create an account on GitHub
Fork SSSD repository
Clone the SSSD repository
Add your fork as an extra remote
Setup an SSSD commit template
Create a working branch
Commit changes
Push your changes to your GitHub repository
Open a Pull Request against SSSD project (using
gh
,hub
or web ui)Await our review
[.]$ git clone git@github.com:SSSD/sssd.git
[.]$ cd sssd
[sssd]$ git remote add $ghusername git@github.com:$ghusername/sssd.git
[sssd]$ git config commit.template .git-commit-template
[sssd]$ git checkout -b my-changes
[sssd]$ vim change-what-you-need
[sssd]$ git commit
[sssd]$ git push $ghusername my-changes --force
[sssd]$ gh pr create
Additionally, make sure to setup your name contact e-mail that you want to use for the SSSD development. Run the following commands from the local repository location:
[sssd]$ git config user.name "John Smith"
[sssd]$ git config user.email "john.smith@home.com"
Note
This will setup the user information only for the SSSD repository. You can
also add --global
switch to the git config
command to setup these
options globally and thus making them available in every git repository.
See also
There are also several SSSD’s side projects that you can contribute into. Some of these projects can help you with testing and debugging your code so we advice you to look at them. Navigate to the SSSD organization on GitHub to see all our projects. The policies, coding style and workflows for contributions are the same.
You can also directly contribute to this documentation by opening pull requests against sssd.io repository.
Tasks for newcomers
Feel free to pick up any existing ticket from the issue tracker. We try to
mark tickets that don’t require too much existing knowledge with the Easy to
fix
keyword. You can list those tickets with the following query.
Licensing
All source code committed to the SSSD is assumed to be made available under the GPLv3+ license unless the submitter specifies another license at that time. The upstream SSSD maintainers reserve the right to refuse a submission if the license is deemed incompatible with the goals of the project.