When upgrading a 7.4 Xenserver to 7.5 via the updates ISO (which behind the scenes uses yum to update the packages) and comparing to a 7.5 fresh install, I see differences regarding pbis-open's service files.
After a fresh 7.5 install, I get a sysvInit service file, not systemd units :
After the upgrade, I get systemd units instead.
/etc/systemd/system/lwsmd.service /etc/systemd/system/multi-user.target.wants/lwsmd.service /etc/systemd/system/nss-lookup.target.wants/ /etc/systemd/system/nss-lookup.target.wants/lwsmd.service
According to what I see in the spec file, it is probably a dependency ordering issue: if pbis-open gets installed before systemd, then in the %post scriptlet systemd is not detected and it falls back to initscripts. When the pbis-open package is upgraded, then systemd is detected and it switches to systemd units.
Proposed solution, add:
Or maybe better yet:
... which evaluates to:
$ rpm --eval %systemd_requires Requires(post): systemd Requires(preun): systemd Requires(postun): systemd
(requires systemd as BuildRequires)
I hope my analysis is correct.