KnowledgeBase

Differences between revisions 146 and 147
Revision 146 as of 2016-03-30 14:47:47
Size: 18709
Editor: paelzer
Comment:
Revision 147 as of 2016-08-29 23:13:46
Size: 11894
Editor: powersj
Comment: Revamping bug triage section
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
Here are some resources to help you get things done.

If you have any questions, don't hesitate to [[ServerTeam/Contact|contact]] other ServerTeam members.

<<Anchor(triager)>>
= Bug Triager =

Goal: Move bugs filed against server related packages to '''Triaged''', '''Invalid''' or '''Won't Fix''' status.

The Ubuntu Server team participates in the general bug triaging of server related packages. Our resources are primarily focused on the following tasks (from the most important to the less important):

''Note that the bug search links below may time-out due to a bug in Launchpad. If so, use the Triage Report linked below''

''It is useful to identify the active ones where people care about by adding the field "Date last updated" and sorting by it. Also when e.g. checking the list of critical bugs it can be used to see which ones are crit and not having any progress for a long time,''

''Another hint is to sort by Package/Project/Series/Name - that helps to think about one set of tools/packages at a time and identify dups. Also useful to identify where updates would go together very well.''

 1. Prioritise [[https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&field.status%3Alist=NEW&field.importance%3Alist=UNDECIDED&assignee_option=any&field.assignee=&field.bug_reporter=&field.structural_subscriber=ubuntu-server&field.bug_commenter=&field.subscriber=&field.component-empty-marker=1&field.status_upstream-empty-marker=1&field.omit_dupes.used=&field.omit_dupes=on&field.has_patch.used=&field.has_cve.used=&field.affects_me.used=&field.tag=-notserv&field.tags_combinator=ANY&field.has_no_package.used=&search=Search|newly created and untouched bugs]] bugs, learning enough about the bug to purely set the Bug [[https://wiki.ubuntu.com/Bugs/Importance|Importance]].

 1. Triage [[https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=NEW&assignee_option=any&field.assignee=&field.bug_reporter=&field.structural_subscriber=ubuntu-server&field.bug_commenter=&field.subscriber=&field.component-empty-marker=1&field.tag=-notserv&field.tags_combinator=ANY&field.status_upstream-empty-marker=1&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_no_package.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on| bugs that are still NEW]], setting the [[https://wiki.ubuntu.com/Bugs/Status|Status]].

 1. Triage [[https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&orderby=-importance&field.status%3Alist=NEW&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&field.status%3Alist=CONFIRMED&field.importance%3Alist=CRITICAL&field.importance%3Alist=HIGH&assignee_option=any&field.assignee=&field.bug_reporter=&field.structural_subscriber=ubuntu-server&field.bug_commenter=&field.subscriber=&field.component-empty-marker=1&field.status_upstream-empty-marker=1&field.omit_dupes.used=&field.omit_dupes=on&field.has_patch.used=&field.has_cve.used=&field.affects_me.used=&field.tag=-notserv&field.tags_combinator=ANY&field.has_no_package.used=&search=Search|High priority bugs]].
 1. Triage [[https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_supervisor=&field.bug_commenter=&field.subscriber=ubuntu-server&field.component-empty-marker=1&field.tag=-notserv&field.tags_combinator=ANY&field.status_upstream-empty-marker=1&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_no_package.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on|Incomplete bugs with response ]].

 1. Triage [[ https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_supervisor=&field.bug_commenter=&field.subscriber=ubuntu-server&field.component-empty-marker=1&field.tag=-notserv&field.tags_combinator=ANY&field.status_upstream-empty-marker=1&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_no_package.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on| Incomplete bugs without response ]].

 1. Triage [[https://bugs.launchpad.net/ubuntu/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=NEW&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&field.status%3Alist=CONFIRMED&field.importance%3Alist=MEDIUM&field.importance%3Alist=LOW&field.importance%3Alist=WISHLIST&assignee_option=any&field.assignee=&field.bug_reporter=&field.structural_subscriber=ubuntu-server&field.bug_commenter=&field.subscriber=&field.component-empty-marker=1&field.status_upstream-empty-marker=1&field.omit_dupes.used=&field.omit_dupes=on&field.has_patch.used=&field.has_cve.used=&field.affects_me.used=&field.tag=-notserv&field.tags_combinator=ANY&field.has_no_package.used=|bugs in packages from server related packages]].
 1. Triage bugs in packages you have an interest in.

There is a [[http://status.qa.ubuntu.com/reports/ubuntu-server/triage-report.html|summary report of bugs to triage]], to help us visualizing what's left to do.

There is an [[https://jenkins.qa.ubuntu.com/view/Raring/view/Smoke%20Testing/job/raring-upgrade-quantal-server/ARCH=amd64,LTS=non-lts,PROFILE=server-tasks,label=upgrade-test/lastSuccessfulBuild/artifact/results/obsolete_conffiles.log|auto-generated report of newly obsolete conffiles]].

[[https://bugs.launchpad.net/ubuntu/?field.searchtext=&orderby=-date_last_updated&search=Search&field.status%3Alist=NEW&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscriber=&field.structural_subscriber=ubuntu-server&field.component-empty-marker=1&field.tag=&field.tags_combinator=ANY&field.status_upstream-empty-marker=1&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_no_package.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on|List of recently modified bugs in packages looked after by the server team]].

For general advice on triage of server bugs please refer to the [[https://wiki.ubuntu.com/ServerTeam/KnowledgeBase/BugTriage|Bug Triage Workflow]].
= Overview =

The knowledge base contains development, test, and operational resources specific to the Ubuntu Server team. If you have any questions, don't hesitate to [[ServerTeam/Contact|contact]] other ServerTeam members.

<<Anchor(triage)>>
= Bug Triage =

'''Goal:''' To successfully review every bug filed against Ubuntu Server related packages

A review involves analyzing a bug to determine if the bug is valid and if sufficient information was provided. If the bug is both valid and provided with sufficient information, the bug is marked as triaged and will be worked to closure by a member of the server team. Otherwise, the bug will be responded to and marked as 'Incomplete' for more details, 'Invalid' for not a real bug, or 'Won't Fix'.

[[https://bugs.launchpad.net/ubuntu/?field.searchtext=&orderby=-date_last_updated&search=Search&field.status%3Alist=NEW&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscriber=&field.structural_subscriber=ubuntu-server&field.component-empty-marker=1&field.tag=&field.tags_combinator=ANY&field.status_upstream-empty-marker=1&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_no_package.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on|Here is the list of recently modified bugs in packages used for triage by the server team]].
Line 44: Line 20:
A specific member of the server team is responsible for looking at the bugs in a '''New''' state and a '''Undecided''' importance on a daily basis in order to set the ''Importance'' on each bug. This is expected to take less than 15 minutes per day.

For each bug on the list (search linked above):
 1. the '''importance''' '''must''' be set
 1. the status '''should''' be updated
 1. any missing information '''should''' be asked to the bug reporter and the bug status set to ''INCOMPLETE'' accordingly.

The default meanings of Importances and Statuses are explained at [[Bugs/Importance]] and [[Bugs/Status]]. Make sure you have these pages opened when triaging bugs.

Feel free to add your name to the list:

||||||||||||||<rowstyle="background-color: brown; color: white"> '''Triagers''' ||
||<rowstyle="background-color: brown; color: white"> '''Sunday''' || '''Monday'''|| '''Tuesday''' || '''Wednesday''' || '''Thursday''' || '''Friday''' || '''Saturday''' ||
## Sunday || Monday || Tuesday || Wednesday || Thursday || Friday || Saturday ||
|| || zul || !RoAkSoAx || hallyn || smoser || coreycb || ||
|| || lutostag || Daviey || rcj || jamespage || utlemming || ||
|| || gnuoy || thedac || ddellav || beisner || gaughen || ||
Bug triage is completed for all bugs last updated on a particular day. An assigned member of the server team will look at all bugs that were updated on the previous day. For example, the member with responsibility on Friday will review all the bugs updated on Thursday. For the weekend, the member with responsibility on Monday will review all the bugs updated on Friday, Saturday, and Sunday.

This process is expected to take less than 30 minutes per day. This is not meant to be a full root cause analysis (RCA) investigative time, instead only determining if further attention is warranted and sufficient information has been provided.

Current members of Ubuntu Server bug triage:

 * cpaelzer
 * nacc
 * powersj
 * robie

=== Assignment ===
Assignment of daily bug triage is completed as an agenda item of the server team's IRC meeting.
Line 63: Line 35:
  Triaging bugs in Launchpad is coordinated with the BugSquad team:
  * BugSquad/KnowledgeBase has valuable information on how to work with bugs in Launchpad.
  * [[Bugs/Responses]] has a list of standard responses for different categories of bugs.
  * Ask for help on the [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugsquad|ubuntu-bugsquad mailing list]] and #ubuntu-bugs on irc.freenode.org.
  * The launchpad [[http://launchpad.net/people/ubuntu-server|ubuntu-server]] team is the bug contact for many server-related packages.
  * Avoid assigning or subscribing {{{ubuntu-server}}} for packages {{{ubuntu-server}}} is already a bug contact for.
    * [[https://bugs.launchpad.net/~ubuntu-server/+packagebugs|summary report of bugs by package]].

== Official tags ==

The following tags are used by the server team to track bugs relevant to various components:
  * uec: bugs related to UEC, the platform.
  * uec-images: bugs related to the images (guests) running on UEC.
  * ec2-images: bugs related to the images (AMIs) running on EC2.
  * eucalyptus: bugs related to eucalyptus the platform and shared with the upstream developers.
  * notserv: Bug is specifically not a server related issue (to be used with extreme caution). For example Bug #Bug:675396
Helpful Guides and Definitions:

 * [[https://wiki.ubuntu.com/ServerTeam/KnowledgeBase/BugTriage|Bug Triage Workflow]]
 * [[Bugs/Importance|Definitions for bug importance levels]]
 * [[Bugs/Status|Defintions for bug status settings]]
 * [[Bugs/Responses|Predefined response templates]]

Overview

The knowledge base contains development, test, and operational resources specific to the Ubuntu Server team. If you have any questions, don't hesitate to contact other ServerTeam members.

Bug Triage

Goal: To successfully review every bug filed against Ubuntu Server related packages

A review involves analyzing a bug to determine if the bug is valid and if sufficient information was provided. If the bug is both valid and provided with sufficient information, the bug is marked as triaged and will be worked to closure by a member of the server team. Otherwise, the bug will be responded to and marked as 'Incomplete' for more details, 'Invalid' for not a real bug, or 'Won't Fix'.

Here is the list of recently modified bugs in packages used for triage by the server team.

Daily bug triaging

Bug triage is completed for all bugs last updated on a particular day. An assigned member of the server team will look at all bugs that were updated on the previous day. For example, the member with responsibility on Friday will review all the bugs updated on Thursday. For the weekend, the member with responsibility on Monday will review all the bugs updated on Friday, Saturday, and Sunday.

This process is expected to take less than 30 minutes per day. This is not meant to be a full root cause analysis (RCA) investigative time, instead only determining if further attention is warranted and sufficient information has been provided.

Current members of Ubuntu Server bug triage:

  • cpaelzer
  • nacc
  • powersj
  • robie

Assignment

Assignment of daily bug triage is completed as an agenda item of the server team's IRC meeting.

Additional resources

Helpful Guides and Definitions:

Developer/Packager resources

For packaging information, head to the MOTUs, the Master Of The Universe.

We're focusing on server related packages in main and universe.

Ubuntu Server Daily Builds

In order for our users latest testing software of various server software we have the Ubuntu Server Dailies PPA. To get software added one has to do the following:

  1. Add yourself to the Ubuntu Server Edgers Launchpad group here.

  2. If the project that you wish to add is not apart of launchpad, register the project and import the code into a launchpad branch.
  3. Follow the instructions on how to build a daily package here.

  4. Create a PPA in the Ubuntu Server Edgers group, the format for the PPA is the following:
  5. Display Name: <project> Edgers Archive

  6. Description: Fill with relevant informaion
  7. PPA Name: server-edgers-<project>

  8. Create your recipe
  9. Publish to a blog post that the ppa is available to users.

Stack package names policy

Integration work on specific server stacks (Mail stack, cluster stack, etc...) sometimes result in specific integration binary packages. In order to provide a coherent user experience, those binary packages should follow the following naming rule:

stackname-stack-function

As an example, mail stack packages could be named "mail-stack-delivery", "mail-stack-relay"...

Decision from 20100525 team meeting.

Server support resources

The server team offers support for server-related questions in #ubuntu-server.

  • The ubottu irc bot makes it easy to share an extensive set of factoids to others in an irc channel. E.g. typing !ask | noobie will cause ubottu to tell noobie that folks should just go ahead and ask their questions. Ubottu can also conveniently show the channel information on bugs and packages. See ubottu for more details.

Tester resources

We coordinate our testing plans in the Server testing section of the Testing project.

New test plans should be defined as new pages below Testing/Server. Example: Testing/Server/MyTestPlan.

ISO testing

Ubuntu Server iso testing follows the process described in Testing/ISO. We focus on testing the ubuntu-server isos following the Server installation test cases. The Iso testing tracker is used to track test results.

You can register with the iso testing tracker and subscribe to the ubuntu server testcases so that you'll be notified whenever a new ubuntu-server iso needs to be tested.

UTAH

The Ubuntu Test Automation Harness introduces new way of creating end-to-end automated test cases without having to worry about the provisioning side of things. This tool is an attempt to unify the current automated testing for Ubuntu Jenkins.

Documentation resources

This area is involved with updating and creating new content for the Ubuntu Server Guide and the community help website. We're working with the DocumentationTeam and focus on server related topics.

Ubuntu Server Guide

The current development version of the Ubuntu Server Guide is located in a bazaar branch (lp:ubuntu-docs) hosted on Launchpad. There is also an html version available online.

Here are the steps to modify the Ubuntu Server Guide and ask the DocumentationTeam to review your changes:

  • Create a directory where you'll put your local working version of the Ubuntu Server Guide:

$ bzr init-repo ubuntu-docs
$ cd ubuntu-docs
  • Get the ubuntu-docs files that have the latest version of the Ubuntu Server Guide:

$ bzr branch lp:ubuntu-docs
$ cd ubuntu-docs

NB: that command can take some time as the whole history of the branch has to be downloaded from Launchpad.

  • Update the Ubuntu Server Guide files using your favorite editor. They can be found in the serverguide/C/ directory.

  • Once your changes are complete, commit them:

$ bzr commit

And send them to the ubuntu-doc mailing lists with the bzr send command:

$ bzr send --mail-to=ubuntu-doc@lists.ubuntu.com

Alternatively you can attach a diff of your changes to the associated bug report (do this before you commit your changes).

$ bzr diff > doc-change.patch

There is alot of useful information about making changes to system documentation in the DocumentationTeam/SystemDocumentation wiki page.

Community wiki

  • The WikiGuide has guidelines for contributing to the help website.

  • If help is needed, the ubuntu-doc mailing list and #ubuntu-doc on irc.freenode.net are good places to ask around.

The Ubuntu Team wiki, at https://wiki.ubuntu.com/, is focused on documentation for Ubuntu community contributors rather than for end users

Developer resources

The Ubuntu Team wiki is the central location where Ubuntu developers exchange ideas and track their progress.

Team policy

Membership

The Membership policy is described in Membership.

Reporting

The ServerTeam has a section in the monthly report. We try to get status reports on a weekly basis on the day preceding the IRC meeting. The ReportingPage is used to gather the outcome of the tasks done by the ServerTeam members during the week.

The montly report is a subpage under ServerTeam/ReportingPage. It's a summary from the Meeting minutes and the "a Month in the archive" post.

The subpage is automatically included in the monthly team report with a macro as defined in the ServerTeam wiki page.

IRC meeting

We hold IRC meeting regularly to report about current tasks and define new ones. The Meeting page presents the Agenda for the next meeting.

MootBot can be used to record the meeting.

irclogs are available on http://irclogs.ubuntu.com/.

Publishing the minutes

Once the meeting is over, minutes are prepared to summarized the outcome of the meeting.

  1. Create a new entry in MeetingLogs/Server/YYYYMMDD with the ServerTeamMeetingLogTemplate.

    1. Move the agenda from ServerTeam/Meeting to agenda section.

    2. Copy the irc logs to the Irc log section.
    3. Update ServerTeam/Header to announce the next meeting date.

    4. Write the minutes.
    5. Update the Agenda for the next meeting at ServerTeam/Meeting

      1. In particular, remove completed ACTIONS, add new ones
    6. Update the list of Chair/Scribes
      1. move yourself to the back
      2. send an email to the person who will chair next week
  2. Publish the minutes:
    • on ubuntu-server and ubuntu-devel mailing lists
    • on the ubuntuserver blog (or another blog syndicated on Planet Ubuntu).

      • When publishing on the ubuntu server blog, please put it in category "Ubuntu Server meeting minutes"

    A script has been written to automate this step.


CategoryServerTeam

ServerTeam/KnowledgeBase (last edited 2019-12-10 22:29:10 by powersj)