Closed Bug 1682221 Opened 5 years ago Closed 5 years ago

Change Team tracking from the JSON params to a component field

Categories

(bugzilla.mozilla.org :: General, enhancement)

enhancement

Tracking

()

RESOLVED FIXED

People

(Reporter: glob, Assigned: dkl)

References

Details

There's an increasing need to do team-based reporting on bugs; current solutions leverage the JSON mapping that was put in place for the security bugs report.

This is less than ideal, making it painful to update and to consume via the API.

After discussions with a few of the stakeholders we should:

  • add a mandatory (not-null) team_name string field to components, defaulting to Mozilla
  • ensure the team name is visible and updatable via the API (anywhere components are present currently)
  • add an API call to return a list of all team names
  • add an API call to return a list of all components for a given team name
  • ensure the team name is visible on editcomponents.cgi lists
  • populate team_name with values from the JSON param
  • change the security bug report's configuration to just a list of team names

The field will also be accessible through the Products API (with components.team_name), right?

(In reply to Marco Castelluccio [:marco] from comment #1)

The field will also be accessible through the Products API (with components.team_name), right?

Yes, anywhere a component is present in an API call. I'll update comment 0.

Assignee: nobody → dkl

Merged to master.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED

Is https://bugzilla.mozilla.org/rest/config/component_teams going to be retired? Can I rely on the information from the "team" component field to always be up to date?

(In reply to Marco Castelluccio [:marco] from comment #5)

Is https://bugzilla.mozilla.org/rest/config/component_teams going to be retired? Can I rely on the information from the "team" component field to always be up to date?

No. We are going to keep https://bugzilla.mozilla.org/rest/config/component_teams for the foreseeable future. The behavior has changed in that if you call without argument then it just returns the team names as a list. If you pass a team name as well you get more detailed information about the team.

https://bugzilla.mozilla.org/rest/config/component_teams/

[
  "Bugzilla",
  "Crypto",
  "DevTools",
  "DOM",
  "Frontend",
  "GFX",
  "Javascript",
  "Layout",
  "Media",
  "Mobile",
  "Mozilla",
  "Networking",
  "OS Integration",
  "Other",
  "Pocket and User Journey",
  "Privacy and Security",
  "Services",
  "Web Extensions"
]

https://bugzilla.mozilla.org/rest/config/component_teams/Privacy%20and%20Security

{
  "Frontend": {
    "Core": [
      "Find Backend",
      "AutoConfig (Mission Control Desktop)",
      "Window Management"
    ],
    "Firefox": [
      "Toolbars and Customization",
      "Menus",
      "Bookmarks & History",
      "Preferences",
      "General",
      "Address Bar",
      "Installer",
      "Migration",
      "Search",
      "File Handling",
      "Page Info Window",
      "Tabbed Browser",
      "Disability Access",
      "Keyboard Navigation",
      "Session Restore",
      "Theme",
      "Downloads Panel",
      "Translation",
      "Tours",
      "Distributions",
      "Enterprise Policies",
      "WebPayments UI",
      "about:logins"
    ],
    "Toolkit": [
      "Downloads API",
      "Password Manager",
      "Application Update",
      "Startup and Profile System",
      "Form Manager",
      "View Source",
      "Find Toolbar",
      "Autocomplete",
      "Printing",
      "Preferences",
      "Toolbars and Toolbar Customization",
      "Storage",
      "XUL Widgets",
      "Places",
      "Themes",
      "Video/Audio Controls",
      "General",
      "Notifications and Alerts",
      "Reader Mode",
      "Password Manager: Site Compatibility",
      "WebPayments UI",
      "Form Autofill"
    ]
  }
}

(In reply to David Lawrence [:dkl] from comment #6)

(In reply to Marco Castelluccio [:marco] from comment #5)

Is https://bugzilla.mozilla.org/rest/config/component_teams going to be retired? Can I rely on the information from the "team" component field to always be up to date?

No. We are going to keep https://bugzilla.mozilla.org/rest/config/component_teams for the foreseeable future. The behavior has changed in that if you call without argument then it just returns the team names as a list. If you pass a team name as well you get more detailed information about the team.

Does the "no" apply to the second question as well? I'm trying to gauge whether I can just use a query such as https://bugzilla.mozilla.org/rest/product?type=accessible&include_fields=name&include_fields=components.name&include_fields=components.team_name, or if I need to keep using https://bugzilla.mozilla.org/rest/config/component_teams (taking into accout the behavior change) for the foreseeable future.

Flags: needinfo?(dkl)

(In reply to Marco Castelluccio [:marco] from comment #7)

Does the "no" apply to the second question as well? I'm trying to gauge whether I can just use a query such as https://bugzilla.mozilla.org/rest/product?type=accessible&include_fields=name&include_fields=components.name&include_fields=components.team_name, or if I need to keep using https://bugzilla.mozilla.org/rest/config/component_teams (taking into accout the behavior change) for the foreseeable future.

There's a single place where team names are stored in Bugzilla - as component.team_name.
Those two API calls are different views of the same data, use whatever is most convenient.

Flags: needinfo?(dkl)

(In reply to Marco Castelluccio [:marco] from comment #7)

Does the "no" apply to the second question as well? I'm trying to gauge whether I can just use a query such as https://bugzilla.mozilla.org/rest/product?type=accessible&include_fields=name&include_fields=components.name&include_fields=components.team_name, or if I need to keep using https://bugzilla.mozilla.org/rest/config/component_teams (taking into accout the behavior change) for the foreseeable future.

Sorry I wasn't clear enough before. As glob mentioned, the team name attribute is also visible in the component data returned by /rest/product so use whichever works for you.

You need to log in before you can comment on or make changes to this bug.