1. To make Flake Analyzer merge similar bugs. 2. To avoid filing duplicate bugs.
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61 commit 014fbbf194e713c1b3a7d514e3b9d1bd12cadc61 Author: Yuke Liao <liaoyuke@chromium.org> Date: Mon Aug 20 18:16:03 2018 [FindIt] Create flake_report_util.py for Flake Analyzer This is a pure refactoring CL. This is the first step towards implementing a unified bug filing interface within FindIt: to move all Flake Analyzer specific logic out of services/issue_tracking_service.py and put them int a utility file under services/flake_failure/. Bug: 875899 Change-Id: I45328559265f8e8cfa0d4468540e660e6014c4b8 Reviewed-on: https://chromium-review.googlesource.com/1181503 Reviewed-by: Roberto Carrillo <robertocn@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> Commit-Queue: Yuke Liao <liaoyuke@chromium.org> [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py [add] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/flake_failure/test/flake_report_util_test.py [add] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/flake_failure/flake_report_util.py [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py [modify] https://crrev.com/014fbbf194e713c1b3a7d514e3b9d1bd12cadc61/appengine/findit/services/issue_tracking_service.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/3f052bc0f5f568ce1688dd055bda37e487db4e27 commit 3f052bc0f5f568ce1688dd055bda37e487db4e27 Author: Yuke Liao <liaoyuke@chromium.org> Date: Tue Aug 21 16:35:49 2018 [FindIt] Consolidate and improve searching for existing bugs This CL consolidate existing functions that search for open issues related to a flaky test on Monorail and provides a single API. This CL also makes an improvement to the search: Searching for test name in the summary alone is not enough, for example, 'suite.test needs to be rewritten' is not about falkiness, so this CL adds the folowing additional requirements to determine if an issue is related to flakiness (requires at least one): 1. The issue has label: Test-Flaky. 2. The issue has component: Tests>Flaky. 3. The issue has one of the ['flake', 'flaky', 'flakiness'] keywords in the summary. Bug: 875899 Change-Id: I58f0a47424da9a580c765fcd5ce047bee2d25810 Reviewed-on: https://chromium-review.googlesource.com/1181502 Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_failure/test/flake_report_util_test.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_detection/test/flake_report_util_test.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_failure/flake_report_util.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/flake_detection/flake_report_util.py [modify] https://crrev.com/3f052bc0f5f568ce1688dd055bda37e487db4e27/appengine/findit/services/issue_tracking_service.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/c601bed83b7d212122e369da3c038c83a198d398 commit c601bed83b7d212122e369da3c038c83a198d398 Author: Yuke Liao <liaoyuke@chromium.org> Date: Fri Aug 24 21:32:05 2018 [FindIt] Redesign traverse issue merge chain API There were two APIs (TraverseMergedIssues and GetBugForId) that have the exactly same purpose: find the destination issue in the merge chain, there three problems: 1. The |GetBugForId| name is very confusing, which has no indication that it traverses the merge chain. 2. |TraverseMergedIssues| needs to take a IssueTrackerAPI as input, which is unnecessary and inconvenient. 3. It's always unclear which one to use, and it has caused some inconsistencies in the code base. This CL creates a new API to replace them and also clean up all the caller sites accordingly. Bug: 875899 Change-Id: I96da20b166474f9a239e9089cdfac3f3c4547763 Reviewed-on: https://chromium-review.googlesource.com/1187221 Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> Commit-Queue: Yuke Liao <liaoyuke@chromium.org> [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/flake_detection/test/flake_report_util_test.py [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/flake_detection/flake_report_util.py [modify] https://crrev.com/c601bed83b7d212122e369da3c038c83a198d398/appengine/findit/services/issue_tracking_service.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/e256d35ed231bc37c4476a2d15f4a1c4943bad8c commit e256d35ed231bc37c4476a2d15f4a1c4943bad8c Author: Yuke Liao <liaoyuke@chromium.org> Date: Mon Aug 27 15:54:39 2018 [FindIt] Implement issue generator and change Flake Detection to use it This CL creates the IssueGenerator class, and the intention is to provide a unified bug filing interface and logic that can be applied to both Flake Detection and Flake Analyzer. This CL first switches Flake Detection to use the new interface, and once it sticks, will switch Flake Analyzer to use it. For more details, please refer to: https://docs.google.com/document/d/1CIvy_3pelb5fbzOsm4mc-Gg_-1pvivEx0WowsfzgF1M/edit#heading=h.lp7pod8di42k Bug: 875899 Change-Id: I45fd75c53d9588c8bc668b9822a6227bf5f71658 Reviewed-on: https://chromium-review.googlesource.com/1182512 Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/model/flake/detection/test/flake_issue_test.py [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/model/flake/detection/flake_issue.py [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/flake_detection/test/flake_report_util_test.py [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/flake_detection/flake_report_util.py [modify] https://crrev.com/e256d35ed231bc37c4476a2d15f4a1c4943bad8c/appengine/findit/services/issue_tracking_service.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68 commit 3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68 Author: Yuke Liao <liaoyuke@chromium.org> Date: Tue Aug 28 18:55:16 2018 [FindIt] Refactoring previous tracking bug id This CL is a pure refactoring. This CL refactors the previous_tracking_bug_id to hide within the IssueGenerator class so as to simplify the public APIs. Bug: 875899 Change-Id: Id2f06a454bb8d87e9fa1055d411ee37e8222bfc5 Reviewed-on: https://chromium-review.googlesource.com/1194293 Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> [modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/flake_detection/flake_report_util.py [modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/3f56b38dcf75ed3c7cf8a09ff04be19f14bb4e68/appengine/findit/services/issue_tracking_service.py
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/d2cf9bbc5e1319f5d264118adde22d70b04e501b commit d2cf9bbc5e1319f5d264118adde22d70b04e501b Author: Yuke Liao <liaoyuke@chromium.org> Date: Tue Aug 28 20:51:21 2018 [FindIt] Make restore labels configurable 1. This CL implementes a switch to control whether to restore Chromium Sheriff label when update bugs in the issue generator class. 2. This CL changes the behavior to not reset priority when update bugs. Bug: 875899 Change-Id: Ie97a79366385889fd89f6fdb123ce975812fb6b5 Reviewed-on: https://chromium-review.googlesource.com/1194294 Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> [modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/flake_detection/flake_report_util.py [modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/d2cf9bbc5e1319f5d264118adde22d70b04e501b/appengine/findit/services/issue_tracking_service.py
Issue 849837 has been merged into this issue.
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/ea2b4becf13b925a992c0c3928875136555a70e8 commit ea2b4becf13b925a992c0c3928875136555a70e8 Author: Yuke Liao <liaoyuke@chromium.org> Date: Fri Aug 31 16:39:44 2018 [FindIt] Switch Flake Analyzer to use Issue Generator class This CL switches Flake Analyzer to use the Issue Generator class to create or update bugs. Bug: 875899 Change-Id: I68e9d52e4012ee29e43aeefb5f4b3673690b11e5 Reviewed-on: https://chromium-review.googlesource.com/1194885 Commit-Queue: Yuke Liao <liaoyuke@chromium.org> Reviewed-by: Roberto Carrillo <robertocn@chromium.org> Cr-Commit-Position: refs/heads/master@{#17350} [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/test/update_monorail_bug_pipeline_test.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/test/create_bug_for_flake_pipeline_test.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/test/issue_tracking_service_test.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/update_monorail_bug_pipeline.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/flake_failure/test/flake_report_util_test.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/flake_failure/flake_report_util.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/pipelines/flake_failure/create_bug_for_flake_pipeline.py [modify] https://crrev.com/ea2b4becf13b925a992c0c3928875136555a70e8/appengine/findit/services/issue_tracking_service.py
Comment 1 by liaoyuke@chromium.org
, Aug 20Labels: flake-detection