Bug 233451

Summary: Cannot rhnpush different packages with same name to custom channels
Product: [Retired] Red Hat Network Reporter: Samuel Kielek <samuel.kielek>
Component: RHN/BackendAssignee: Bret McMillan <bretm>
Status: CLOSED NOTABUG QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: medium Docs Contact:
Priority: medium    
Version: RHN StableCC: rhn-bugs
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-03-22 18:35:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Samuel Kielek 2007-03-22 14:52:56 UTC
Description of problem:

If you have a package foo-1.0-0.noarch.rpm that was built for EL3 machines and
is in a custom child channel under a EL3 base channel and then you build another
package called foo-1.0-0.noarch.rpm on a EL4 machine and try to add it to a
custom child channel for EL4 under the EL4 base channel you get a md5 mismatch
and it skips the upload.

Version-Release number of selected component (if applicable):
Latest stable

How reproducible:
Always

Steps to Reproduce:
1. rhnpush --username=admin --password=foo -c custom-i386-es-3
/packages/rhel3es-i386/foo-1.0-0.noarch.rpm --server http://rhn.marriott.com/APP
-vvv
2. rhnpush --username=admin --password=foo -c custom-i386-es-4
/packages/rhel4es-i386/foo-1.0-0.noarch.rpm --server http://rhn.marriott.com/APP
-vvv

Actual results:
# rhnpush --username=admin --password=foo -c custom-i386-es-3
/packages/rhel3es-i386/foo-1.0-0.noarch.rpm --server http://rhn.marriott.com/APP
-vvv
Connecting to http://rhn.marriott.com/APP
url is http://rhn.marriott.com/PACKAGE-PUSH
Result codes: 200 OK
Computing md5sum and package Info .This may take sometime ...
Package /packages/rhel3es-i386/foo-1.0-0.noarch.rpm Not Found on RHN Server --
Uploading
Uploading package /packages/rhel3es-i386/foo-1.0-0.noarch.rpm


# rhnpush --username=admin --password=foo -c custom-i386-es-4
/packages/rhel4es-i386/foo-1.0-0.noarch.rpm --server http://rhn.marriott.com/APP
-vvv
Connecting to http://rhn.marriott.com/APP
url is http://rhn.marriott.com/PACKAGE-PUSH
Result codes: 200 OK
Computing md5sum and package Info .This may take sometime ...
Package /packages/rhel4es-i386/foo-1.0-0.noarch.rpm mismatch -- Skipping Upload
(use --force to force upload)

Expected results:

Since each package is unique and intended for a different RHEL release, the
second rhnpush should succeed and upload the package because it is going into a
channel for a different RHEL version.

Comment 1 Bret McMillan 2007-03-22 18:35:33 UTC
Packages are shared between channels.  RHN specifically does not want same
nvrea's owned by the same owner to have different checksums.  It's our way of
ensuring sanity in the nvrea namespace.

The proper thing to do here is increment the release field of the rpm and
rebuild the package, or make the package *be the same package*.

Comment 2 Samuel Kielek 2007-03-22 18:47:00 UTC
I see.. I guess I was expecting separation between channels. So in the example
above I should have R be 0.EL3 and 0.EL4 for RHEL3 and 4 respectively. That
makes sense, thanks.