Skip to content

ci: use updated pools (#3143)#3211

Open
babayet2 wants to merge 1 commit intomicrosoft:release/1.7.2511from
babayet2:backport-ci-pools-1.7
Open

ci: use updated pools (#3143)#3211
babayet2 wants to merge 1 commit intomicrosoft:release/1.7.2511from
babayet2:backport-ci-pools-1.7

Conversation

@babayet2
Copy link
Copy Markdown
Collaborator

@babayet2 babayet2 commented Apr 6, 2026

Backport of PR #3143, which points to updated CI pools

There were conflicts in this cherry-pick. elected to also include a CI fail-fast optimization, as well as replacing hardcoded references to macos targets with a variable.

Backport of PR microsoft#3143

there were conflicts in this cherry-pick. elected to also include a CI
fail-fast optimization, as well as replacing hardcoded references to
macos targets with a variable
@babayet2 babayet2 requested review from a team as code owners April 6, 2026 23:37
Copilot AI review requested due to automatic review settings April 6, 2026 23:37
@github-actions github-actions bot added the release_1.7.2511 Targets the release/1.7.2511 branch. label Apr 6, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR backports CI pool updates (from #3143) into the Flowey-generated pipelines and the generated GitHub Actions workflow, and also introduces an intended PR-only “quick-check” phase to fail faster before running the full job fan-out.

Changes:

  • Update GitHub Actions self-hosted runner labels to the renamed 1ES pools and new image overrides.
  • Introduce an AdoPool { name, demands } type so ADO jobs can specify image demands (e.g., 1ES.ImageOverride -equals ...), and update pool selection helpers accordingly.
  • Add a PR/PR-release “quick check” job and refactor macOS clippy target selection to avoid redundant x64-linux clippy when phase 1 runs.

Reviewed changes

Copilot reviewed 7 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
flowey/flowey_hvlite/src/pipelines/checkin_gates.rs Adds PR-only quick-check job; switches several jobs to new GH pool helpers; refactors clippy target lists.
flowey/flowey_hvlite/src/pipelines_shared/gh_pools.rs Replaces old GH pool label helpers with new *_1es() helpers using updated pool names/images.
flowey/flowey_hvlite/src/pipelines_shared/ado_pools.rs Switches ADO pool selection to return an AdoPool with image-override demands.
flowey/flowey_core/src/pipeline.rs Promotes AdoPool to a public type and updates PipelineJob::ado_set_pool API.
flowey/flowey_cli/src/pipeline_resolver/generic.rs Updates imports/types to use the public AdoPool.
flowey/flowey_cli/src/pipeline_resolver/ado_yaml.rs Updates imports/types to use the public AdoPool.
.github/workflows/openvmm-ci.yaml Updates runs-on self-hosted labels to the renamed pools and image overrides.

Comment on lines +199 to +203
// ── Phase 1: quick-check gate ──────────────────────────────────────
// Combined fmt + clippy on one self-hosted linux machine.
// Catches the most common failures quickly before fanning out expensive jobs.
let quick_check_job = if matches!(config, PipelineConfig::Pr | PipelineConfig::PrRelease) {
let job = pipeline
Copy link

Copilot AI Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

quick_check_job is created as a “Phase 1” gate, but it isn’t added to all_jobs and no dependencies are added from later jobs to it. As a result, (1) the “openvmm checkin gates” aggregator job won’t wait on the quick-check job, and (2) the pipeline won’t actually fail-fast / gate expensive jobs as the comment describes. Consider pushing quick_check_job into all_jobs and adding pipeline.non_artifact_dep(job, quick_check_job) for the jobs you want to fan out after phase 1 (either as you create them, or by iterating over all_jobs once at the end).

Copilot uses AI. Check for mistakes.
@babayet2 babayet2 added release-ci-required Add to a PR to trigger PR gates in release mode labels Apr 6, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 7, 2026

1 Petri tests failed (0 unstable)

// ── Phase 1: quick-check gate ──────────────────────────────────────
// Combined fmt + clippy on one self-hosted linux machine.
// Catches the most common failures quickly before fanning out expensive jobs.
let quick_check_job = if matches!(config, PipelineConfig::Pr | PipelineConfig::PrRelease) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess pulling this whole change in was needed?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release_1.7.2511 Targets the release/1.7.2511 branch. release-ci-required Add to a PR to trigger PR gates in release mode

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants