Review torrentrelease SOP

Signed-off-by: Michal Konečný <mkonecny@redhat.com>
This commit is contained in:
Michal Konečný 2021-09-10 15:53:12 +02:00
parent ba5cb1973c
commit ac5ebaed35
2 changed files with 69 additions and 121 deletions

View file

@ -106,7 +106,7 @@
** xref:status-fedora.adoc[Fedora Status Service - SOP] ** xref:status-fedora.adoc[Fedora Status Service - SOP]
** xref:syslog.adoc[Log Infrastructure - SOP] ** xref:syslog.adoc[Log Infrastructure - SOP]
** xref:tag2distrepo.adoc[Tag2DistRepo Infrastructure - SOP] ** xref:tag2distrepo.adoc[Tag2DistRepo Infrastructure - SOP]
** xref:torrentrelease.adoc[torrentrelease - SOP in review ] ** xref:torrentrelease.adoc[Torrent Releases Infrastructure - SOP]
** xref:unbound.adoc[unbound - SOP in review ] ** xref:unbound.adoc[unbound - SOP in review ]
** xref:virt-image.adoc[virt-image - SOP in review ] ** xref:virt-image.adoc[virt-image - SOP in review ]
** xref:virtio.adoc[virtio - SOP in review ] ** xref:virtio.adoc[virtio - SOP in review ]

View file

@ -21,170 +21,118 @@ Purpose::
== Torrent Release == Torrent Release
When you want to add a new torrent to the tracker at When you want to add a new torrent to the tracker at
[46]http://torrent.fedoraproject.org you need to take the following http://torrent.fedoraproject.org you need to take the following
steps to have it listed correctly: steps to have it listed correctly:
[arabic] [arabic]
. {blank} . login to _torrent02.fedoraproject.org_. If you are unable to do so please
+ contact the fedora infrastructure group about access. This procedure
login to torrent02.fedoraproject.org. If you are unable to do so requires membership in the torrentadmin group.
please::
contact the fedora infrastructure group about access. This procedure
requires membership in the torrentadmin group.
. Change the group ID to torrentadmin . Change the group ID to torrentadmin
+
....
[source,bash]
----
newgrp torrentadmin newgrp torrentadmin
---- ....
. Remove everything from the working directory `/srv/torrent/new/fedora/`
+
Remove everything from the working directory /srv/torrent/new/fedora/ ....
[source,bash]
----
rm -r /srv/torrent/new/fedora/* rm -r /srv/torrent/new/fedora/*
---- ....
. rsync all the iso's from ibiblio
+
rsync all the iso's from ibiblio ....
[source,bash]
----
rsync -avhHP rsync://download-ib01.fedoraproject.org/fedora-stage/<Version>_<Release>-<Label>/*/*/iso/ /srv/torrent/new/fedora/ rsync -avhHP rsync://download-ib01.fedoraproject.org/fedora-stage/<Version>_<Release>-<Label>/*/*/iso/ /srv/torrent/new/fedora/
---- ....
. cd into `/srv/torrent/new/fedora/` to change the directory structure
+
Then cd into /srv/torrent/new/fedora/ to change the directory ....
structure
[source,bash]
----
cd /srv/torrent/new/fedora/ cd /srv/torrent/new/fedora/
---- ....
. Directories should be created by removing Label in the iso's name
+
The directories should be created by removing Label in the iso's name ....
[source,bash]
----
for iso in $(ls *iso); do dest=$(echo $iso|sed -e 's|-<Label>.iso||g' ); mkdir $dest; mv $iso $dest; done for iso in $(ls *iso); do dest=$(echo $iso|sed -e 's|-<Label>.iso||g' ); mkdir $dest; mv $iso $dest; done
---- ....
. Copy the checksum's into the associated directories
+
Now copy the checksum's into the associated directories ....
[source,bash]
----
for checksum in $(ls *CHECKSUM); do for file in $(grep "SHA256 (" $checksum |sed -e 's|SHA256 (||g' -e 's|-<Label>.*||g' ); do cp $checksum $file ; done; done for checksum in $(ls *CHECKSUM); do for file in $(grep "SHA256 (" $checksum |sed -e 's|SHA256 (||g' -e 's|-<Label>.*||g' ); do cp $checksum $file ; done; done
---- ....
. Verify if all the checksums are copied into the right locations
Verify if all the checksums are copied into the right locations +
....
[source,bash]
----
ls */ ls */
---- ....
. Remove the manifest files and checksums for netinst (since we dont
Remove the manifest files and checksums for netinst (since we dont
mirror netinst images) and other files mirror netinst images) and other files
+
[source,bash] ....
----
rm -rf *manifest *netinst* *CHECKSUM *i386 *x86_64 rm -rf *manifest *netinst* *CHECKSUM *i386 *x86_64
---- ....
. Run the maketorrent script from `/srv/torrent/new/fedora/`
Run the maketorrent script from /srv/torrent/new/fedora/ +
....
[source,bash]
----
../maketorrent * ../maketorrent *
---- ....
+
____
[NOTE] [NOTE]
.Note
==== ====
Next steps should be run 12 hours before the release time which is Next steps should be run 12 hours before the release time which is
generally 14:00 UTC on Tuesday. generally 14:00 UTC on Tuesday.
==== ====
____
Grab fedora-torrent-init.py from releng scripts and change it to . Grab `fedora-torrent-init.py` from releng scripts and change it to
executable executable
+
[source,bash] ....
----
cd ~ cd ~
wget https://pagure.io/releng/raw/master/f/scripts/fedora-torrent-ini.py wget https://pagure.io/releng/raw/master/f/scripts/fedora-torrent-ini.py
chmod 755 ~/fedora-torrent-ini.py chmod 755 ~/fedora-torrent-ini.py
---- ....
. Run the following command from `/srv/torrent/new/fedora/`
Run the following command from /srv/torrent/new/fedora/ +
....
[source,bash]
----
~/fedora-torrent-ini.py <Version>_<Release> <Current_Date> > <Version>_<Release>.ini ~/fedora-torrent-ini.py <Version>_<Release> <Current_Date> > <Version>_<Release>.ini
---- ....
. Copy all the torrents to `/srv/web/torrents/`
Copy all the torrents to /srv/web/torrents/ +
....
[source,bash]
----
cp *torrent /srv/web/torrents/ cp *torrent /srv/web/torrents/
---- ....
. Copy everything in `/srv/torrent/new/fedora/` to `/srv/torrent/btholding/`
+
Copy everything in /srv/torrent/new/fedora/ to /srv/torrent/btholding/ ....
[source,bash]
----
cp -rl * /srv/torrent/btholding/ cp -rl * /srv/torrent/btholding/
---- ....
. Copy the .ini file created in step 12 to `/srv/torrent/torrent-generator/`
Copy the .ini file created in step 12 to /srv/torrent/torrent-generator/ +
....
[source,bash]
----
sudo cp <Version>_<Release>.ini /srv/torrent/torrent-generator/ sudo cp <Version>_<Release>.ini /srv/torrent/torrent-generator/
---- ....
. Restart rtorrent and opentracker services
Restart rtorrent and opentracker services +
....
[source,bash]
----
systemctl restart opentracker-ipv4 opentracker-ipv6 systemctl restart opentracker-ipv4 opentracker-ipv6
sudo -i sudo -i
su -s /bin/bash torrent su -s /bin/bash torrent
tmux (or tmux attach if the session is already running) tmux (or tmux attach if the session is already running)
control-q if rtorrent is already running. control-q if rtorrent is already running.
cd /srv/torrent/btholding cd /srv/torrent/btholding
rtorrent *.torrent rtorrent *.torrent
control-b d (disconnect from tmux) control-b d (disconnect from tmux)
---- ....
[NOTE] [NOTE]
.Note
==== ====
For final release, remove all the alpha and beta directories and torrent For final release, remove all the alpha and beta directories and torrent
files corresponding to the release in /srv/torrent/btholding/ directory. files corresponding to the release in `/srv/torrent/btholding/` directory.
==== ====
[NOTE] [NOTE]
.Note
==== ====
At EOL of a release, remove all the directories and torrent files At EOL of a release, remove all the directories and torrent files
corresponding to the release in /srv/torrent/btholding/ directory. corresponding to the release in `/srv/torrent/btholding/` directory.
==== ====