[Spacewalk-list] How to set the package Content Provider

Justin Sherrill jsherril at redhat.com
Tue Nov 18 16:56:03 UTC 2008


Stephen Berg (Contractor) wrote:
> Justin Sherrill wrote:
>> Stephen Berg (Contractor) wrote:
>>  
>>> I'm pushing some updated packages into spacewalk and noticed that if I
>>> push from a locally mirrored directory the Content Provider shows up
>>> as Unknown.  Is there a way to set that field when doing the
>>> rhnpush? The original package that was pushed into spacewalk came
>>> from a
>>> similarly rsync'ed local mirror and it shows Fedora as the provider.
>>>
>>> gvfs-0.2.3-11.fc9.i386        Backends for the gio framework in GLib
>>>     Fedora
>>> gvfs-0.2.3-11.fc9.x86_64     Backends for the gio framework in
>>> GLib     Fedora
>>> gvfs-0.2.5-1.fc9.i386     Backends for the gio framework in GLib   
>>> Unknown
>>> gvfs-0.2.5-1.fc9.x86_64     Backends for the gio framework in
>>> GLib    Unknown
>>>
>>>     
>> The content provider is based on the GPG key used to sign the
>> package.  Had you rebuilt the two gvfs-0.2.5-1 packages ?  
>> Actually, now that I think about it, we probably haven't included the
>> new Fedora GPG key.  I'll look into this......
>>
>> -Justin
>>   
> I see that on anything that is added after initially pushing the core
> Fedora 9 content.  I see the same thing for all the packages that I
> pushed from RPM Fusion into a child channel.  I don't have the RPM
> Fusion installed on the server, would installing it on the hosting
> server have any effect on this or is spacewalk independent from the
> hosting OS?
>
The installing OS doesn't really make any difference. We store a mapping
of GPG Key ids -> Providers in the rhnPackageKey table.  Here's an
example of an insertion that we do upon installation of spacewalk:

#sqlplus spacewalk/spacewalk at xe

sqlplus>  insert into rhnPackageKey (id, key_id, key_type_id,
provider_id) values
(rhn_pkey_id_seq.nextval, 'b44269d04f2a6fd2',
lookup_package_key_type('gpg'), lookup_package_provider('Fedora'));

This requires on their being a package provider (from
rhnPackageProvider) named 'Fedora'.  To insert that, we ran:

sqlplus>  insert into rhnPackageProvider (id, name) values
(rhn_package_provider_id_seq.nextval, 'Fedora' );
sqlplus>commit


To get the gpg key ID that you need to insert, simply run 'rpm -qip
package.rpm' and look for the "Key ID" field.   I'd like to make a UI
for adding package Ids and providers, but currently there isn't a way to
do that.  What were the GPG ids for packages that are showing up as unknown?

-Justin




More information about the Spacewalk-list mailing list