Bug 154248

Summary: Satellite should handle .nosrc.rpm packages
Product: Red Hat Satellite 5 Reporter: Steve Conklin <sconklin>
Component: ServerAssignee: John Wregglesworth <wregglej>
Status: CLOSED CURRENTRELEASE QA Contact: David Lutterkort <lutter>
Severity: medium Docs Contact:
Priority: medium    
Version: 360CC: hbrock, rhn-bugs, tao
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHN 4.0.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-09-01 02:39:36 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:
Bug Depends On: 155374    
Bug Blocks: 147875, 161444, 165746    

Description Steve Conklin 2005-04-08 18:16:42 UTC
Description of problem:

rhnpush fails for .nosrc.rpm packages. .nosrc.rpm is an accepted package file
extension, and should be valid for use with the satellite.

For more information, see IT#68302.

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


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Mihai Ibanescu 2005-04-14 22:26:38 UTC
did you try to use --source? Source rpms are "special".

Comment 2 Mihai Ibanescu 2005-04-14 22:27:18 UTC
Oh, sorry, misread the bug report - .nosrc.rpm are not exactly supported by os
devel.

Comment 3 Mihai Ibanescu 2005-04-14 22:28:42 UTC
John, can you please try to reproduce the error? We can try to patch it to work
with those packages, but AFAIR it's really difficult to know it's a nosrc.rpm -
nothing in the rpm header tells you that.

Comment 4 John Wregglesworth 2005-04-15 14:52:40 UTC
I tried uploading a nosrc rpm without --source and got this traceback:
Traceback (most recent call last):
  File "rhnpush.py", line 413, in ?
    sys.exit(main() or 0)
  File "rhnpush.py", line 133, in main
    upload.packages()
  File "rhnpush.py", line 276, in packages
    ret = self.package(p)
  File "rhnpush.py", line 301, in package
    h = uploadLib2.get_header(package, source=self.options.source)
  File "uploadLib2.py", line 598, in get_header
    raise UploadError("Unexpected RPM package type")
uploadLib2.UploadError: Unexpected RPM package type


When I tried uploading the package using --source it supposedly uploads the
package to the channel (gets a 200 result code), but I can't find it anywhere
through the web interface. It looks like rhnpush treats nosrc packages the same
way it treats src packages.

Comment 5 John Wregglesworth 2005-05-25 16:32:18 UTC
Test Plan:

o Find a nosrc rpm and a binary version of the nosrc rpm.

o Using rhnpush, push the binary version of the nosrc rpm into a channel.

  rhnpush --server=servername/APP --channel=channel_name file.rpm

o Using rhnpush, push the nosrc rpm using the --source option. Doesn't have to
be into a channel.

  rhnpush --server=servername/APP --source ~/file.nosrc.rpm

o Through the web interface, go to Channels->Manage Software Channels->Manage
Software Packages and click on the name of the binary rpm that you pushed earlier.

o The Source RPM field should list the nosrc version of the rpm that you pushed
earlier.

o The Download section at the bottom of the screen should list the nosrc rpm as
being available for download.

o Download the nosrc rpm and ensure that the filename is correct.


Comment 12 David Lutterkort 2005-08-03 23:41:11 UTC
Excellent ! Works with rhnpush-4.0.0-156.rhel4 from
rhn-satellite-4.0.0-101-redhat-linux-as-i386-4-embedded-oracle.iso