Changeset 46563 in webkit


Ignore:
Timestamp:
Jul 29, 2009 4:48:25 PM (15 years ago)
Author:
ddkilzer@apple.com
Message:

<http://webkit.org/b/27082> bugzilla-tool: Add --no-close switch to land-patches

Reviewed by David Levin.

  • Scripts/bugzilla-tool: (LandPatchesFromBugs.init): Added --no-close switch. (LandPatchesFromBugs.land_patches): Don't close the bug if the --no-close switch was used. Always clear the review+ flag on every landed patch using the commit_text message when cleared. This prevents patches from showing up in the commit queue if reopened and provides consistency with all landed patches.
  • Scripts/modules/bugzilla.py: (Bugzilla.clear_attachment_review_flag): Added.
Location:
trunk/WebKitTools
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKitTools/ChangeLog

    r46554 r46563  
     12009-07-29  David Kilzer  <ddkilzer@apple.com>
     2
     3        <http://webkit.org/b/27082> bugzilla-tool: Add --no-close switch to land-patches
     4
     5        Reviewed by David Levin.
     6
     7        * Scripts/bugzilla-tool:
     8        (LandPatchesFromBugs.__init__): Added --no-close switch.
     9        (LandPatchesFromBugs.land_patches): Don't close the bug if the
     10        --no-close switch was used.  Always clear the review+ flag on
     11        every landed patch using the commit_text message when cleared.
     12        This prevents patches from showing up in the commit queue if
     13        reopened and provides consistency with all landed patches.
     14        * Scripts/modules/bugzilla.py:
     15        (Bugzilla.clear_attachment_review_flag): Added.
     16
    1172009-07-29  David Kilzer  <ddkilzer@apple.com>
    218
  • trunk/WebKitTools/Scripts/bugzilla-tool

    r46554 r46563  
    270270            make_option("--force-clean", action="store_true", dest="force_clean", default=False, help="Clean working directory before applying patches (removes local changes and commits)"),
    271271            make_option("--no-clean", action="store_false", dest="clean", default=True, help="Don't check if the working directory is clean before applying patches"),
     272            make_option("--no-close", action="store_false", dest="close_bug", default=True, help="Leave bug open after landing."),
    272273            make_option("--no-build", action="store_false", dest="build", default=True, help="Commit without building first, implies --no-test."),
    273274            make_option("--no-test", action="store_false", dest="test", default=True, help="Commit without running run-webkit-tests."),
     
    320321                tool.scm().apply_patch(patch)
    321322                comment_text = cls.build_and_commit(tool.scm(), options)
    322 
    323                 # If we're commiting more than one patch, update the bug as we go.
    324                 if len(patches) > 1:
    325                     tool.bugs.obsolete_attachment(patch['id'], comment_text)
    326 
    327             if len(patches) > 1:
    328                 comment_text = "All reviewed patches landed, closing."
    329 
    330             tool.bugs.close_bug_as_fixed(bug_id, comment_text)
     323                tool.bugs.clear_attachment_review_flag(patch['id'], comment_text)
     324
     325            if options.close_bug:
     326                tool.bugs.close_bug_as_fixed(bug_id, "All reviewed patches have been landed.  Closing bug.")
    331327        except ScriptError, e:
    332328            # We should add a comment to the bug, and r- the patch on failure
  • trunk/WebKitTools/Scripts/modules/bugzilla.py

    r46538 r46563  
    351351        return bug_id
    352352
     353    def clear_attachment_review_flag(self, attachment_id, additional_comment_text=None):
     354        self.authenticate()
     355
     356        comment_text = "Clearing review flag on attachment: %s" % attachment_id
     357        if additional_comment_text:
     358            comment_text += "\n\n" + additional_comment_text
     359        log(comment_text)
     360
     361        if self.dryrun:
     362            return
     363
     364        self.browser.open(self.attachment_url_for_id(attachment_id, 'edit'))
     365        self.browser.select_form(nr=1)
     366        self.browser['comment'] = comment_text
     367        self.browser.find_control(type='select', nr=0).value = ("X",)
     368        self.browser.submit()
     369
    353370    def obsolete_attachment(self, attachment_id, comment_text = None):
    354371        self.authenticate()
Note: See TracChangeset for help on using the changeset viewer.