Should we use foreman-installer during update process?

Hello,

today we had a discussion regarding update process and foreman-installer. I
think it should become a recommended, still optional, step that users should
run foreman-installer after packages update. I think that installer is not
just one time script to setup things but the benefit is that you can rerun it
to get your system back to right configuration if you break something.

So it makes sense to me to run the installer after upgrade to be sure, that
your system is configured correctly after upgrade. In theory it should not
break anything if users didn't change any config files manually. To get a better
idea what it would do they could use no-op mode. It has some flaws, e.g.
dependent resources may seem failing, but this shouldn't be a issue during
updates. After they're sure that installer does not overwrite any custom
modification they could run without --no-op. I created PR updating manual about
this [1].

There were concerns that this should be done by packages and not the
installer. From my point of view, that would be a duplication of logic that is
in puppet module, deb and rpm packages. Personally I'm not sure why package
should touch config files created or managed by foreman-installer (foreman
settings, database.yml). Greg, could you please explain your opinion, you'll
do it better than I did.

So we'd like to know opinions from others.

[1] https://github.com/theforeman/theforeman.org/pull/252

ยทยทยท -- Marek