Skip to content

PG-2425 - Enable Nightly Builds with a PPG Major/day run schedule - #150

Merged
mohitj1988 merged 1 commit into
mainfrom
PG-2425
Oct 15, 2026
Merged

mohitj1988 merged 1 commit into
mainfrom
PG-2425

Conversation

@mohitj1988

Copy link
Copy Markdown
Collaborator

Enable the nightly QA, testing one major per weeknight instead of everything (a full run is 216 Jenkins builds, one major is 30-45 builds and takes about 1h20m):

Mon PG 14 (30 builds), Tue PG 15 (36), Wed PG 16 (37), Thu PG 17 (39),
Fri PG 18 (45); Sat/Sun free for re-runs and maintenance; PG 19 on demand.

  • .github/nightly-qa-schedule.yml: weekday -> major, the one place to change the plan.
  • .github/scripts/nightly_plan.py (new job 'plan'): tonight's major (schedule or the new 'major' input: today, 14-19, all). A scheduled run is skipped when nothing under root/ changed since the last successful run of the SAME major, found by a 'nightly-major-' artifact each run uploads; comparing with any last run would let a quiet Monday hide a change from Tuesday's major. Manual runs always run. A package refresh job runs 4 hours earlier, so component changes reach OBS before the check.
  • list_qa_matrix.py: QA_MAJOR keeps one major's combos: its own projects (ppg:staging:...) plus shared-image entries named -pg (component images) or -to- (upgrades, counted on the major they upgrade into).
  • obs-nightly-qa.yml: schedule 23:00 UTC Mon-Fri; never cancel a running nightly; at most 20 jobs at once; 6-hour job timeout.
  • tests: selection rule, schedule file, plan decisions (including the same-major comparison), and that every QA build of the tree runs on exactly one scheduled night.

@mohitj1988
mohitj1988 requested a review from rjd15372 October 15, 2026 08:37
Comment thread .github/workflows/obs-nightly-qa.yml Resolved
Enable the nightly QA, testing one major per weeknight instead of everything
(a full run is 216 Jenkins builds, one major is 30-45 builds and
takes about 1h20m):

  Mon PG 14 (30 builds), Tue PG 15 (36), Wed PG 16 (37), Thu PG 17 (39),
  Fri PG 18 (45); Sat/Sun free for re-runs and maintenance; PG 19 on demand.

- .github/nightly-qa-schedule.yml: weekday -> major, the one place to change
  the plan.
- .github/scripts/nightly_plan.py (new job 'plan'): tonight's major (schedule
  or the new 'major' input: today, 14-19, all). A scheduled run is skipped
  when nothing under root/ changed since the last successful run of the SAME
  major, found by a 'nightly-major-<N>' artifact each run uploads; comparing
  with any last run would let a quiet Monday hide a change from Tuesday's
  major. Manual runs always run. A package refresh job runs 4 hours earlier,
  so component changes reach OBS before the check.
- list_qa_matrix.py: QA_MAJOR keeps one major's combos: its own projects
  (ppg:staging:<N>...) plus shared-image entries named -pg<N> (component
  images) or -to-<N> (upgrades, counted on the major they upgrade into).
- obs-nightly-qa.yml: schedule 23:00 UTC Mon-Fri; never cancel a running
  nightly; at most 20 jobs at once; 6-hour job timeout.
- tests: selection rule, schedule file, plan decisions (including the
  same-major comparison), and that every QA build of the tree runs on exactly
  one scheduled night.
@mohitj1988
mohitj1988 merged commit d5aecdc into main Oct 15, 2026
8 of 9 checks passed
@mohitj1988
mohitj1988 deleted the PG-2425 branch October 15, 2026 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants