Repository navigation
[CI] Run C++20 build checks daily instead of in pre-commit - #39540
Merged
Merged
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace the separate cpp20_nightly.yml with a dedicated '0 2 * * *' schedule in ubuntu_22, ubuntu_24 and windows_vs2022_release. On that schedule only Build_CPP20 runs (Build and its dependents are skipped); Build_CPP20 no longer runs in pre-commit. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The workflow builds the wrong ref when a target branch is requested, prevents nightly Windows cache refreshes, and omits C++20 validation when draft PRs become ready for review.
3 open issues
What changed in this PR
Moves OpenVINO’s non-blocking C++20 compile checks out of regular validation workflows into a dedicated nightly workflow, reducing runner use without changing required checks.
Changes:
- Schedules Ubuntu 22.04, Ubuntu 24.04, and Windows VS2022 Release builds daily at 00:00 UTC.
- Adds manual dispatch and path-filtered PR triggers for C++20 workflow changes.
- Reuses existing build workflows and preserves their CMake options and non-blocking behavior.
| File | Description |
|---|---|
.github/workflows/windows_vs2022_release.yml |
Removes the regular Windows C++20 build job. |
.github/workflows/ubuntu_24.yml |
Removes the regular Ubuntu 24.04 C++20 build job. |
.github/workflows/ubuntu_22.yml |
Removes the regular Ubuntu 22.04 C++20 build job. |
.github/workflows/cpp20_nightly.yml |
Adds nightly orchestration for all three C++20 builds, including Smart CI and Docker setup. |
Review effort: Balanced
Comment on lines
+8
to
+11
| target-branch: | ||
| description: 'Target branch for the build; taken from event context by default' | ||
| type: string | ||
| required: false |
| description: 'Target branch for the build; taken from event context by default' | ||
| type: string | ||
| required: false | ||
| pull_request: |
| name: Build (C++20, Windows VS2022 Release) | ||
| needs: [ Smart_CI ] | ||
| if: "!needs.smart_ci.outputs.skip_workflow" | ||
| uses: ./.github/workflows/job_build_windows_cpp20.yml |
akladiev
approved these changes
Nov 5, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
praasz
approved these changes
Nov 5, 2026
mryzhov
enabled auto-merge
November 5, 2026 15:12
mryzhov
disabled auto-merge
November 5, 2026 15:38
mryzhov
enabled auto-merge
November 5, 2026 15:39
Merged
via the queue into
openvinotoolkit:master
with commit Nov 5, 2026
1525204
258 of 264 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Details:
Build_CPP20) on the initial PR, merge queue and post-commit runs inubuntu_22.yml,ubuntu_24.ymlandwindows_vs2022_release.yml.0 2 * * *schedule in each existing workflow. On that schedule, the regular build and its dependent build/test jobs are skipped;Smart_CI,Dockeron Linux, andOverall_Statusstill run.Build_CPP20onworkflow_dispatchor whengithub.run_attempt > 1, provided Smart CI does not skip the workflow. Like draft validation, contributors can select Re-run all jobs on a PR workflow to opt in. This re-runs the other workflow jobs as well; the condition also matches automated re-runs.docs/dev/ci/github_actions/smart_ci.md.Build_CPP20remains non-blocking and outsideOverall_Status.Tickets:
AI Assistance:
../actionlint -shellcheck= -ignore 'label ".+" is unknown' .github/workflows/ubuntu_22.yml .github/workflows/ubuntu_24.yml .github/workflows/windows_vs2022_release.yml: passed.python3 check_cpp20_reruns.py(temporary local script evaluating the workflow conditions): passed 12 scenarios per workflow, covering initial runs, re-runs, draft PRs, schedules, dispatch and Smart CI skips.git diff --check: passed.