Description of problem:
up2date --channel with no specified package checks for updates on all subscribed
channels. It should only check for updates on the specified channel.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install the latest up2date package.
2. Subscribe a system to a base and at least one child channel.
3. Run 'up2date --channel <child channel> -l'
up2date will check for updates on all subscribed channels
up2date should only check for updates on the specified child channel
[root@rlx-3-04 tmp]# up2date -l --channel rhn-tools-rhel-3-as-i386
Fetching Obsoletes list for channel: rhel-i386-as-3...
Fetching Obsoletes list for channel: rhn-tools-rhel-3-as-i386...
Blocking rhnupr4u4 and rhnupr3u8 to track the progress of the release
Moving bugs to the CanFix List
Should be fixed in >= 4.4.69-1 See #178498 for testplan.
This Bug has been fixed in this release
--channel=foo will now limit the channel universe for any operations, including
-u, pkgname, --installall, --showall, --showavailable, and -l.
1) install a system, register it to multiple child channels (extras, fastrack,
and rhn-tools work rather well)
2) use combinations of --channel=channel_label to see if the output makes sense:
'up2date --channel=foo -l' should list the available updated packages within foo.
'up2date --channel=foo --channel=bar --installall' should install anything
within the specified channels
Negative tests include:
'up2date --channel=channel_i_dont_have_access_to -u'
'up2date --channel=doesnt_exist --showall'
Manpage has been updated to eliminate the --installall tie.
Verified with up2date-4.4.69-8 and rhnlib-1.8.7-1 on i386, ia64, and x86_64.
Shown are example commands from i386 tests:
PASS- up2date --channel=rhel-i386-as-3-extras -l
PASS- up2date --channel=rhel-i386-as-3-extras --channel=rhn-tools-rhel-3-as-i386 -l
PASS- up2date --channel=rhel-i386-as-3-extras
--channel=rhn-tools-rhel-3-as-i386 --installall (theoretically passed, but there
were some unresolved dependencies)
The negative tests resulted in a new bug:
I also looked at the manpage, and I'm not really sure what I was supposed to be
checking for there, since it looks pretty much like it did before.
Overall, up2date is now proven to only check the specified channel, which was
the point of this bug.
Reopening this bug per comments in 178498.
Packages are built, should be fixed in up2date 4.4.69-14
--installall doesn't require a parameter. Isn't it supposed to?
It should require a parameter at this point.
[root@fjs-0-06 tmp]# up2date --installall=rhn-tools-rhel-3-as-i386
usage: up2date [OPTIONS] [<packages>]
/usr/sbin/up2date: error: --installall option does not take a value
[root@fjs-0-06 tmp]# rpm -q up2date
-14 had some bad weirdness. Repaired packages are -16.
These commands now work as they should. This could mean they complete or fail,
up2date --channel=rhn-tools-rhel-3-as-i386 --channel=rhel-i386-as-3 rhn-applet
up2date --installall rhn-tools-rhel-3-as-i386 rhn-applet-actions -f
up2date --channel rhn-tools-rhel-3-as-i386 rhn-applet
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.