Commit Graph

103 Commits

Author SHA1 Message Date
machenbach@chromium.org
199ba41c06 Keep svn checkout up-to-date in roll scripts.
BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py

Review URL: https://codereview.chromium.org/551573002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-07 08:11:32 +00:00
machenbach@chromium.org
e9916e90f5 Add ability to make pure svn commits to roll scripts
BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py

Review URL: https://codereview.chromium.org/544153002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-07 08:02:05 +00:00
machenbach@chromium.org
a44c42a4da Add cwd to all shell commands in auto roll scripts.
The v8 root directory is assumed to be the default cwd. All
commands executed in another directory (e.g. the chromium
checkout) need an explicit specification (also in the
tests).

This also fixes several small testing and robustness bugs:
- Get rid of all 'rm ...' shell calls
- Don't leak tmp files/dirs
- Add some forgotten shell calls to the test expectations
- Hardcode the DEPS location (must always be
chromium_dir/DEPS)
- Expect correct return code when terminating gracefully

BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py

Review URL: https://codereview.chromium.org/540973002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23719 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 09:19:48 +00:00
machenbach@chromium.org
485168c8c6 Return 0 when roll scripts terminate gracefully.
BUG=408523
LOG=n
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/536403002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:19:44 +00:00
machenbach@chromium.org
55dc65f558 Make lookup of last v8 roll work with pure git.
BUG=410721
LOG=n
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/540843002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 09:56:29 +00:00
machenbach@chromium.org
33e56ef889 Make auto_roll run with a pure git checkout.
BUG=410721
LOG=n
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/540513002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23672 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 08:42:21 +00:00
machenbach@chromium.org
63e33ba0a0 Add more output when roll scripts are retrying.
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/529343003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 14:38:28 +00:00
machenbach@chromium.org
258ac97bac Correctly overwrite author in chromium roll script.
BUG=408523
LOG=n
R=jarin@chromium.org
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/535073002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 11:59:43 +00:00
machenbach@chromium.org
6a0567a9ea Add dry-run feature to auto roll scripts.
BUG=408523
LOG=n
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/529423002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 08:29:53 +00:00
machenbach@chromium.org
96c8427120 Make chromium-roll script non-interactive.
BUG=408523
LOG=n
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/532743002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 06:50:18 +00:00
machenbach@chromium.org
2f6e39d760 Refactoring: Unify all mocks in auto roll tests.
This allows to use shell command, readline and url
expectations in the same list, which makes their interaction
more explicit.

TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/533693002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 15:21:45 +00:00
machenbach@chromium.org
59ba3244f6 Refactoring: Unify mocks of different commands in auto roll tests.
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/527953002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 13:20:37 +00:00
machenbach@chromium.org
f445df9061 Fix chromium update in chromium roll script.
Needs an extra 'git pull' after a gclient sync, because the solution is
unmanaged now.

TBR=jarin@chromium.org,hinoka@chromium.org

Review URL: https://codereview.chromium.org/529883003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 12:56:07 +00:00
machenbach@chromium.org
20de507b21 Refactoring: Unify command mocks in v8 roll tests.
This unifies all mocks for shell commands (like git, svn,
gclient). The command name is now explicitly stated in the
test expectations, which allows to correctly test the few
commands that are not git.

TEST=./script_test.py
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/528973002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 12:51:30 +00:00
machenbach@chromium.org
c21026c816 Fix chromium update in auto-roller.
BUG=
R=hinoka@google.com

Review URL: https://codereview.chromium.org/511803002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 13:13:40 +00:00
machenbach@chromium.org
af08d3f286 Fix chromium sync command in auto-roller.
TBR=hinoka@chromium.org, jarin@chromium.org

Review URL: https://codereview.chromium.org/506273007

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:54:03 +00:00
machenbach@chromium.org
f435a218a5 Keep chromium checkout up to date in auto roller.
R=hinoka@google.com

Review URL: https://codereview.chromium.org/504443005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23438 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:38:55 +00:00
machenbach@chromium.org
801129919e Teach chromium_roll script to roll v8 git hashes.
TEST=script_test.py
R=hinoka@google.com

Review URL: https://codereview.chromium.org/504793002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 20:04:23 +00:00
machenbach@chromium.org
fa39a574cb Teach v8rel script to read git hashes from DEPS.
The chromium DEPS file can refer to v8 git hashes now. These
are converted back into svn revision numbers for the v8
releases spreadsheet.

The DEPS file's quotation mark policy changed which affects
the regexp for retrieving the v8 revision ("->').

TEST=script_test.py
TEST=tools/push-to-trunk/releases.py -c /path/to/chromium/src --branch recent
R=hinoka@google.com

Review URL: https://codereview.chromium.org/500023003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 13:39:43 +00:00
machenbach@chromium.org
082b65c5db Make v8 releases script ready for chromium git switch.
This uses chromium commit numbers that are supported after
the chromium git switch. Most functionality is copied from
the bot_update.py script from tools/build.

This also enables mapping bleeding edge revisions to chromium
revisions (previously the data was only retrieved for trunk).

TEST=script_test.py
TEST=tools/push-to-trunk/releases.py -c /path/to/chromium/src --branch recent

TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/497043002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 14:30:37 +00:00
machenbach@chromium.org
e251f91f0c Teach releases script to read bleeding_edge tags.
The command 'git svn log' does unfortunately not provide the tag-revision relation. We therefore use 'svn log' to retrieve it from the remote repository.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/421553002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-28 13:49:07 +00:00
machenbach@chromium.org
c218c20e54 Fix automatic tagging.
BUG=
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/417973002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 07:36:25 +00:00
machenbach@chromium.org
8c8e528850 Fix version check in push-to-trunk.
The local master branch is not kept up-to-date by the script.

BUG=
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/411593003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 09:25:36 +00:00
machenbach@chromium.org
049b4ad5e4 Fix automatic version update.
This fixes two things:
1. Guarantee that versions are bumped up also when presubmit errors exists. Those errors originate from other CLs and should not stop the automatic versioning.
2. Calculate the last bleeding edge version when pushing to trunk based on remote branch svn/bleeding_edge and not on local branch master. The master branch is not kept up-to-date by the script.

BUG=
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/404093002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-21 12:13:36 +00:00
machenbach@chromium.org
d9fa8f77e8 Add automatic tag script.
The script can be run in a cron job to automatically tag
lkgrs.

BUG=391261
LOG=n
TEST=tools/push-to-trunk/script_test.py
TEST=tools/push-to-trunk/auto_tag.py --dry_run
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/400693002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-18 12:16:14 +00:00
machenbach@chromium.org
570ea3bf5d Add script to bump up version on bleeding edge.
The version.cc file will from now on be controlled on
bleeding edge and on trunk. The next version to use will
always be max(bleeding_edge_version, trunk_version) + 1.

The trunk and bleeding_edge versions are not semantically
tied together. The trunk branch can be used to make
independent point releases of bleeding_edge revisions.

The version on bleeding_edge will be increased if:
- the lkgr version is smaller than the version of the latest
  revision,
- the lkgr version is not a version change itself,
- the tree is not closed for maintenance.

This will allow chromium to refer directly to bleeding_edge
revisions of v8. The v8 versions will not be unique, but
they will change as often as possible, dependent on the lkgr
cycle time and the frequency this script is called.

BUG=391261
LOG=n
TEST=tools/push-to-trunk/script_test.py
TEST=tools/push-to-trunk/bump_up_version.py --dry_run
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/389353003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-16 07:57:13 +00:00
machenbach@chromium.org
52ef087dcf Fix clusterfuzz check in auto-roll.
Minor fixes: Strip new lines from api key. Missing import. Use string query parameters.

BUG=
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/353813002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:44:59 +00:00
machenbach@chromium.org
7833a1321c Add clusterfuzz check to v8 auto-roll script and use CQ.
This adds a check step that makes sure there are no new issues when rolling into chromium.

It also checks the cq bit on roll upload.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/315133003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 08:17:45 +00:00
machenbach@chromium.org
45681c688d Remove old branch logic from push scripts.
The old temporary branch is not needed anymore. All scripts create a different branch after creating the temporary branch.

This also fixes logging subprocesses and logs a warning to track down script failures due to wrong branches.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/266083003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-05 15:16:26 +00:00
machenbach@chromium.org
0516f641cd Let releases script retrieve information about chromium branches.
BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/238443005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 11:33:19 +00:00
machenbach@chromium.org
8cab750a81 Let revision script add commit dates.
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/238983002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20763 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-15 12:00:53 +00:00
machenbach@chromium.org
0182a0f16a Make V8 releases script add useful links.
BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/227303005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 10:32:00 +00:00
machenbach@chromium.org
f1c2b7007d Fix chromium ranges output in v8 releases script.
Add space after commas for auto line break in spreadsheets.
Add default empty strings to avoid undefined values in spreadsheets.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/233343002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 07:40:48 +00:00
machenbach@chromium.org
fd8a2a7f7a Add V8 releases script.
This script retrieves the history of all V8 branches and trunk revisions and their corresponding Chromium revisions.

TEST=tools/push-to-trunk/releases.py -c <chrome path> --csv test.csv

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/227583002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:30:02 +00:00
machenbach@chromium.org
c9d8b90f1b Automatically determine current V8 sheriff in chromium-roll script.
BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/225283007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 12:07:49 +00:00
machenbach@chromium.org
4b222fb69e Make auto-roll script also roll patched trunk revisions.
This will allow the auto-roll bot to roll the last trunk patches, e.g. "Version 3.4.5.1 ...".

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/223863003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-04 07:23:45 +00:00
machenbach@chromium.org
48b8a545c4 Fix bug entry and quotation marks in merge-to-branch.
This fixes usage of quotation marks inside titles of merged patches.
This also fixes aggregation of empty or "none" BUG entries.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/223463003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20483 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 13:01:22 +00:00
machenbach@chromium.org
5f3c8a11fa Add merged patches to commit title in merge-to-branch.
This makes it easier to grep for patches in title in the revision history.

This also removes the redundant information into which branch was merged, as this can be derived from the version number in the title now.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/223753002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:57:33 +00:00
machenbach@chromium.org
18308b389c Add version number to commit message in merge-to-branch.
This is a step towards automatically rolling arbitrary trunk revisions into Chromium.

This also deprecates the bash scripts as they now start to divert.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/223093003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 09:42:18 +00:00
machenbach@chromium.org
eba6cb49c1 Fix auto-roll configuration.
TBR=jarin@chromium.org
BUG=

Review URL: https://codereview.chromium.org/221833003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 07:13:17 +00:00
machenbach@chromium.org
bde7527a07 Add execution permission to auto-roll script.
TBR=jarin@chromium.org
BUG=

Review URL: https://codereview.chromium.org/220203010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 07:04:53 +00:00
machenbach@chromium.org
0b246776ec Implement auto-roll script.
This script will (1) check if there is an active roll on rietveld (2) check if there is a trunk revision ready to be rolled and (3) call the chromium_roll script, creating a roll CL. The script will be called regularly through a cron job.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/212983003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 06:59:25 +00:00
machenbach@chromium.org
8311e24c2d Change auto-roll to auto-push for automatic trunk pushes.
The current script is only performing automatic pushes to trunk. This prepares for adding an auto-roll script that actually rolls to Chromium.

This also removes the v8-status updates, which are no longer necessary due to not touching bleeding edge any more.

BUG=
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/196173018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 15:52:31 +00:00
machenbach@chromium.org
db8196ae63 Fix options for calling push-to-trunk script.
BUG=
TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/209833002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 08:03:15 +00:00
machenbach@chromium.org
04a418c550 Let auto-roll push the lkgr.
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/205703004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 15:04:54 +00:00
machenbach@chromium.org
e134d32ff0 Split of rolling Chromium from push-to-trunk.
This moves rolling Chromium into a new script with its own tests.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/199733012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20159 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 12:15:25 +00:00
machenbach@chromium.org
b12ff51378 Allow to push arbitrary revisions when pushing to trunk.
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/206133004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 15:44:30 +00:00
machenbach@chromium.org
d7d4452e1c Deprecate prepare push commit when pushing to trunk.
- This also deprecates using version.cc on bleeding edge.
- The deprecated push-to-trunk.sh is deleted.
- The script now commits bleeding edge HEAD by default. Committing different revisions will be added in a follow up CL.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/203753010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 09:23:44 +00:00
machenbach@chromium.org
44e3cfc651 Retrieve current version from trunk branch in push-to-trunk.
- This moves retrieving and incrementing the version before creating the change log
- Before the prepare push commit will be deprecated (follow up CL), the script deals with 3 build levels. X: the current build level on the last trunk push. X + 1: the build level for this trunk push. X + 2: the build level of the new version file on bleeding edge (to be deprecated).

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/203773013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:10:41 +00:00
machenbach@chromium.org
23b0228614 Directly modify version file on trunk branch in push-to-trunk.
- This also shifts the push revision by one to prepare for the deprecation of the prepare push commit
- The version increment is still based on the bleeding_edge version.cc. This will be changed in a follow up CL.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/200763013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 10:46:24 +00:00