[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