ForgeRock Community Process

This document describes the roles project participants can take, and the process for decision making within the Forgerock.org projects. In also describes processes for communicating and sharing within the project teams and communities. The ForgeRock project organization is structured as a hierarchy of participants, that are promoted based on merit. The participants are modeled after the musical influence of a Rock band!

We have four types of participants:

Listeners (users)

A Listener, also known as a user, is someone that uses software from Forgerock.org. As a listener, you are able to contribute to the ForgeRock projects by providing feedback to developers in the form of bug reports and feature suggestions. Listeners participate in the ForgeRock community by helping others on mailing lists and support forums. You are able to view issues in Jira, and are encouraged to contribute to the Wiki. Remember, your experiences are likely to be helpful to others, and just as you might be searching for help, others are as well.

Fans (contributors)

A Fan, also known as a contributor, is a listener who has an account on the Forgerock.org IDP, and contributes to a project in the form of code or documentation. They take extra steps to participate in a project, are active on the developer mailing list, participate in discussions, provide patches, documentation, suggestions and criticism. Fans have accounts in the Forgerock development tools; Confluence, Jira, Fisheye and Crucible.

Roadies

A Roadie, also known as a committer, is a Fan that is a major contributor to the project, and has been given write access to the code repository trunk. A roadie is considered part of the core development team. Roadies are the only ones able to commit changes to trunk, and only after a code review. Roadies are expected to be active on the mailing list, and a leader within the development communiy.

Rockstar

A Rockstar is a Roadie that has been elected due to merit for the evolution of the project and demonstration of commitment. They have write access to the code repository, and the right to vote for the community-related decisions. Rockstars are part of the Band. The Band as a whole is the entity that controls the direction of the project, nobody else.

The Band (architecture committee)

The Band is the group that controls and directs the project. The Band votes on election of members and commits to release branches. The Band consists of all Rockstars.

How do I become a RockStar?

Participation in the project starts with becoming a fan. A Fan is a listener who has an account on the Forgerock.org IDP, and contributes to a project in the form of code or documentation. At this point, you are free to add documentation, create wiki content, download and build the project and submit patches as diffs, into crucible.

Once a fan has shown a commitment to the project and has submitted patches that the Band deems reasonable quality, they can be nominated to be come a roadie. Any roadie or rockstar can nominate anyone and the band then votes. A Roadie is intended to be a fairly major contributor to the project and has write access to the trunk, Roadies are able to submit simple patches directly to the trunk.

Once a roadie has shown a strong commitment to the project, generally by becoming a module owner, or responsible for a significant section of the project, they can be nominated to become a rockstar. The Band then votes on the nomination.

Once accepted as a rockstar, they become part of the architecture committee, (the Band) and are an integral part of the project. Anyone can move along this chain, simply by showing a commitment to the code and the project.

How are Forgerock releases managed

ForgeRock releases are releases that are supported by Forgerock. Forgerock will determine what features, components and modules are included in the forgerock release, which will follow the roadmaps and other business decisions faced by Forgerock.