[katello-devel] Katello upgrade and Puppet

Lukas Zapletal lzap at redhat.com
Wed Dec 5 15:33:13 UTC 2012


Hi,

recent Petr's changes showed that katello-upgrade does not play well
with puppet. We have touched this issue several times now:

- change touches a puppet template
- katello upgrade does this then:
  - stops services
  - executes our upgrade scripts
  - migrates databases
  - redeploys puppet (katello-configure)

When the change in a puppet template is not compatible (e.g. some
refactoring), migration fails because Katello won't boot with this
(wrong) configuration since codebase was already upgraded with yum.
We need to create an upgrade script that somehow corrects the
configuration file until it's redeployed via katello configure.

Two solutions I see:

1) Call puppet to only deploy configuration files and make this as a
first step before anything happens. I have been discussing this with
Foreman devs little while back, there are some features of puppet we
could use for this but this is not how they should be used. Also seems
to be "hacky".

2) Have full upgrade process in puppet. Very challenging, I can't really
believe this is even doable - we need to deploy configuration, then
execute some steps in particular order, then restart services. One big
disadvantage is the upgrade process cannot be interactive anymore I
believe - just fire and wait.

Opinions?

-- 
Later,

 Lukas "lzap" Zapletal
 #katello #systemengine




More information about the katello-devel mailing list