Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(266)

Unified Diff: commit-queue/verification/trigger_experimental_try_job.py

Issue 133993005: Trigger experimental recipe-based trybots for 1% of Chromium CLs. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « commit-queue/projects.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: commit-queue/verification/trigger_experimental_try_job.py
===================================================================
--- commit-queue/verification/trigger_experimental_try_job.py (revision 0)
+++ commit-queue/verification/trigger_experimental_try_job.py (revision 0)
@@ -0,0 +1,38 @@
+# coding=utf8
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+"""Triggers experimental try jobs on Rietveld without monitoring the results."""
+
+import random
+import urllib2
+
+from verification import base
+
+
+class TriggerExperimentalTryJobVerifier(base.Verifier):
+ name = 'trigger experimental try job'
+
+ def __init__(self, context, percentage, try_job_description):
+ super(TriggerExperimentalTryJobVerifier, self).__init__()
+ self.context = context
+ self.percentage = percentage
+ self.try_job_description = try_job_description
+
+ def verify(self, pending):
+ if random.random() < self.percentage:
+ try:
+ self.context.rietveld.trigger_try_jobs(
+ pending.issue, pending.patchset, 'CQ', False, 'HEAD',
+ self.try_job_description)
+ except urllib2.HTTPError as e:
+ if e.code not in (400, 500, 503):
+ raise
+
+ # Always succeed - experimental try jobs are not stable enough
+ # to block CQ on them, but triggering builds allows developers
+ # to get enough real-world traffic to get them to stable state.
+ pending.verifications[self.name] = base.SimpleStatus(base.SUCCEEDED)
+
+ def update_status(self, queue):
+ pass
Property changes on: commit-queue/verification/trigger_experimental_try_job.py
___________________________________________________________________
Added: svn:eol-style
+ LF
« no previous file with comments | « commit-queue/projects.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698