Bug 1024111 - yum-config-manager --setopt doesn't work with dotted repoids
yum-config-manager --setopt doesn't work with dotted repoids
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: yum (Show other bugs)
All Linux
high Severity high
: rc
: 6.5
Assigned To: packaging-team-maint
Karel Srot
: 1073626 (view as bug list)
Depends On: 1023595 1094373 1097297
Blocks: 1099559
  Show dependency treegraph
Reported: 2013-10-28 17:07 EDT by John W. Lamb
Modified: 2014-10-14 00:37 EDT (History)
9 users (show)

See Also:
Fixed In Version: yum-3.2.29-47.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1023595
Last Closed: 2014-10-14 00:37:00 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Bugzilla 1023595 None None None Never

  None (edit)
Description John W. Lamb 2013-10-28 17:07:21 EDT
+++ This bug was initially created as a clone of Bug #1023595 +++

Description of problem:

Running yum-config-manager --setopt=repo.id.with.dots.enabled=0 repo.id.with.dots --save doesn't update the repo config file as expected.

Version-Release number of selected component (if applicable):
yum-utils-1.1.31-14 (Fedora)
yum-utils-1.1.30-14 (Red Hat 6.4)

How reproducible:

Add a repository with dots in the repoid, then try to adjust some attribute using yum-config-manager --setopt 

Steps to Reproduce:
1. Add a repo in /etc/yum.repos.d with a dot in the repoid (in RHEL, this was discovered with the OpenShift repos, e.g. rhel-server-ose-1.2-infra-6-rpms)
2. Try to adjust some option using yum-config-manager: yum-config-manager --setopt=rhel-server-ose-1.2-infra-6-rpms.enabled=0 rhel-server-ose-1.2-infra-6-rpms --save
3. Check the repo file to verify that the change did not get committed

Actual results:
The "enabled" option will remain unchanged

Expected results:
The "enabled" option will be written to file as "enabled=0"

Additional info:
As mentioned above, this impacts Fedora and RHEL.

--- Additional comment from Luke Meyer on 2013-10-26 07:12:01 EDT ---

There is some indication that you should be able to work around this with wildcards, e.g. http://lists.baseurl.org/pipermail/yum-commits/2012-February/004559.html

At least with yum-utils-1.1.30-14.el6.noarch though, this doesn't work. Wildcard setopts are silently ignored. E.g.:

yum-config-manager  --setopt '*.exclude=bar' rhel-6-server-rpms --save
# that does nothing
yum-config-manager  --setopt 'rhel-6-server-rpms.exclude=bar' rhel-6-server-rpms --save
# that works

BTW, would it be too much trouble to get some kind of error indication when setopt is ignored? As it is, the only way you can tell you've made a typo or it didn't work is by checking the output value to see if it matches what you put in, which isn't great for scripted usage.
Comment 2 James Antill 2013-11-15 10:05:29 EST
Simple patch, that should backport easily ...

commit a39f13193419ce9494f21963b32ed7d4453e8e49
Author: James Antill <james@and.org>
Date:   Fri Oct 25 16:38:13 2013 -0400

     Fix some bugs in setopt for repo config. entries. BZ 1023595.
    1. Sort the wildcard entries, so we always do them in the same order
    (probably almost never get more than one anyway).
    2. Split repoid.config_name on the last dot instead of the first as
    repoid can contain dots.
    3. Don't set non-wildcard entries twice, just for fun.
Comment 3 Luke Meyer 2013-11-15 11:25:29 EST
We'd like to request a 6.5 errata for this. 6.4 z-stream not needed, but we don't want to wait for 6.6. I'll try to figure out whom to involve to get it on the right track.
Comment 7 Valentina Mukhamedzhanova 2014-03-26 06:43:33 EDT
*** Bug 1073626 has been marked as a duplicate of this bug. ***
Comment 14 errata-xmlrpc 2014-10-14 00:37:00 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.