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

Unified Diff: appengine/findit/waterfall/build_failure_analysis_pipelines.py

Issue 2026283002: [Findit] Adding logic to force try jobs regardless of bailout or previous results (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Addressing comments and rebase Created 4 years, 6 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
Index: appengine/findit/waterfall/build_failure_analysis_pipelines.py
diff --git a/appengine/findit/waterfall/build_failure_analysis_pipelines.py b/appengine/findit/waterfall/build_failure_analysis_pipelines.py
index c9fbd2b3756588e80b7538be22d7a05833140abb..204cf7cd12d83b204b1e764ce2972d7e5a63c612 100644
--- a/appengine/findit/waterfall/build_failure_analysis_pipelines.py
+++ b/appengine/findit/waterfall/build_failure_analysis_pipelines.py
@@ -9,10 +9,11 @@ from google.appengine.ext import ndb
from common import appengine_util
from common import constants
-from model.wf_analysis import WfAnalysis
from model import analysis_status
+from model.wf_analysis import WfAnalysis
from waterfall import analyze_build_failure_pipeline
+
@ndb.transactional
def NeedANewAnalysis(
master_name, builder_name, build_number, failed_steps,
@@ -75,6 +76,7 @@ def ScheduleAnalysisIfNeeded(master_name, builder_name, build_number,
failed_steps=None,
build_completed=False,
force=False,
+ force_try_job=False,
queue_name=constants.DEFAULT_QUEUE):
"""Schedules an analysis if needed and returns the build analysis.
@@ -89,6 +91,8 @@ def ScheduleAnalysisIfNeeded(master_name, builder_name, build_number,
build_completed (bool): Indicate whether the build is completed.
force (bool): If True, a fresh new analysis will be triggered even when an
old one was completed already; otherwise bail out.
+ force_try_job (bool): Indicate whether or not a try job should be run or
+ rerun as long as a corresponding try bot is configured.
queue_name (str): The task queue to be used for pipeline tasks.
Returns:
@@ -98,7 +102,8 @@ def ScheduleAnalysisIfNeeded(master_name, builder_name, build_number,
master_name, builder_name, build_number, failed_steps,
build_completed, force):
pipeline_job = analyze_build_failure_pipeline.AnalyzeBuildFailurePipeline(
- master_name, builder_name, build_number, build_completed)
+ master_name, builder_name, build_number, build_completed,
+ force_try_job)
# Explicitly run analysis in the backend module "waterfall-backend".
# Note: Just setting the target in queue.yaml does NOT work for pipeline
# when deployed to App Engine, but it does work in dev-server locally.
« no previous file with comments | « appengine/findit/waterfall/analyze_build_failure_pipeline.py ('k') | appengine/findit/waterfall/monitor_try_job_pipeline.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698