From c5d581a3c55c380880f8a836fa70adaf6ae138dd Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Nov 23 2023 01:51:11 +0000 Subject: Update fedora_bz.py usage for recent changes, add it for Changes I made some significant changes to the fedora_bz.py script today. This updates the docs to reflect current usage of the script after these changes. It also changes the changes-contingency page to recommend using the script - currently the page does not say to use the script even though it has the capability to do the necessary work for the change deadlines. Signed-off-by: Adam Williamson --- diff --git a/modules/ROOT/pages/pgm_guide/sop/branch.adoc b/modules/ROOT/pages/pgm_guide/sop/branch.adoc index 4a6cd83..c341dbe 100644 --- a/modules/ROOT/pages/pgm_guide/sop/branch.adoc +++ b/modules/ROOT/pages/pgm_guide/sop/branch.adoc @@ -34,18 +34,18 @@ https://docs.fedoraproject.org/en-US/quick-docs/howto-file-a-bug/ === Branch Rawhide bugs -WARNING: If you run this after Branch Day, you will need to add constraint on the bug open date. +WARNING: If you run this after Branch Day, you will need to add constraint on the bug open date. See below. . Change the FChanges bug and bugs that block it to the branched version. -. Use https://bugzilla.redhat.com/buglist.cgi?classification=Fedora&f1=component&f3=component&f4=bug_status&f5=component&f6=component&keywords=FutureFeature%2C%20Tracking%2C%20&keywords_type=nowords&list_id=10832664&o1=notequals&o3=notequals&o4=notequals&o5=notequals&o6=notequals&product=Fedora&product=Fedora%20Container%20Images&query_format=advanced&short_desc=RFE&short_desc_type=notregexp&v1=Package%20Review&v3=kernel&v4=CLOSED&v5=Changes%20Tracking&v6=Container%20Review&version=rawhide[this Bugzilla query] to select bugs that meet the xref:pgm_guide/release_process.adoc#_branch_day[criteria]. -. Save the results as a CSV file. -. Run the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script] against it. For example: - -`./fedora_bz.py --release 34 branch bugs-2019-08-13.csv` +. Run the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script] to change the version on rawhide bugs to the new release. For example: `./fedora_bz.py branch 40` (if the new release is 40). +. If you are running the script late, use the `--date` option to specify the branch date: `./fedora_bz.py branch --date=2024-02-06 40`. This will make the script only change the version on bugs filed before the branch date. WARNING: This script will take a while to run. Execute it from a machine with stable power and networking. +https://bugzilla.redhat.com/buglist.cgi?classification=Fedora&f1=component&f3=component&f4=bug_status&f5=component&f6=component&keywords=FutureFeature%2C%20Tracking%2C%20&keywords_type=nowords&list_id=10832664&o1=notequals&o3=notequals&o4=notequals&o5=notequals&o6=notequals&product=Fedora&product=Fedora%20Container%20Images&query_format=advanced&short_desc=RFE&short_desc_type=notregexp&v1=Package%20Review&v3=kernel&v4=CLOSED&v5=Changes%20Tracking&v6=Container%20Review&version=rawhide[This Bugzilla query] is similar to the one the script uses to select bugs that meet the xref:pgm_guide/release_process.adoc#_branch_day[criteria]. You can use it to check the list before running the script if you like. + + === Update Product Pages . Set F to the "Development/Testing" phase. diff --git a/modules/ROOT/pages/pgm_guide/sop/changes-contingency.adoc b/modules/ROOT/pages/pgm_guide/sop/changes-contingency.adoc index 1900de1..429a117 100644 --- a/modules/ROOT/pages/pgm_guide/sop/changes-contingency.adoc +++ b/modules/ROOT/pages/pgm_guide/sop/changes-contingency.adoc @@ -26,8 +26,9 @@ The two "change completion checkpoint" milestones on the schedule have specific This part of the process runs at the "Completion deadline (testable)" and "Completion deadline (100% complete)" milestones of the release schedule. -. On the deadline day, search for bugs that block the Changes tracking bug that do are not at least as far as MODIFIED (testable deadline) or ON_QA (100% complete deadline). -. Mass update those bugs with a comment (xref:#bug-update-comments[templates below]) and set NEEDINFO on the assignee. +. On the deadline day, use the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script] to comment on bugs that block the Changes tracking bug that do are not at least as far as MODIFIED (testable deadline) or ON_QA (100% complete deadline). +.. For the testable deadline, run e.g. `./fedora_bz.py deadline-testable 2024-02-20 40`, where 40 is the release number and 2024-02-20 is the **100% complete** deadline date (**NOT** the testable deadline date - this date is needed because the comment mentions it). +.. For the 100% complete deadline, run e.g. `./fedora_bz.py deadline-complete 40`, where 40 is the release number. No date is needed here. . The next day, create a FESCo issue using one of the xref:#fesco-issue-templates[FESCo issue templates] below. You may choose to try to figure out if a change is complete yourself, but you are not obligated to. . Continue to update the FESCo issue as bugs are updated. @@ -35,28 +36,6 @@ You may choose to try to figure out if a change is complete yourself, but you ar ''' -anchor:bug-update-comments[] - -==== Bug update comment (testable) -.... -Today we reached the Code Complete (Testable) milestone on the F schedule: - -At this time, all F Changes should be complete enough to be testable. You can indicate this by setting this tracker to the MODIFIED status. If the Change is 100% code complete, you can set the tracker to ON_QA. If you need to defer this Change to F, please NEEDINFO me. - -Changes that have not reached at least the MODIFIED status will be given to FESCo for evaluation of contingency plans. -.... - -==== Bug update comment (100% complete) -.... -Today we reached the Code Complete (100% complete) milestone on the F schedule: - -At this time, all F Changes should be 100% complete. You can indicate this by setting this tracker to the ON_QA status. If you need to defer this Change to F please NEEDINFO me. - -Note that we are entering the Beta freeze. Additional package changes to complete this Change will need an approved blocker or freeze exception. See pass:[https://fedoraproject.org/wiki/QA:SOP_blocker_bug_process] and pass:[https://fedoraproject.org/wiki/QA:SOP_freeze_exception_bug_process] for more information. - -Changes that have not reached the ON_QA status will be given to FESCo for evaluation of contingency plans. -.... - anchor:fesco-issue-templates[] ==== Completion deadline (testable) FESCo issue template diff --git a/modules/ROOT/pages/pgm_guide/sop/eol-day.adoc b/modules/ROOT/pages/pgm_guide/sop/eol-day.adoc index dbf840b..8728c79 100644 --- a/modules/ROOT/pages/pgm_guide/sop/eol-day.adoc +++ b/modules/ROOT/pages/pgm_guide/sop/eol-day.adoc @@ -10,19 +10,20 @@ This process occurs four weeks after the release of Fedora Linux N+2. === Bug closure -Close open bugs. +Close open bugs using the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script]. -. Select all bugs for Fedora version N-2 that are not closed and save the results as a CSV file. -.. Do this for both the **Fedora** product and the **Fedora Container Images** product. -.. Exclude bugs with the **Tracking** keyword. -.. This {bugzilla_eol_query}[Bugzilla query] will give you the right results (just update the version). -. Run the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script] against it. -.. For example, to close Fedora Linux 34 bugs with an EOL date of 7 June 2022: `./fedora_bz.py --release 34 --date 2022-06-07 eolclose bugs-2022-06-07.csv` -. Re-run the {bugzilla_eol_query}[Bugzilla query] to verify that all bugs are closed. -. Close any still-open bugs. +For example, to close Fedora Linux 37 bugs: `./fedora_bz.py eolclose 37` + +The script will read the EOL date from Bodhi, or you can override it, e.g. `./fedora_bz.py eolclose --date=2023-12-05 37`. + +You can re-run the script to verify that all bugs are closed (it should change 0 bugs). WARNING: This script will take a while to run. Execute it from a machine with stable power and networking. +If it dies, you can re-run it and it should pick up where it left off. + +The script closes all "Fedora" and "Fedora Container Images" bugs for the EOL release which are still open, unless they have the **Tracking** keyword. +This {bugzilla_eol_query}[Bugzilla query] is similar to the one it uses (if you want to examine the list before running the script). ==== Reopening bugs diff --git a/modules/ROOT/pages/pgm_guide/sop/eol-warning.adoc b/modules/ROOT/pages/pgm_guide/sop/eol-warning.adoc index cb11a6c..414dc6e 100644 --- a/modules/ROOT/pages/pgm_guide/sop/eol-warning.adoc +++ b/modules/ROOT/pages/pgm_guide/sop/eol-warning.adoc @@ -9,11 +9,17 @@ The schedule calls for it to occur two days after the release, but any time with == Process -. Select all bugs for Fedora version N-2 that are not closed and save the results as a CSV file. -.. Do this for both the **Fedora** product and the **Fedora Container Images** product. -.. Exclude bugs with the **Tracking** keyword. -.. This {bugzilla_eol_query}[Bugzilla query] will give you the right results (just update the version). -. Run `./fedora_bz.py --release 34 --date 2022-06-07 eolwarn bugs-2022-05-12.csv` +Add a warning comment on open bugs for the release that will soon go EOL using the https://pagure.io/fedora-pgm/pgm_scripts/blob/main/f/closebugs/fedora_bz.py[`fedora_bz.py` script]. + +For example, to post the warning on Fedora Linux 37 bugs: `./fedora_bz.py eolwarn 37` + +The script will read the EOL date from Bodhi, or you can override it, e.g. `./fedora_bz.py eolwarn --date=2023-12-05 37` WARNING: This script will take a while to run. Execute it from a machine with stable power and networking. +If the script does die, you can re-run it like `./fedora_bz.py --start-bug 123456 eolwarn 37` to start after bug #123456. +Use the number of the last bug that was successfully edited. +As a safety check, the script will exit if the first bug in the list already has the comment. + +The script comments on all "Fedora" and "Fedora Container Images" bugs for the release which are still open, unless they have the **Tracking** keyword. +This {bugzilla_eol_query}[Bugzilla query] is similar to the one it uses (if you want to examine the list before running the script).