We want to remove the old perl script, so verify that the new xmlrpc python code
* Select a base channel and shadow channel pair. I used rhel-i386-server-5 and
rhel-i386-server-5-shadow. Alternatively, create your own (a shadow channel is
just a normal channel with -shadow at the end of the label, and belonging to
no channel family)
* Find some sample errata to use. For example, the file
* The push-erratum file is a python script to put a specific erratum into an
rhn instance. Unfortunately, it is totally unreadable, so its very hard to
change any of the values. To work around this, run rhn-errata-manipulator
from the rhn-content-mgmt source tree:
* You'll now have a nicely formatted erratum in RHSA-2008_0208.json
* Open your erratum and change the advisory_name field (I tack JBOWES onto
the end), and delete all but one of the entries from errata_files, for
simplicity's sake. For the remaining file, remove all but one of the entries
for "rhn_channel", and change it to your shadow channel.
* Your erratum is now ready to be added to your channel (wheeee!):
* repeat for as many errata as you want to test with.
* Verify that the packages associated with your errata are now in your shadow
channel (in sqlplus):
select * from rhnchannelpackage where channel_id in (select id from
rhnchannel where label='rhel-i386-server-5');
* Now, migrate the content of your shadow channel to the real channel:
rhn-migrate-channel-internal --server dev -m rhel-i386-server-5-shadow --commit
* Verify that the pacakges assciated with your errata are no longer in the
* Verify that your errata are now in the rhnErrataQueue table.
* At this point you should be able to run yum list updates or similar on a
rhel 5 machine subscribed to dev and see the packages from your errata.
The webui will not yet be updated, however.
* After a sufficient amount of time, check the rhnErrataQueue table to see if
taskomatic has processed your errata (they will be removed from the table
when it has).
* Now you can run a perl script that is usually run via cron to process the
errata for your org:
/usr/share/rhn/scripts/process-errata-cache-queue.pl --org ORG_ID
you can get your org id from sqlplus:
select org_id from web_contact where login='your_login'
* Once the above script is done running, you should be able to see the errata
in your list of relevant errata from the webui, and have it show up as
applicable to your systems
rhn-manipulate-errata requires the python-simplejson module.
It's in fedora and EPEL.
did this on dev-- on friday 4/4 all set
verified in qa