So you want to be a PTL? Here is a list of items that you can expect to perform. This guide is meant to serve as a general guide for current and future PTLs. It is not all encompassing, nor are all sections required. It is simply a guide to which you may refer.
Organize the team meeting agenda. Most teams will use an etherpad or the project's wiki space
Follow the release guidelines established by the TSC and Release Manager
Attend Technical Committee and Cross-Project meetings when possible. For more information see meetings.
If the team does not have an appointed bug czar, then perform bug triage. Ensure all new bugs that have been reported are triaged and tagged accordingly
Core Committer Maintenance
This will vary greatly from team to team, but here is a general guide you may consider:
Criteria When Considering New Committers
Committers are nominated and elected by existing Committers.
- Are their review numbers (quantity and disagreements) similar to those of existing Committers?
- Does the person follow up on reviews?
- Are the reviews helpful, critical, and nice to authors?
- Does the person help in triaging bugs? (For example: reproducing the issue)
- Does the person provide bug fixes?
- Does the person create and implement new features?
- Does the person review specifications?
- Does the person participate in weekly meetings?
- Does the person participate in mailing list discussions?
- Does the person participate in Acumos developer gatherings?
- Does the person know the project direction and priorities?
- Does the person help others on IRC?
Actions to Perform When Adding New Committers
- Send a nomination email to the distribution list firstname.lastname@example.org listing the person's contributions and requesting a vote by all active committers.
- Active committer is defined as two or more merges in the last six months
- Collect the votes, which must be sent to the same distribution list
- When the voting is concluded according to the guidelines set out on the TSC page, assuming the votes are favorable:
- Send email to email@example.com to inform the TSC members of the change
- Send email to firstname.lastname@example.org to have the LF Release Engineering team send an email invitation to the new committer
- After the invitation arrives and the new person accepts, update the INFO.yaml file in the affected repository and submit as a new change set
- Have the new person merge the changed INFO.yaml file as a test of the newly granted committer privileges.
Criteria for Removing Committers
- Is the Committer reviewer reviewing enough? Use data to determine if the Committer is similar to the other Committers in terms of overall review count.
- Does the Committer have enough time to review? Job responsibilities may have changed.
- Does the Committer no longer have knowledge of the code base and new features?
- Does the Committer still provide useful feedback, even if infrequently?
The process for removing an inactive Committer is defined here.
For most situations, the PTL should email the inactive Committer and ask if he/she wants to be removed.
- If yes
- send an email to the TSC mailing list, including the email thread with the inactive Committer wherein he/she agrees to be removed
- email the Acumos Helpdesk and ask to have the Committer removed (this means removal from the LDAP group); include a link to the email sent to the TSC email list
- once the Committer has been removed, update the repo's INFO.yaml file
- if no or the Committer doesn't reply
- section 126.96.36.199.6 outlines what the PTL should do to have the Committer removed
At the Beginning of a New Cycle
- Add placeholder migrations, these should be the first things to merge once the n-1 stable branch has been created. Do not merge any migrations before this is done
- Appoint cross project liaisons (Docs, release, QA, etc.).
- Check if the meeting time works for most active contributors
- Track removed and deprecated features
- Organize the specifications page
During the Cycle
- Help first time contributors, they will be struggling the most.
- Lack of reviews? Reach out to the core team and remind them.
- Release libraries as necessary but don’t wait too long! Some teams will release after 4 weeks even if the changes are minor. More often is better than less often.
Before a Face-to-Face Gathering
- Start an etherpad to brainstorm potential session topics.
- Based on that brainstorming, propose sessions. Create an etherpad for every session, prime the content. List these etherpads on the wiki.
During the Face-to-Face Gathering
- Reach out to potential new contributors to the project, participate in project on-boarding sessions.
- Attend as many cross-project sessions as possible.
- In the discussion sessions you moderate:
- Take notes on the etherpad (or delegate a scribe)
- Act as a moderator rather than actively participate (or delegate a moderator)
- After the discussion, post a summary of the session outcome to the mailing list and wiki, for the benefit of those who could not be present.
At the Ed of the Cycle
- Clean up release notes.
- Clean up Jira
- Coordinate with the release management team for deliverables, unless a liaison has been appointed
- Expect queries from the release marketing staff to name release highlights and major features
- Perform a retrospective via an etherpad. Suggested sections include: What went well?, What didn’t go well.
- Analyze how complete each new feature is. Documentation? Does the install guide need to be updated?
Alternatively, the responsibilities in this section can be delegated to a local stable maintenance czar.
- Ensure the stable branches gates are not broken.
- Co-ordinate with the stable release team to ensure releases are performed when a critical fix is backported, or sufficient smaller fixes have landed.
When necessary, the following can be performed at unscheduled times.
- Bug smashes
- API sprints
- Docs sprints
Staring a New Project
After the project proposal has been approved by the TSC:
- jenkins jobs
- coordinate creation of new wiki space and inclusion in the top navigation bar with the LF Helpdesk or Docs PTL
- decide on a mailing list tag and put that on your wiki space
Requesting Committer Rights in Gerrit
During the transitional phase, PTLs may be appointed/approved by the TSC. If you do not have Committer rights in your repos, contact the Acumos helpdesk (email@example.com), list the repos, and include the TSC meeting minutes in which your PTL role was approved.
Schedule Weekly Meetings
- Create a Doodle poll here for your project - https://doodle.com/create (example: https://doodle.com/poll/h47cwxa2nhzhxzf6) and please send the poll link to firstname.lastname@example.org.
- Keep the poll open for a week
- Update the “Project Meetings” wiki page with your scheduled meeting
Create an IRC Channel
Create an IRC channel for your project: #acumos-<your project name>
See See IRC Basics#CreateandRegisteranIRCChannelonFreenode for instructions on how to create an irc channel.
create a helpdesk ticket to have gerrit bot installed on that channel(note: as of May 2018, the LF cannot install gerritbot for acumos repos)
- create a helpdesk ticket to have the meetbot installed on that channel if you plan to conduct meetings on your project channel instead of on #acumos-meeting