Working with Community Platform Engineering in Fedora

This document explains how to efficiently work with the CPE team. Your close attention to this document will help both you and us do the work you are asking us to do.

Our Workflow

  1. Is your issue/problem related to security of an application or service we run?

    • send an email to infra-security @ fedoraproject.org

  2. Is your issue/problem urgent? (An important service is down, you need a change asap) or is your issue/problem such that you cannot file a ticket (authentication, no account, ticketing system down)

    • On IRC (irc.freenode.net) join the #fedora-admin channel, say .oncall, and explain the issue to the oncall person.

    • If no answer:

      • If you cannot authenticate to https://pagure.io/, send an email to admin @ fedoraproject.org

      • Otherwise: go to next step.

  3. File a ticket in https://pagure.io/fedora-infrastructure/issues/ with as much information as you think will be needed to handle your issue. This initial ticket will be made in the Needs review state. Make sure to note if there is a deadline or if this issue blocks you.

    • Your ticket will be reviewed within 48 hours at most; usually sooner.

    • There is no need to ping team members or notify us about the newly filed ticket.

  4. Your ticket will be triaged by a team member and moved to a new state:

    • If it’s moved to Waiting on asignee it’s waiting for a team member to start working on it.

    • If it’s moved to Waiting on reporter it means that you need to answer questions posed in the ticket before it can be worked on.

    • If the ticket is closed with initiative, see New Initiative Workflow.

    • If the ticket is otherwise closed, it will be with a explanation from a team member.

  5. If you have an update to your issue/task or want to know when it might be worked on:

    • comment in the ticket adding that information or asking for time frame.

  6. When someone is available, your ticket will be assigned to someone to work on.

    • Watch for progress reports/ticket being marked done.

  7. If the work is not fully completed as required, please re-open the ticket and indicate this.

    • Go back to the previous step for additional work.

The "Oncall" Role in Our Team

One CPE team member is always designated “oncall”. The assigned person changes every week. You can find who the currently assigned person is on IRC by using .oncall in any of our various IRC channels, such as #fedora-admin on FreeNode.

When available, this person:

  1. Accepts urgent work items for the team, such as an important or high SLE service being down or causing issues. A ticket should be filed by the reporter or the oncall person to track this work in any case.

  2. Shields other team members from distracting pings and less urgent tickets, deciding when an issue is important enough to interrupt another team member.

  3. Triages incoming tickets for urgent items that need work outside of normal triage process.

Initiatives

All tasks involving new applications, major deployments, major development work or the like will be asked to follow the New Initiative Workflow. It will then be scoped and prioritized from there.

General Ticket Considerations

Please provide as much information as you can in your ticket to avoid back and forth for information. If you know your issue is going to cause a lot of discussion, start a mailing list thread for that.

Make sure your ticket:

  • Explains the problem or issue you are having, with URLs where possible to the services or applications involved.

  • Tells us how important or urgent this is to you.

  • Includes any error messages or output you see.

It is your responsibility as ticket reporter to follow your ticket, provide information that is asked for, and keep us aware of any urgency you may have. Do not simply file and forget your ticket.

Your ticket may take a while to process, depending on the current workload of the team has and how important we think it is. If your ticket is blocking you, make sure you note that in the ticket, but keep in mind that we may already be working on tickets that are blocking more people.

IRC

IRC is a great way to communicate, but please do not ping team members directly. Instead, update your ticket with any new information you have and when the team member(s) working on that issue have time/availability, they may contact you on IRC for more interactive debugging/testing.

Direct emails

E-mail is also a great communication method, but if you mail work items or information to one person directly, they cannot easily hand off the issue, you must wait for them to have time to address the issue (when others could perhaps have already solved it, etc). So, please avoid direct emails and instead update tickets with any information you want to add.

RFC 1149

Pigeons are too slow for most work items, and require facilities (e.g. dovecots) that most team members do not have. Even if the oncall member does have a free dovecot, feed, and is trained in handling carrier pigeons, sending a pigeon to a single team member has the same problems as using IRC or email for the same purpose, which means tickets are still the correct way to report problems.

In other words, please don’t send us any birds.