From Fedora Project Wiki

(→‎Description: update description)
m (fix wiki syntax)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Description ==
{{admon/important|This page is deprecated|Please see [https://docs.pagure.org/releng/sop_package_blocking.html The Package Blocking Standard Operating Procedure] in the new [https://docs.pagure.org/releng/ Fedora Release Engineering Documentation] for the current documentation}}
If a package is [[How_to_remove_a_package_at_end_of_life removed]] from Fedora, for example because it was renamed, it needs to be blocked in Koji. This prevents creating new package builds and distribution of built RPMs. Packages are blocked in the listing of ''tags'', due to inheritance it is enough to block packages at the oldest tag will make it unavailable also in upstream tags.
 
== Action ==
<!-- Describe the action and provide examples
-->
=== Find Block requests ===
Block requests are usually reported in the rel-eng trac instance at Fedorahosted in the component koji. You can use a trac query to list all [https://fedorahosted.org/rel-eng/query?status=new&status=assigned&status=reopened&component=koji&owner=rel-eng%40lists.fedoraproject.org&order=priority unassigned Koji tickets]. This query also includes requests, that are not a block request, because there is no automated way to distinguish them. The results of the query are also available as an RSS feed, the link is in the footer of the page.
 
=== Perform the blocking ===
 
==== Discover proper place to block ====
The ticket should tell you which Fedora releases to block the package in.  Typically it'll say "Fedora 13", "F14" or rawhide.  This means we need to block it at that Fedora level and all future tags.  However we do not block packages in a Fedora release that has gone public unless.
 
The appropriate place to block a package is at the "f??" tag level (even for rawhide, then the tag for the next release needs to be used, not the rawhide tag).  This way the setting of block or not is inherited into future tags.
 
==== Performing the package block ====
 
To block a package for a tag, use the <code>block-pkg</code> method of Koji.
<pre>
$ koji block-pkg --help
Usage: koji block-pkg [options] tag package [package2 ...]
(Specify the --help global option for a list of other help options)
 
Options:
  -h, --help  show this help message and exit
</pre>
 
For example, if we were asked to block python-psyco in Fedora 20 we would issue:
<pre>
$ koji block-pkg f20 python-psyco
</pre>
 
Now the ticket can be closed.
 
== Verification ==
<!-- Provide a method to verify the action was successful
-->
To verify that the package was successfully blocked use the <code>list-pkgs</code> koji command:
 
<pre>
$ koji list-pkgs --show-blocked --package python-psyco
</pre>
 
We should see the package listed as blocked:
 
<pre>
Package                Tag                    Extra Arches    Owner         
----------------------- ----------------------- ---------------- ---------------
python-psyco            f20                                      konradm        [BLOCKED]
</pre>
 
We should not see it listed in any later Fedora tags.
 
== Consider Before Running ==
<!-- Create a list of things to keep in mind when performing action.
-->
* Don't block packages in a released Fedora unless it is a rename.  We cannot remove the package from the release repository
* Watch the next day's rawhide/branched/whatever report for a slew of broken deps related to the package.  We may have to unblock the package in order to fix the deps.
 
 
[[Category:Release Engineering SOPs]]
[[Category:Release Engineering SOPs]]

Latest revision as of 21:53, 10 August 2018

This page is deprecated
Please see The Package Blocking Standard Operating Procedure in the new Fedora Release Engineering Documentation for the current documentation