Errata/package handling in satellite server with cloned channels
Hi!
I have the following channel structure:
RHN synchronized channels (Red Hat Enterprise Linux (v. 6 for 64-bit x86_64) and child channels) cloned to engineering (sandbox).
engineering is cloned to development
development is cloned to test
test is cloned to preprod
preprod is cloned to production
I have never grasped errata handling in satellite fully. How do you clone/add/copy errata and new packages from one cloned channel to the next stage in the hierarchy? The errata cloning / publishing is very slow and cumbersome, what if I need to add 50 errata?
Best regards,
Erling
Responses
A starting point is using clone-by-date. This allows you to skip the individual approval process for errata. This does mean you need to do this on a date basis, so you will be pulling everything into the engineering channel from the RHN base channel from then. Once you start pushing up to the other clones, it's not such a big deal, you can use the engineering source.
You also need to make sure that there aren't any updates pushed during your testing process, e.g. engineering is frozen until *after* the clone to dev. Otherwise you run the risk of adding untested errata.
spacewalk-clone-by-date --username=demo-admin -l rhel-x86_64-server-6 ENG-rhel-x86_64-server-6 -d `date -d today +%Y-%m-%d` spacewalk-clone-by-date --username=demo-admin -l ENG-rhel-x86_64-server-6 DEV-rhel-x86_64-server-6 -d `date -d 'next week' +%Y-%m-%d`
Change to your username and I've made up the target channel names. Make sure to change the date strings too :). You can use any date in the past, e.g. -d 2011-01-13 should get you everything as of the release of RHEL 5.6.
If you have a large number of channels and child channels, look into using a config file. Here's a sample:
{
"username":"demo-admin",
"assumeyes":true,
"blacklist": {
},
"removelist": {
},
"channels":[
{
"rhel-x86_64-server-6":"dev-rhel-x86_64-server-6",
"jbappplatform-5-x86_64-server-6-rpm":"dev-jbappplatform-5-x86_64-server-6-rpm",
"jbappplatform-6-x86_64-server-6-rpm":"dev-jbappplatform-6-x86_64-server-6-rpm",
"rhel-x86_64-rhev-agent-6-server":"dev-rhel-x86_64-rhev-agent-6-server",
"rhel-x86_64-server-6-rhevh":"dev-rhel-x86_64-server-6-rhevh",
"rhel-x86_64-server-6-rhevm-3":"dev-rhel-x86_64-server-6-rhevm-3",
"rhel-x86_64-server-6-rhevm-3.1":"dev-rhel-x86_64-server-6-rhevm-3.1",
"rhel-x86_64-server-ha-6":"dev-rhel-x86_64-server-ha-6",
"rhel-x86_64-server-optional-6":"dev-rhel-x86_64-server-optional-6",
"rhel-x86_64-server-rs-6":"dev-rhel-x86_64-server-rs-6",
"rhel-x86_64-server-supplementary-6":"dev-rhel-x86_64-server-supplementary-6",
"rhn-tools-rhel-x86_64-server-6":"dev-rhn-tools-rhel-x86_64-server-6"
}
]
}
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
