From c24a05ee10b4b6e7ba5764eccc5ddc02bb2f8b05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20Kone=C4=8Dn=C3=BD?= Date: Fri, 10 Sep 2021 14:04:10 +0200 Subject: [PATCH] Review scmadmin SOP MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michal Konečný --- modules/sysadmin_guide/nav.adoc | 2 +- modules/sysadmin_guide/pages/scmadmin.adoc | 100 ++++++++------------- 2 files changed, 37 insertions(+), 65 deletions(-) diff --git a/modules/sysadmin_guide/nav.adoc b/modules/sysadmin_guide/nav.adoc index cfce74b..6aea558 100644 --- a/modules/sysadmin_guide/nav.adoc +++ b/modules/sysadmin_guide/nav.adoc @@ -96,7 +96,7 @@ ** xref:requestforresources.adoc[Request for resources - SOP] ** xref:resultsdb.adoc[ResultsDB - SOP] ** xref:retrace.adoc[Retrace - SOP] -** xref:scmadmin.adoc[scmadmin - SOP in review ] +** xref:scmadmin.adoc[SCM Admin - SOP] ** xref:selinux.adoc[selinux - SOP in review ] ** xref:sigul-upgrade.adoc[sigul-upgrade - SOP in review ] ** xref:simple_koji_ci.adoc[simple_koji_ci - SOP in review ] diff --git a/modules/sysadmin_guide/pages/scmadmin.adoc b/modules/sysadmin_guide/pages/scmadmin.adoc index 0770ff9..06b0e67 100644 --- a/modules/sysadmin_guide/pages/scmadmin.adoc +++ b/modules/sysadmin_guide/pages/scmadmin.adoc @@ -1,54 +1,30 @@ = SCM Admin SOP [WARNING] -.Warning ==== Most information here (probably 1.4 and later) is not updated for pkgdb2 and therefore not correct anymore. ==== +TODO: This whole SOP needs a revision + == Contents -[arabic] -. Creating New Packages - -____ -[arabic] -. Obtaining process-git-requests -. Prerequisites -. Running the script -. Steps for manual processing -____ - -____ -[arabic] -. Using pkgdb-client -. Using pkgdb2branch -. Update Koji -____ - -____ -[arabic, start=5] -. Helper Scripts -____ - -____ -[arabic] -. mkbranchwrapper -. setup_package -____ - -____ -[arabic, start=6] -. Pseudo Users for SIGs -____ - -____ -[arabic, start=2] -. Deprecate Packages -. Undeprecate Packages -. Performing mass comaintainer requests -____ +* <<_creating_new_packages>> +** <<_obtaining_process_git_requests>> +** <<_prerequisites>> +** <<_running_the_script>> +** <<_steps_for_manual_processing>> +*** <<_using_pkgdb_client>> +*** <<_using_pkgdb2branch>> +*** <<_update_koji>> +** <<_helper_scripts>> +*** <<_mkbranchwrapper>> +*** <<_setup_package>> +** <<_pseudo_users_for_sigs>> +* <<_deprecate_packages>> +* <<_undeprecate_packages>> +* <<_performing_mass_comaintainer_requests>> == Creating New Packages @@ -77,9 +53,9 @@ The script lives in `scripts/process-git-requests`. === Prerequisites -You must have the python-bugzilla and python-fedora packages installed. +You must have the `python-bugzilla` and `python-fedora` packages installed. -Before running process-git-requests, you should run: +Before running `process-git-requests`, you should run: .... bugzilla login @@ -92,7 +68,7 @@ least a month); if you wish to remove it, delete the `~/.bugzillacookies` file. It is also advantageous to have your Fedora ssh key loaded so that you -can ssh into pkgs.fedoraproject.org without being prompted for a +can ssh into _pkgs.fedoraproject.org_ without being prompted for a password. It perhaps goes without saying that you will need unfirewalled and @@ -100,7 +76,7 @@ unproxied access to ports 22, 80 and 443 on various Fedora machines. === Running the script -Simply execute the process-git-requests script and follow the prompts. +Simply execute the `process-git-requests` script and follow the prompts. It can provide the text of all comments in the bugzilla ticket for inspection and will perform various useful checks on the ticket and the included SCM request. If there are warnings present, you will need to @@ -118,22 +94,21 @@ server to create the repository. If this does not succeed, the package name is saved and when you finish processing a command line will be output with instructions on creating the repositories manually. If you hit Crtl-C or the script otherwise aborts, you may miss this -information. If so, see below for information on running pkgdb2branch.py +information. If so, see below for information on running `pkgdb2branch.py` on the SCM server; you will need to run it for each package you created. === Steps for manual processing It is still useful to document the process of handling these requests -manually in the case that process-git-requests has issues. +manually in the case that `process-git-requests` has issues. [arabic] . Check Bugzilla Ticket to make sure it looks ok -. Add the package information to the packagedb with pkgdb-client -. Use pkgdb2branch to create the branches on the cvs server +. Add the package information to the packagedb with `pkgdb-client` +. Use `pkgdb2branch` to create the branches on the cvs server ____ [WARNING] -.Warning ==== Do not run multiple instances of pkgdb2branch in parallel! This will cause them to fail due to mismatching 'modules' files. It's not a good @@ -148,7 +123,7 @@ ____ ==== Using pkgdb-client Use pkgdb-client to update the pkgdb with new information. For instance, -to add a new package:: +to add a new package: .... pkgdb-client edit -u toshio -o terjeros \ @@ -191,7 +166,6 @@ export PACKAGEDBURL=https://admin.fedoraproject.org/pkgdb .... [NOTE] -.Note ==== You may be asked to CC fedora-perl-devel-list on a perl package. This can be done with the username "perl-sig". This is presently a user, not @@ -200,24 +174,24 @@ a group so it cannot be used as an owner or comaintainer, only for CC. === Using pkgdb2branch -Use pkgdb2branch.py to create branches for a package. pkgdb2branch.py +Use `pkgdb2branch.py` to create branches for a package. `pkgdb2branch.py` takes a list of package names on the command line and creates the branches that are specified in the packagedb. The script lives in -/usr/local/bin on the SCM server (pkgs.fedoraproject.org) and must be +`/usr/local/bin` on the SCM server (_pkgs.fedoraproject.org_) and must be run there. For instance, `pkgdb2branch.py python-exif qa-assistant` will create -branches specified in the packagedb for python-exif and qa-assistant. +branches specified in the packagedb for _python-exif_ and _qa-assistant_. -pkgdb2branch can only be run from pkgs.fedoraproject.org. +`pkgdb2branch` can only be run from _pkgs.fedoraproject.org_. === Update Koji Optionally you can synchronize pkgdb and koji by hand: it is done automatically hourly by a cronjob. There is a script for this in the -admin/ directory of the CVSROOT module. +`admin/` directory of the CVSROOT module. -Since dist-f13 and later inherit from dist-f12, and currently dist-f12 +Since _dist-f13_ and later inherit from _dist-f12_, and currently _dist-f12_ is the basis of our stack, it's easiest to just call: .... @@ -229,7 +203,7 @@ Just run `./owners-sync-pkgdb` for usage output. This script requires that you have a properly configured koji client installed. -owner-sync-pkgdb requires the koji client libraries which are not +`owner-sync-pkgdb` requires the koji client libraries which are not available on the cvs server. So you need to run this from one of your machines. @@ -255,7 +229,6 @@ is created in devel only. `mkbranchwrapper` has to be run from cvs-int. [IMPORTANT] -.Important ==== mkbranchwrapper is not used by any current programs. Use pkgdb2branch instead. @@ -292,14 +265,13 @@ done then call the script with all branches after it. [NOTE] -.Note ==== -setup_package is currently called from pkgdb2branch. +`setup_package` is currently called from `pkgdb2branch`. ==== === Pseudo Users for SIGs -See [62]Package_SCM_admin_requests#Pseudo-users_for_SIGs for the current +See Package_SCM_admin_requests#Pseudo-users_for_SIGs for the current list. === Deprecate Packages @@ -310,7 +282,7 @@ command to deprecate a package. === Undeprecate Packages -Any cvsadmin can undeprecate a package. Simply use pkgdb-client to +Any cvsadmin can undeprecate a package. Simply use `pkgdb-client` to assign an owner and the package will be undeprecated: ....