Add SOP for removing tarballs in the dist-git rpm branches

Signed-off-by: Samyak Jain <samyak.jn11@gmail.com>
This commit is contained in:
Samyak Jain 2024-09-27 15:21:44 +05:30 committed by jnsamyak
parent a7f7b78d68
commit e71562063e
2 changed files with 70 additions and 0 deletions

View file

@ -59,6 +59,7 @@
*** xref:releng_misc_guide:sop_unretire.adoc[Unretire package branch]
*** xref:releng_misc_guide:sop_update_critpath.adoc[Update Critpath]
*** xref:releng_misc_guide:sop_remote_dist_git_branches.adoc[Remove dist-git branches]
*** xref:releng_misc_guide:sop_remote_tarballs_dist_git.adoc[Remove tarballs from dist-git branches]
*** xref:releng_misc_guide:sop_package_unblocking.adoc[Package Unblocking]
*** xref:releng_misc_guide:sop_retire_orphaned_packages.adoc[Retire Orphaned Packages]
*** xref:releng_misc_guide:sop_requesting_task_automation_users.adoc[Requesting Automation Users]

View file

@ -0,0 +1,69 @@
= Removing unwanted tarballs from the dist-git rpms
:page-authors: sysadmin-main
== Description
This SOP provides instructions for sysadmin-main level users to remove unwanted tarballs and source RPMs from a branch in the dist-git repositories on Fedora's infrastructure.
== Access level required
* `sysadmin-main`
== Machine
* `pkgs01.iad2.fedoraproject.org`
== Steps to access the machine
. SSH into `batcave01.iad2.fedoraproject.org`:
+
----
ssh batcave01.iad2.fedoraproject.org
----
. Switch to the root user:
+
----
sudo su
----
. SSH into `pkgs01.iad2.fedoraproject.org`:
+
----
ssh pkgs01.iad2.fedoraproject.org
----
== Removing unwanted tarballs from dist-git
To remove unwanted tarballs and source RPMs from a specific branch of a package in the dist-git repository:
. Navigate to the package repository:
+
----
cd /srv/git/repositories/rpms/PKG_NAME.git
----
. Rewrite history on the desired branch:
+
----
FILTER_BRANCH_SQUELCH_WARNING=1 git filter-branch --force --index-filter 'git rm -r --cached --ignore-unmatch *.src.rpm *.tar.gz' --original refs/archive -- BRANCH
----
. Move the backup reference:
+
----
mv refs/archive/refs/heads/BRANCH refs/archive/BRANCH
----
. Remove the redundant directories:
+
----
rm -r refs/archive/refs/
----
[NOTE]
====
Replace `PKG_NAME` with the name of the package.
Replace `BRANCH` with the target branch name.
====
== Verification
Verify the unwanted files have been removed from the branch history.