Standardize CI change-detection filters and add skip labels#703
Standardize CI change-detection filters and add skip labels#703TalShafir1 merged 4 commits intochronicle:mainfrom
Conversation
Split the `mp` dorny/paths-filter into `mp` (packages/mp/**) and `ci` (.github/workflows/**) so workflow-only changes no longer trigger full integration validate/build/test runs. Changes: - build/test/validate/lint: remove .github/workflows/** from paths and mp filter - lint: consolidate individual package filters into integration_packages, add mp to lint job conditions - windows_workflows: add top-level paths filter, split mp/ci, fix missing integration_testing_whls - test_mp: add .github/workflows/** to paths so mp tests run on CI changes
Support PR label-based skipping of expensive CI jobs: - ci-minimal: umbrella label that skips Windows pipeline, tests, and builds - skip-windows: skip Windows integration validate/test/build (keeps test-mp-windows) - skip-tests: skip integration test suite (test.yml) - skip-build: skip all build jobs (build.yml) Labels are checked per-job with push-event guards so push triggers are never skipped. The changes job always runs (cheap, needed for downstream conditions). Note: labels must be created in the repo by a maintainer: ci-minimal, skip-windows, skip-tests, skip-build
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request optimizes the continuous integration pipeline by standardizing change-detection filters and introducing a mechanism to skip resource-intensive jobs via PR labels. These changes reduce unnecessary CI load and improve developer velocity by allowing for more targeted testing during the development lifecycle. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates the documentation in docs/contributing.md to include a new section on CI skip labels, which allow contributors to bypass specific expensive CI jobs during development. The review feedback suggests clarifying the global impact of the ci-minimal label and noting that skip-windows still allows for basic Windows validation via the test-mp-windows job.
- Clarify ci-minimal skips all builds, tests, and Windows pipeline - Note that skip-windows keeps test-mp-windows running
Summary
Follows up on #702 (merged). Standardizes CI change-detection filters and adds PR label-based skip support for expensive CI jobs.
Filter standardization
Split the
mpdorny/paths-filter intomp(packages/mp/**) andci(.github/workflows/**) so workflow-only changes no longer trigger full integration validate/build/test runs (~15 min on Windows, ~5 min on Linux). Also consolidatedlint.ymlpackage filters and added missingintegration_testing_whlstowindows_workflows.yml.Skip labels
Added PR label-based skipping for expensive CI jobs. Labels need to be created by a maintainer.
Changes
build.yml.github/workflows/**from paths + mp filter. Addskip-build+ci-minimallabel support.lint.yml.github/workflows/**from paths. Consolidate package filters intointegration_packages. Addmpto lint job conditions.test.yml.github/workflows/**from paths + mp filter. Addskip-tests+ci-minimallabel support.test_mp.yml.github/workflows/**to paths so mp tests run on CI changes.validate.yml.github/workflows/**from paths + mp filter. Fix stale comment.windows_workflows.ymlpaths:filter. Splitmp/cifilters. Fix missingintegration_testing_whls. Addskip-windows+ci-minimallabel support (keepstest-mp-windowsrunning).docs/contributing.mdCI skip labels (create after merge)
ci-minimalskip-windowstest-mp-windows)skip-teststest.yml)skip-buildbuild.yml)Trigger behavior after this change
packages/mp/**.github/workflows/**packages/{envcommon,tipcommon,...}/**content/.../google/**content/.../third_party/**orpower_ups/**content/playbooks/**Checklist
Test plan
CodeQLis a required status check