aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--infra/bots/recipes/swarm_presubmit.expected/presubmit.json46
-rw-r--r--infra/bots/recipes/swarm_presubmit.py39
2 files changed, 69 insertions, 16 deletions
diff --git a/infra/bots/recipes/swarm_presubmit.expected/presubmit.json b/infra/bots/recipes/swarm_presubmit.expected/presubmit.json
index 5e88fc3353..6eb60133a1 100644
--- a/infra/bots/recipes/swarm_presubmit.expected/presubmit.json
+++ b/infra/bots/recipes/swarm_presubmit.expected/presubmit.json
@@ -122,6 +122,16 @@
{
"cmd": [
"git",
+ "checkout",
+ "-b",
+ "tmp_00000000-0000-0000-0000-000000000000"
+ ],
+ "cwd": "[CUSTOM_/_B_WORK]/skia",
+ "name": "create git branch"
+ },
+ {
+ "cmd": [
+ "git",
"status"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
@@ -129,9 +139,10 @@
},
{
"cmd": [
- "RECIPE_PACKAGE_REPO[depot_tools]/presubmit_support.py",
- "--commit",
- "--upstream=HEAD^",
+ "git",
+ "cl",
+ "presubmit",
+ "--force",
"-v",
"-v"
],
@@ -142,6 +153,35 @@
"name": "presubmit"
},
{
+ "cmd": [
+ "git",
+ "reset",
+ "--hard",
+ "origin/master"
+ ],
+ "cwd": "[CUSTOM_/_B_WORK]/skia",
+ "name": "git reset"
+ },
+ {
+ "cmd": [
+ "git",
+ "checkout",
+ "origin/master"
+ ],
+ "cwd": "[CUSTOM_/_B_WORK]/skia",
+ "name": "checkout origin/master"
+ },
+ {
+ "cmd": [
+ "git",
+ "branch",
+ "-D",
+ "tmp_00000000-0000-0000-0000-000000000000"
+ ],
+ "cwd": "[CUSTOM_/_B_WORK]/skia",
+ "name": "delete git branch"
+ },
+ {
"name": "$result",
"recipe_result": null,
"status_code": 0
diff --git a/infra/bots/recipes/swarm_presubmit.py b/infra/bots/recipes/swarm_presubmit.py
index 84d82231e8..ad4802501f 100644
--- a/infra/bots/recipes/swarm_presubmit.py
+++ b/infra/bots/recipes/swarm_presubmit.py
@@ -21,20 +21,33 @@ def RunSteps(api):
api.vars.setup()
api.core.checkout_steps()
- api.step('git status',
- cmd=['git', 'status'],
+ # git-cl wants us to be on a branch.
+ branch = 'tmp_%s' % api.uuid.random()
+ api.step('create git branch',
+ cmd=['git', 'checkout', '-b', branch],
cwd=api.vars.skia_dir)
-
- depot_tools_path = api.depot_tools.package_repo_resource()
- script = depot_tools_path.join('presubmit_support.py')
- env = {'PATH': api.path.pathsep.join([str(depot_tools_path), '%(PATH)s'])}
- # TODO(borenet): --upstream=HEAD^ is a hack to force presubmit_support to
- # find a diff. Otherwise, it quits early with:
- # "Warning, no PRESUBMIT.py found."
- api.step('presubmit',
- cmd=[script, '--commit', '--upstream=HEAD^', '-v', '-v'],
- cwd=api.vars.skia_dir,
- env=env)
+ try:
+ api.step('git status',
+ cmd=['git', 'status'],
+ cwd=api.vars.skia_dir)
+
+ depot_tools_path = api.depot_tools.package_repo_resource()
+ env = {'PATH': api.path.pathsep.join([str(depot_tools_path), '%(PATH)s'])}
+ api.step('presubmit',
+ cmd=['git', 'cl', 'presubmit', '--force', '-v', '-v'],
+ cwd=api.vars.skia_dir,
+ env=env)
+ finally:
+ api.step('git reset',
+ cmd=['git', 'reset', '--hard', 'origin/master'],
+ cwd=api.vars.skia_dir)
+ api.step('checkout origin/master',
+ cmd=['git', 'checkout', 'origin/master'],
+ cwd=api.vars.skia_dir)
+ api.step('delete git branch',
+ cmd=['git', 'branch', '-D', branch],
+ cwd=api.vars.skia_dir)
+
def GenTests(api):