[roll] Roll infra/recipes [fuchsia/fuchsia] Use test_filterer to handle presubmit retry logic Use test_filterer to compute the skipped shards and what tasks and tests should be run on presubmit retries. Summary of changes: - Introduce a new recipe module, test_filterer. This module is responsible for calling a test_filterer binary to determine which tests should be run on presubmit retries and what tests/shards should be skipped. - Move the logic for filtering which shards and tests to run out of `recipe_modules/testing/api.py` and handle it in the external test_filterer tool. - Update the `fuchsia.py` recipe to call this new `test_filterer` module, passing information about tefmocheck failures to the filterer. - Remove the logic for filtering out GCE shards as this should be safe to remove now (see TODO). Testing: Tested this by running the following command ``` led get-build 8685160904322786961 | led edit-system -p 20 | led edit-recipe-bundle | led edit -p 'skip_building_fuchsia_on_cq_retry=true' -p 'skip_test_shards_on_cq_retry=true' -p 'only_run_previously_failed_tests=true' | led launch ``` Upon completion of the build, I ran the following query using the original build id, 8685533179891827121, and the build id of the resulting led subbuild (the subbuild that reuses build artifacts). ``` SELECT test_id, status, exported.id, tags FROM `fuchsia-infra.resultdb.try` WHERE partition_time > TIMESTAMP_SUB(current_timestamp(), INTERVAL 14 DAY) and exported.id = "build-<build-id>" LIMIT 1000 ``` The results of the queries are expected to be the same save for the following exceptions: - gn gen and ninja results are not expected to be in the led subbuild test results - the tests that passed in the original build are expected to have the status SKIP While tests that failed on the original build could also pass on the led subbuild, that did not occur during this testing. Original-Bug: b/446690992 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/recipes/+/1564813 Original-Revision: ebc12876f30fdbcd37be0fc5d93811aa6d031e21 GitOrigin-RevId: 5bcb533ca2c4f914a4dc093f16de7349bb2ce015 Change-Id: Ifa890632b9e7a0580b972a2cc75d24169f2c70c5
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.