570 likes | 723 Views
Bugzilla Training. SCM Team Shanghai IS-IT Dept 2008-07-02. Functions. Bugzilla is the new Bug Tracking tool, replacing ClearDDTS from 2009 products Allow to track PR/CR Life Cycle and fields evolutions, using the same process as DDTS
E N D
Bugzilla Training SCM Team Shanghai IS-IT Dept 2008-07-02
Functions • Bugzilla is the new Bug Tracking tool, replacing ClearDDTS from 2009 products • Allow to track PR/CR Life Cycle and fields evolutions, using the same process as DDTS • Bugzilla is an open source tool developed by the Mozilla foundation: www.bugzilla.org • Bugzilla can be accessed by any Web browser Background: PR means Problem Report (bug), CR means Change Request
Summary • Login to Bugzilla • New account request • Submit a PR/CR • PR/CR fields • PR/CR Life Cycle • Updating PR/CR • PR/CR history • Search a PR/CR • Advanced search • Saving/editing Search • Cloning and clone synchronization • MTK PR/CR synchronization • QCT SR update • Request an action with Bugzilla flags • Check flags status • Setting preferences • Introduction to Bugzilla reports
Login to Bugzilla 1/2 • Access Bugzilla production server http://bugzilla.tcl-ta.com • Bugzilla Test server is accessible with http://172.24.61.17 • Enter Shanghai Active Directory login/passwd • Shanghai employees: Windows login/passwd • Shenzhen employees: Specific login/passwd created on Shanghai AD • Employees connecting to Shanghai VPN: VPN login/passwd • PLM users: same account • VPN for SAP: same account • Any account problem: • loic.poysat@tcl.com • denny.yang@jrdcom.com for Shenzhen
Login to Bugzilla 2/2 1 2 3
New account request • For Shanghai employees, Bugzilla account is created when joining the company • For Shenzhen employees, contact denny.yang@jrdcom.com with CC: to your Team Leader • For employees in LATAM and EMEA, ask eric.chen@tcl.com or loic.poysat@tcl.com for account creation • Don’t forget to precise which projects you need to be granted access to: • MTK • QCT • CDMA • Data Card • …
Submit a PR/CR 1/4 • To submit a PR/CR, click on the “New” link and access the classifications menu • Click on the classname (“SW” for Software, “DT” for VAL) and access the products menu • Click on the product name and access the submit form • Enter the PR information, by at least filling mandatory fields (red fields) • If you need to submit an attachment, click on the “Add an attachment” button and fill the needed information (path to the file to attach or URL to the document, description of the attachment) • Click on the “Commit” button • If any information is missing or a problem occurs, either a popup or a text message informs you
Submit a PR/CR 3/4 Write the first letters of the name or press the down-arrow key to display the whole list
PR/CR fields 1/2 • Mandatory fields
PR/CR fields 2/2 • Optional fields
PR/CR Life Cycle 2/5 • NEW: New PR/CR, submitted • Can only be updated to ASSIGNED (with a specific resolution: To investigate, To correct, To correct again, To decide) • “Next Ref” may indicate the target release for this PR/CR • Summary, Release, IPR can be modified • Empowered users can add a “Comment from CEA” • Empowered users can set the PR to CLOSED directly • ASSIGNED: PR/CR assigned to a technical team member for analyze • Summary, Release and IPR cannot be modified anymore • PR/CR can be OPENED (Accepted or Refused) • An “External Ref” can be provided to give workaround or explanation concerning a PR • PR/CR can be REASSIGNED to another user • PR/CR can be POSPONED (a postponed release is provided)
PR/CR Life Cycle 3/5 • OPENED: The PR/CR analyze or fix/implementation begins • Can be updated to INVESTIGATED (DT class). The “deadline” must be provided to indicate INT Team when the PR/CR must be delivered. The target delivery can be indicated using the “next ref” field • Can be updated to RESOLVED (SW class) • If PR/CR is set to RESOLVED, you can ask another user to deliver it • POSTPONED: The PR/CR is postponed • PR/CR can be postponed before analyze: not urgent PR • PR/CR can be postponed after resolution: the PR will be delivered later, in a MNT release for example • Postponed PR/CR can be closed by empowered users (when rejected for example) • Else, postponed PR/CR are REASSIGNED when needed
PR/CR Life Cycle 4/5 • INVESTIGATED: The PR/CR analyze has been done • Automatically done in DT class when cloning PR/CR in SW class • Set manually for non-clone PR/CR, a deadline is mandatory • RESOLVED: The PR/CR is implemented • PR/CR reasons have been identified: originator of the PR/CR, sub module concerned, cause of the PR/CR, inherited PR from an old project • PR/CR resolution must be explained in a comment • DT PR are automatically set to RESOLVED when SW clone PR is VERIFIED-Validated • PR/CR can be set to DELIVERED. If so, you can ask someone to verify it • PR/CR delivery can also be POSTPONED
PR/CR Life Cycle 5/5 • DELIVERED: The PR/CR implementation is delivered • “New Ref” mandatory = patch implementing the PR/CR or product release where the PR/CR is delivered • For SW class, a reviewer must be granted. He/she is notified and must review the code modification • VERIFIED: The PR/CR fix/implementation is verified • Can be Validated or Refused • Must be reviewed positively (review = “+” in SW) to be validated • Refused PR/CR are set to REASSIGNED after investigation. Refusal must be explained in a dedicated comment • CLOSED: The PR/CR process is closed • All fields cannot be modified anymore • If the PR/CR is set to CLOSED with an “non-normal” reason, an explanation must be provided in a dedicated comment • “Duplicate” status is a specific case where a PR/CR is doubled in the database. The duplicated PR/CR ID must be provided in this case
Updating PR/CR 1/5 • Update fields: • Modify values of select boxes • Input text in text area • Add or remove people from the Cc list • … • Add additional comments using text area. By clicking on the “Reply” link, your comment is recorded below a copy of the previous comment • Note: description and commentscannot be modified nor removed. Only empowered users can set the desc/comments as “private” (invisible for other users) • Mandatory fields are marked as red. Fields are mandatory ONLY if you update the PR/CR to next status • If you don’t update the PR/CR status, no need to fill red fields • Ex: “Next Ref” ONLY mandatory when updating PR/CR from RESOLVED to DELIVERED
Updating PR/CR 2/5 • PR/CR status update • Use radio button at the bottom of the page • Only authorized values appear (defined by the Life Cycle) • Enter specific information (resolution, reason, answer, new assignee…) if needed • Click on the “Commit” button to submit changes • To add attachment, click on the “Add an attachment” link • Another html form is loaded to enter attachment info • Enter the file path or the URL toward the document • Enter a description (mandatory) • Optional: you can add a comment that is displayed in the PR/CR comments list • WARNING: when adding attachment, all PR/CR modification are not taken into account! 1) Modify PR/CR values/status 2) Click on the “Commit” button to submit the changes 3) Click on “Add an attachment” after having updated PR/CR values
Updating PR/CR 3/5 Modify fields using select boxes or text area Add additional comments to the PR/CR Red fields are mandatory ONLY if you change the bug status: here a reviewer must be set when updating the PR/CR to DELIVERED Update the status with radio buttons Add information about resolution or future release Click on “Commit” to submit your modifications
Updating PR/CR 4/5 Another example Leave to current status Update resolution information concerning current status New_assignee@tcl.com 168 Update to another status according to Life Cycle possibilities Add information according to the chosen status • When reassigning PR/CR: • Select “Reassign” status • Enter the new assignee email address from the Bugzilla users list • Choose the appropriate resolution (action to perform) • When closing PR/CR as duplicate: • Select “duplicate” status • Enter the PR/CR number that report the same problem or change request
Updating PR/CR 5/5 Adding attachment Click on the link WARNING: another HTML page is displayed, no modification from the PR/CR page is kept. Be sure to have submitted your changes if needed File or URL to add Mandatory description of the attachment Set a reviewer for the attachment by selecting “?” and entering the Bugzilla user from the list ? Reviewer@tcl.com Add a comment to the PR/CR Note: the comment is added in the PR/CR comment list Add a comment to the PR/CR….. Submit the attachment and its information
PR/CR history On the PR/CR page, check the “Related actions” and click on the “View Bug Activity” link Display all changes during the PR/CR life 2 3 4 1 5 1- User who modified the PR/CR 2- Date of modification 3- Concerned field 4- Old value 5- New value To go back to the PR/CR page
Search a PR/CR 1/2 Enter the PR/CR ID number for a direct access to the PR/CR page Or enter some keywords to get the list of PR/CR containing these keyword in the summary title or PR/CR comments Permanent search boxes in header and footer Click on “Search” to access the search form
Search a PR/CR 2/2 • Status • Open: NEW, ASSIGNED, OPENED, INVESTIGATED or POSTPONED • Closed: RESOLVED, DELIVERED, VERIFIED or CLOSED • All: all status • Product • All products • Within a specific product (sorted by classification) • Words • Enter one or several keywords to specify the search • Let it empty to get the list of PR/CR concerning specific product/status
Advanced search 1/7 Click on the “Advanced Search” tab to access the form Click on “Search” to get the PR/CR list Select a class and/or product to reduce the search scope Enter information concerning a specific field • Notes: • All provided information restricts the search • An empty search the list of all PR/CR • Selecting several values for one field provides the list of all the bugs that match at least one of the values Example: If you select SW.TOOLS and SW.SCM products, the result list contains both bugs from SW.TOOLS and SW.SCM products
Advanced search 2/7 • Text search • Search on textual fields such as summary, comments, URL… • String: used for a set of characters => searching “bug” returns words like “bug”, “bugs”, “bugzilla”… • Word: used for a specific word => searching “bug” only returns results containing the exact word “bug” • Exact case: case-sensitive search => “bug” is different from “Bug” • All: returns results that contain all words/strings (AND search) • Any: returns results that contain at least one of the words/strings (OR search) • Select box • Click on the value you want to select • Press <Ctrl> key and click another value to select several values • Press <Ctrl> key and click on a selected value to cancel selection
Advanced search 3/7 • Search on main fields • Select the needed values by pressing <Ctrl> key • Press <Ctrl> key to unselect values • Email addresses • Select the role your search is about • Enter the Bugzilla user from the list • Bug Numbers • Search a precise set of PR/CR • Enter the bugs IDs • “Include” or “exclude” these PR/CR from the search result
Advanced search 4/7 • Track bugs changes • Enter the period of time to track changes on • Use “Now” for the current date • Track fields changes • Select precise fields that has changed • Use <Ctrl> key to select several values or to unselect • Precise new value • Select one single field to track • Enter the new value you are looking for Example: To get all PR/CR delivered for b7_x_v1.0_sw543 => Enter a period of time => Select “Next Ref” field => Enter “b7_x_v1.0_sw543” as new value • Select the sorting you need and save it as default
Advanced search 5/7 • Advanced Search Using Boolean Charts • Precise a field for your search • Precise the condition to use on this field • Propose a value that is coherent with the chosen field and the condition
Advanced search 6/7 • Advanced Search Using Boolean Charts • Precise a field for your search • Precise the condition to use on this field • Propose a value that is coherent with the chosen field and the condition • Quote “Not” box to get the opposite result => Here, we get IPR different from 500 • Click on the “Or” button to display a new condition => Perform a search like “IPR=500 or IPR=600” • Click on the “And” button to display a new condition that restricts the search => Perform a search like “IPR=500 and reporter is loic.poysat@jrdcom.com”
Advanced search 7/7 • Advanced Search Using Boolean Charts • In this more advanced example, we try to find PR/CR: - concerning Audioor Driver components - with a Detectionand Frequency higher than 2 - that have been assigned to Cissy Xu or Loic Poysat • If you use “Not” statement, you get all PR/CR that was not included in the previous search • You can also “Add another boolean chart” to specify other search criteria => The search result matches both charts (AND search)
Saving/editing search 1/2 Training search • To saved your search • Enter the search name in the text box in the bottom right corner • Click on the “Remember search” button • This create a new link at the bottom of the web page • Click on the link to retrieve the bug list • Click on the “Forget Search” link to remove the search link from the page • Modify your search by clicking on the “Edit Search” link
Saving/editing search 2/2 • To change display other fields • Click on the “Change Columns” link • Select the new columns you want to display • Click on the “Change Columns” button • You can export the bug list in several format • CVS • XML • Long Format • (get more details on PR/CR during review)
Cloning and clone synchronization 2/7 DT PR • A PR is first entered by Validation in DT class (Status = NEW) • Then the PR is assigned to the Validation engineer in charge (Status = ASSIGNED) • When Validation engineer analyses a Software problem, he clones the PR in SW class, using the link “Transfer this Bug to SW class” • Cloning synchronization: • SW PR is created by copying PR values and assigned to INT team • DT PR is automatically set to INVESTIGATED • DT PR will be automatically set to RESOLVEDwhen SW PR is VERIFIED Validated
Cloning and clone synchronization 3/7 SW cloned PR Inherited values from the parent clone in DT class Parent/Child link created between the DT and SW PRs
Cloning and clone synchronization 4/7 • SW PR is delivered: • Resolution indications are fulfilled in patch_deliver • “New Ref“ is set to the patch label • Description of the patch is set as PR comment • PR status is set to DELIVERED • Patch reviewer is informed • SCM Web is updated
Cloning and clone synchronization 5/7 • Verifying SW PR: • Fulfill resolution indications for the DT parent PR • Ensure that the patch has been reviewed positively • Set the PR status to VERIFIED with resolution Validated • SW PR VERIFIED • => Parent PR is automatically set to RESOLVED in DT class
Cloning and clone synchronization 6/7 • DT PR delivery: • Enter the release delivery that contains the PR/CR implementation in “New Ref” field • Note: resolution indications have been automatically updated by PR synchronization • Update the PR status to DELIVERED • Once the Software delivery has been released, Validation tests the new software and update the PR status to VERIFIED Validated or Refused
Cloning and clone synchronization 7/7 • Create a Brother link • Just reference the same PR/CR for two different projects • No synchronization between brother PRs
MTK PR/CR synchronization 1/2 • Select SW.XX_PLATFORM product that refers to the concerned MTK project • Enter mandatory fields (marked as red) for MTK: • Summary • Issue Class: Bug, Change Feature, New Feature, Question • Priority: 1-High, 2-Medium, 3-Low • Due Date: ~ deadline • Bug Category: from list • MTK Project: from list • MTK Release: from list • Description • Attachment if needed • Enter Mandatory internal fields (marked as red) : • Issue Type (PR/CR) • Component and Function • IPR settings • Assign to yourself or to the JRD contact in charge • Click on the “Commit” button
MTK PR/CR synchronization 2/2 • You cannot submit more comment nor attachment until MTK accepts the PR/CR • When MTK accepts the PR/CR, it provides an “Issue ID” • It is then possible to submit more comments (using the “Additional Comment” text area) or attachments (using the “Add an attachment” button) • MTK information, provided as comments or fields update, are synchronized according to MTK feedback • MTK comments and updates are made by CC_MTK@JRDCOM.COM Bugzilla user (fake user) • Any problem with MTK synchronization, contact yuanhua.li@jrdcom.com
QCT PR/CR update 1/2 • No synchronization available to submit information to Qualcomm • SR creation and additional notes are managed on Qualcomm SR System https://support.cdmatech.com/login/ • Weekly synchronization is performed under Bugzilla (import of Excel reports) • JRD employee is owner of the Bugzilla PR • CC_QCT@JRDCOM.COM is used for Qualcomm’s comments and information updates (fake user) • Attachments are not synchronized; can be manually imported under Bugzilla if needed • Internal fields can be set and updated (Component, Function, SW Team, IPR settings…)
QCT PR/CR update 2/2 PR internal information PR information concerning QCT Detailed Problem Description, entered on QCT SR System, imported under Bugzilla and owned by JRD Bugzilla account Comment from Qualcomm engineer, available on QCT SR System and imported on Bugzilla with cc_qct account
Request an action with Bugzilla flags 1/2 • Bugzilla Flags = status that can be set on bugs or attachments to indicate that the bugs/attachments are in a certain state or to require specific actions on the bugs • 4 kinds of flags are used: • Review flag: ask someone to review a patch (mandatory for SW class) • Attachment flag: used to ask someone to review an attachment • Deliver this PR: to ask someone to deliver a PR • Verify this PR: to ask someone to verify a PR SW patch must be reviewed with “+” before the PR can be VERIFIED and synchronized with DT PR Email notification to inform coworker that a PR is ready to be delivered or verified
Request an action with Bugzilla flags 2/2 • Set a flag by selecting “?” and entering the Bugzilla user you request in the text box • Valid a flag by selecting “+” if the patch review or attachment is OK • In case of problem, select “-” to refuse the patch or attachment Patch review OK ? Loic.poysat@tcl.com + Loic.poysat@tcl.com Problem with the attachment - Loic.poysat@tcl.com Loic.poysat@tcl.com ? Actions required: only “?” is used ? Loic.poysat@tcl.com
Check flags status • Browse open requests by selecting “My Requests” from the header or footer • Look at open requests limited by other requesters, requestees, and flag names from the “My Requests” page Requester: person who asked Requestee: person who must perform the action Other filters: by product, flag, component… Example grouped by flag
Setting preferences 1/4 • Click on “Preferences” in the header or footer menu • Use preferences tabs to display general and email preferences, edit saved searches and display your Bugzilla permissions
Setting preferences 2/4 • Set your preferences: • Skin • Automatic CC • Update display • Description and comments display Bugzilla permissions They determine which product you have access to At first login, only act group is granted for internal applications and tools Other permissions (mtk, qct, cdma, datacard…) must be granted by your Bugzilla administrator