sop_mass_branching: Improve formatting

This commit is contained in:
Timothée Ravier 2023-08-09 19:11:46 +02:00
parent d66e918e3e
commit 65b13f371e

View file

@ -21,16 +21,16 @@ We need to configure outage in koji. Look at https://pagure.io/fedora-infra/ansi
List all running tasks and select onle those relevant for current branching. List all running tasks and select onle those relevant for current branching.
[attributes] [source,bash,subs="attributes"]
`` ----
$ koji list-builds --state=0 --type=rpm | grep fc{branched} | awk '{print $1}' $ koji list-builds --state=0 --type=rpm | grep fc{branched} | awk '{print $1}'
`` ----
Cancel each of those tasks Cancel each of those tasks
`` ```
$ koji cancel <build> $ koji cancel <build>
`` ```
== Repos to branch == Repos to branch
@ -38,14 +38,13 @@ All the following listed repos needs updating, including adding a new
branch for branched release and updating rawhide branch with new release branch for branched release and updating rawhide branch with new release
values. values.
[arabic] * https://pagure.io/pungi-fedora
. https://pagure.io/pungi-fedora * https://pagure.io/fedora-kickstarts
. https://pagure.io/fedora-kickstarts * https://pagure.io/fedora-comps
. https://pagure.io/fedora-comps * https://pagure.io/fedora-lorax-templates/
. https://pagure.io/fedora-lorax-templates/ * https://pagure.io/workstation-ostree-config/
. https://pagure.io/workstation-ostree-config/ * https://src.fedoraproject.org/rpms/fedora-release
. https://src.fedoraproject.org/rpms/fedora-release * https://src.fedoraproject.org/rpms/fedora-repos
. https://src.fedoraproject.org/rpms/fedora-repos
== PDC == PDC
@ -53,33 +52,27 @@ The "product-release" needs to be created in PDC.
In the `scripts/pdc/` directory, run: In the `scripts/pdc/` directory, run:
`` ```
$ python create-product-release.py fedora $TOKEN Fedora $NEW_VERSION $ python create-product-release.py fedora $TOKEN Fedora $NEW_VERSION
`` ```
On `pdc-backend01.stg` (for testing) or `pdc-backend01` (for production) On `pdc-backend01.stg` (for testing) or `pdc-backend01` (for production)
clone (or update an existing one) the releng repo: clone (or update an existing one) the releng repo:
`` ```
$ git clone https://pagure.io/releng.git $ git clone https://pagure.io/releng.git
`` ```
In the `scripts/pdc/` directory, run (see the `--help` of the script for In the `scripts/pdc/` directory, run (see the `--help` of the script for
information on how to run it): information on how to run it):
`` ```
$ python create-new-release-branches.py ... --createfile $ python create-new-release-branches.py ... --createfile
`` ```
NOTE: The `--createfile` argument is necessary, that file is needed for the next step.
[NOTE] [NOTE]
.Note
====
the `--createfile` argument is necessary, that file is needed for the
next step.
====
[NOTE]
.Note
==== ====
Due to memory leak issue in pdc, we need to set the config in Due to memory leak issue in pdc, we need to set the config in
/etc/pdc.d/fedora.json \{ "fedora": \{ "host": /etc/pdc.d/fedora.json \{ "fedora": \{ "host":
@ -101,9 +94,9 @@ For both of these actions you will need the file generated by pdc above.
On `pkgs01.stg` (for testing) or `pkgs02` (for production), run: On `pkgs01.stg` (for testing) or `pkgs02` (for production), run:
`` ```
$ sudo -u pagure python /usr/local/bin/mass-branching-git.py <new branch name> <input file> $ sudo -u pagure python /usr/local/bin/mass-branching-git.py <new branch name> <input file>
`` ```
Where `<new branch name>` will be like `f{rawhide}` and the Where `<new branch name>` will be like `f{rawhide}` and the
`<input file>` the path to the file generated by pdc above. `<input file>` the path to the file generated by pdc above.
@ -168,14 +161,14 @@ Please check the file `roles/robosignatory/templates/robosignatory.toml.j2` from
When done editing the files, commit, push and apply them via the When done editing the files, commit, push and apply them via the
corresponding ansible playbook: corresponding ansible playbook:
`` ```
$ sudo rbac-playbook groups/koji-hub.yml + $ sudo rbac-playbook groups/koji-hub.yml
$ sudo rbac-playbook groups/releng-compose.yml + $ sudo rbac-playbook groups/releng-compose.yml
$ sudo rbac-playbook groups/bodhi-backend.yml + $ sudo rbac-playbook groups/bodhi-backend.yml
$ sudo rbac-playbook openshift-apps/greenwave.yml + $ sudo rbac-playbook openshift-apps/greenwave.yml
$ sudo -i ansible-playbook /srv/web/infra/ansible/playbooks/$ groups/proxies.yml -t pkgdb2 + $ sudo -i ansible-playbook /srv/web/infra/ansible/playbooks/$ groups/proxies.yml -t pkgdb2
$ sudo rbac-playbook groups/mbs.yml -t mbs + $ sudo rbac-playbook groups/mbs.yml -t mbs
`` ```
Ask someone in fedora infra to run the robosignatory playbook. Ask someone in fedora infra to run the robosignatory playbook.
@ -193,59 +186,71 @@ script in https://pagure.io/releng[pagure releng] repo
The `fedora-release` package needs to be updated in Rawhide and The `fedora-release` package needs to be updated in Rawhide and
Branched. Branched.
Changes to `fedora-release.spec` in the *rawhide* branch: Changes to `fedora-release.spec` in the *rawhide* branch:
(can also check this https://src.fedoraproject.org/rpms/fedora-release/c/841f1fb8e5f7ff2b11a5e0905f15e765da405edd?branch=rawhide[commit] for reference) (can also check this https://src.fedoraproject.org/rpms/fedora-release/c/841f1fb8e5f7ff2b11a5e0905f15e765da405edd?branch=rawhide[commit] for reference)
[arabic] [arabic]
. Increment `%define dist_version` to {rawhide}: . Increment `%define dist_version` to {rawhide}:
+ +
`` [source,subs="attributes"]
----
%define dist_version {rawhide} %define dist_version {rawhide}
`` ----
. Increment `Version:` and reset `Release:`: . Increment `Version:` and reset `Release:`:
+ +
`` [source,subs="attributes"]
Version: {rawhide} + ----
Release: 0.1%{?eln:.eln%{eln}} + Version: {rawhide}
`` Release: 0.1%{?eln:.eln%{eln}}
----
. Add a `%changelog` entry: . Add a `%changelog` entry:
+ +
`` [source,subs="attributes"]
----
%changelog %changelog
* Day Mon DD YYYY Name <Email> - {rawhide}-0.1 + * Day Mon DD YYYY Name <Email> - {rawhide}-0.1
- Setup for rawhide being F{rawhide} + - Setup for rawhide being F{rawhide}
`` ----
Changes to `fedora-release.spec` in the *branched* (currently {branched}) branch: Changes to `fedora-release.spec` in the *branched* (currently {branched}) branch:
(can also check this https://src.fedoraproject.org/rpms/fedora-release/c/a2c289b44335eec89efaddee02d807b048edd51f?branch=f37[commit] for reference) (can also check this https://src.fedoraproject.org/rpms/fedora-release/c/a2c289b44335eec89efaddee02d807b048edd51f?branch=f37[commit] for reference)
[arabic] [arabic]
. Adjust `release_name` and unset `is_rawhide`: . Adjust `release_name` and unset `is_rawhide`:
+ +
`` [source,subs="attributes"]
%define release_name {branched_name} + ----
%define is_rawhide 0 + %define release_name {branched_name}
`` %define is_rawhide 0
----
. Verify the correct number for `dist_version` and `Version:`: . Verify the correct number for `dist_version` and `Version:`:
+ +
`` [source,subs="attributes"]
%define dist_version {branched} + ----
Version: {branched} + %define dist_version {branched}
`` Version: {branched}
----
. Bump `Release:`: . Bump `Release:`:
+ +
`` [source,subs="attributes"]
----
Release: 0.4%{?eln:.eln%{eln}} Release: 0.4%{?eln:.eln%{eln}}
`` ----
. Add a `%changelog` entry: . Add a `%changelog` entry:
+ +
`` [source,subs="attributes"]
----
%changelog %changelog
* Day Mon DD YYYY Name <Email> - {branched}-0.4 + * Day Mon DD YYYY Name <Email> - {branched}-0.4
- Branching F{branched} from rawhide + - Branching F{branched} from rawhide
`` ----
== Fedora Repos == Fedora Repos
@ -261,33 +266,41 @@ Changes to the *rawhide* branch (mostly in `fedora-repos.spec`):
. Generate and add a _Rawhide+1_ which is {rawhide_next} GPG key file, then add it to the spec . Generate and add a _Rawhide+1_ which is {rawhide_next} GPG key file, then add it to the spec
file: file:
+ +
`` [source,subs="attributes"]
----
Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary
`` ----
. Update the `archmap` file and define architectures for _Rawhide+1_: . Update the `archmap` file and define architectures for _Rawhide+1_:
+ +
`` [source,subs="attributes"]
----
fedora-{rawhide+1}-primary: x86_64 armhfp aarch64 ppc64le s390x fedora-{rawhide+1}-primary: x86_64 armhfp aarch64 ppc64le s390x
`` ----
. Increment `%global rawhide_release`: . Increment `%global rawhide_release`:
+ +
`` [source,subs="attributes"]
----
%global rawhide_release {rawhide} %global rawhide_release {rawhide}
`` ----
. Bump `Version:` and reset `Release:`: . Bump `Version:` and reset `Release:`:
+ +
`` [source,subs="attributes"]
Version: {rawhide} + ----
Release: 0.1%{?eln:.eln%{eln}} + Version: {rawhide}
`` Release: 0.1%{?eln:.eln%{eln}}
----
. Add a `%changelog` entry: . Add a `%changelog` entry:
+ +
`` [source,subs="attributes"]
----
%changelog %changelog
* Day Mon DD YYYY Name <Email> - {rawhide}-0.1 + * Day Mon DD YYYY Name <Email> - {rawhide}-0.1
- Setup for rawhide being F{rawhide} + - Setup for rawhide being F{rawhide}
`` ----
Changes to the *branched* branch (mostly in `fedora-repos.spec`): Changes to the *branched* branch (mostly in `fedora-repos.spec`):
@ -297,38 +310,43 @@ Changes to the *branched* branch (mostly in `fedora-repos.spec`):
. Copy the _Rawhide+1_ which is {rawhide_next} GPG key file from the _rawhide_ branch, then add . Copy the _Rawhide+1_ which is {rawhide_next} GPG key file from the _rawhide_ branch, then add
it to the spec file: it to the spec file:
+ +
`` [source,subs="attributes"]
----
Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary
`` ----
. Copy the `archmap` file from the _rawhide_ branch. . Copy the `archmap` file from the _rawhide_ branch.
. Update `%global rawhide_release`: . Update `%global rawhide_release`:
+ +
[attributes] [source,subs="attributes"]
`` ----
%global rawhide_release {rawhide} %global rawhide_release {rawhide}
`` ----
. Enable `updates_testing_enabled`: . Enable `updates_testing_enabled`:
+ +
`` [source,subs="attributes"]
----
%global updates_testing_enabled 1 %global updates_testing_enabled 1
`` ----
. Bump `Release`: . Bump `Release`:
+ +
`` [source,subs="attributes"]
----
Release: 0.3%{?eln:.eln%{eln}} + Release: 0.3%{?eln:.eln%{eln}} +
`` ----
. Add a `%changelog` entry: . Add a `%changelog` entry:
+ +
`` [source,subs="attributes"]
----
%changelog %changelog
*Day Mon DD YYYY Name <Email> - {branched}-0.3 + *Day Mon DD YYYY Name <Email> - {branched}-0.3 +
- Update Rawhide definition, enable updates-testing for Branched + - Update Rawhide definition, enable updates-testing for Branched +
`` ----
[NOTE] [NOTE]
.Note
==== ====
Build `fedora-release` and `fedora-repos` packages for Branched release Build `fedora-release` and `fedora-repos` packages for Branched release
*before enabling the Rawhide gating*. *before enabling the Rawhide gating*.
@ -340,33 +358,34 @@ Changes to the *stable* branches (mostly in `fedora-repos.spec`):
. Copy the _Rawhide+1_ GPG key which is {rawhide_next} file from the _rawhide_ branch, then add . Copy the _Rawhide+1_ GPG key which is {rawhide_next} file from the _rawhide_ branch, then add
it to the spec file: it to the spec file:
+ +
[attributes] [source,subs="attributes"]
`` ----
Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary Source57: RPM-GPG-KEY-fedora-{rawhide_next}-primary
`` ----
+
. Copy the `archmap` file from the _rawhide_ branch. . Copy the `archmap` file from the _rawhide_ branch.
. Update `%global rawhide_release`: . Update `%global rawhide_release`:
+ +
[attributes] [source,subs="attributes"]
`` ----
%global rawhide_release {rawhide} %global rawhide_release {rawhide}
`` ----
. Bump `Release:`: . Bump `Release:`:
+ +
[attributes] [source,subs="attributes"]
`` ----
Release: 0.3%{?eln:.eln%{eln}} Release: 0.3%{?eln:.eln%{eln}}
`` ----
. Add a `%changelog` entry: . Add a `%changelog` entry:
+ +
[attributes] [source,subs="attributes"]
`` ----
%changelog %changelog
*Day Mon DD YYYY Name <Email> - {current}-0.3 + *Day Mon DD YYYY Name <Email> - {current}-0.3
- Update Rawhide definition + - Update Rawhide definition
`` ----
== Bodhi == Bodhi
@ -377,11 +396,11 @@ missing repos. The following commands should be run on
*bodhi-backend01.phx2.fedoraproject.org* *bodhi-backend01.phx2.fedoraproject.org*
[attributes] [source,bash,subs="attributes"]
`` ----
$ sudo ln -s /mnt/koji/compose/updates/empty-repo/ /mnt/koji/compose/updates/f{branched}-updates $ sudo ln -s /mnt/koji/compose/updates/empty-repo/ /mnt/koji/compose/updates/f{branched}-updates
$ sudo ln -s /mnt/koji/compose/updates/empty-repo/ /mnt/koji/compose/updates/f{branched}-updates-testing $ sudo ln -s /mnt/koji/compose/updates/empty-repo/ /mnt/koji/compose/updates/f{branched}-updates-testing
`` ----
=== Creating Empty Repos === Creating Empty Repos
@ -390,13 +409,12 @@ https://pagure.io/releng/blob/main/f/scripts/branching/create_empty_repos.sh[cre
from https://pagure.io/releng[pagure releng] repo. This should be run on from https://pagure.io/releng[pagure releng] repo. This should be run on
*bodhi-backend01.phx2.fedoraproject.org* *bodhi-backend01.phx2.fedoraproject.org*
[attributes] [source,bash,subs="attributes"]
`` ----
$ sudo -u ftpsync sh scripts/branching/create_empty_repos.sh {branched} $ sudo -u ftpsync sh scripts/branching/create_empty_repos.sh {branched}
`` ----
[NOTE] [NOTE]
.Note
==== ====
Please verify the repo permissions that are created under Please verify the repo permissions that are created under
/pub/fedora/linux/development/<fedora_release_number> and /pub/fedora/linux/development/<fedora_release_number> and
@ -440,7 +458,6 @@ $ sudo systemctl restart fm-consumer@config.service bodhi-celery.service
`` ``
[NOTE] [NOTE]
.Note
==== ====
Build fedora-release, fedora-repos package for *rawhide after enabling Build fedora-release, fedora-repos package for *rawhide after enabling
the rawhide gating* the rawhide gating*
@ -452,14 +469,14 @@ We need to point the _rawhide_ buildroot repo to the newly created
rawhide buildroot. This way kojira doesn't make a newrepo for _rawhide_ rawhide buildroot. This way kojira doesn't make a newrepo for _rawhide_
target as often as fxx-build (new rawhide buildroot). target as often as fxx-build (new rawhide buildroot).
Run the following command from any of the compose boxes: Run the following commands from any of the compose boxes:
``
$ cd /mnt/koji/repos/rawhide; rm -f latest; ln -s ../f{rawhide}-build/latest
./latest
``
[source,bash,subs="attributes"]
----
$ cd /mnt/koji/repos/rawhide
$ rm -f latest
$ ln -s ../f{rawhide}-build/latest ./latest
----
=== Update block_retired.py script === Update block_retired.py script
@ -513,7 +530,8 @@ https://koji.fedoraproject.org/koji/packageinfo?packageID=21546[here].
On `compose-x86-01.phx2` run: On `compose-x86-01.phx2` run:
.... [source,bash,subs="attributes"]
----
# Update this to be the correct URL for your image # Update this to be the correct URL for your image
$ BASEIMAGE_URL="https://kojipkgs.fedoraproject.org//packages/Fedora-Docker-Base/Rawhide/20170310.n.0/images/Fedora-Docker-Base-Rawhide-20170310.n.0.x86_64.tar.xz" $ BASEIMAGE_URL="https://kojipkgs.fedoraproject.org//packages/Fedora-Docker-Base/Rawhide/20170310.n.0/images/Fedora-Docker-Base-Rawhide-20170310.n.0.x86_64.tar.xz"
@ -541,7 +559,7 @@ $ sudo docker push registry.fedoraproject.org/fedora:${RAWHIDE}
$ sudo docker rmi fedora-docker-base-rawhide-20170310.n.0.x86_64 $ sudo docker rmi fedora-docker-base-rawhide-20170310.n.0.x86_64
Untagged: fedora-docker-base-rawhide-20170310.n.0.x86_64:latest Untagged: fedora-docker-base-rawhide-20170310.n.0.x86_64:latest
$ for i in $(sudo docker images -q -f 'dangling=true'); do sudo docker rmi $i; done $ for i in $(sudo docker images -q -f 'dangling=true'); do sudo docker rmi $i; done
.... ----
=== Update sync script === Update sync script
@ -559,7 +577,6 @@ Use https://pagure.io/fedora-infra/ansible/pull-request/1527[this PR] for refere
= Consider Before Running = Consider Before Running
[NOTE] [NOTE]
.Note
==== ====
FIXME: Need some love here FIXME: Need some love here
==== ====