[hobbit] Is anyone working on a RHEL/CentOS spec file to build an rpm package?
Russ Hammer
russ at perneus.com
Thu Aug 27 16:08:49 CEST 2009
Hi,
Thanks for this.
Russ
On Wed, 2009-08-26 at 09:18 +0200, Christoph Schug wrote:
> Russ Hammer wrote:
> > Is anyone working on a RHEL/CentOS spec file to build an rpm package?
> > If so, is it being integrated into the xymon source tree?
> >
> > If not, does anyone have one that I could use (at least as a starting
> > point) to build an rpm for xymon 4.2.3 on CentOS 5.3 x86_64?
>
> Hi Russ!
>
> I made a client-only package for the CentOS 5.3 nodes of my employer
> (server is running FreeBSD). As this was done as part of my professional
> work, I am not sure if I am allowed to publish the spec and patches I
> made for legal reasons. But at least I can give you some hints and
> tweaks, which were needed in my case.
>
> First some patches. I was required to tweak the hobbitd-client target in
> build/Makefile.rules, as the LDFLAGS were missing
> 'LIBRTDEF="$(LIBRTDEF)"'. In configure.client I had to source
> build/clock-gettime-librt.sh and also had to 'echo LIBRTDEF = $LIBRTDEF"
> >>Makefile' near where also the LFSDEF definition gets appended to the
> Makefile.
>
> When building client-only ('CONFTYPE="client" ... ./configure
> --client'), the build process always assumes local client mode.
> Therefore, after the configure you have set 'LOCALCLIENT=no' in the
> resulting Makefile.
>
> As you would build the package with no root privs, ensure that you
> invoke 'make PKGBUILD="1"', otherwise the build process tries (and fails
> of course) to chmod(1)/chown(1) files. You have to set correct
> permissions later of using the RPM file list.
>
> After performing the 'make install INSTALLROOT="$RPM_BUILD_ROOT"
> PKGBUILD="1"' step, you can remove any hobbitclient-*.sh scripts except
> hobbitclient-linux.sh. You may also want to allign the file system
> layout to common standards by relocating directories like 'client/etc'
> to '%{_sysconfdir}/xymon/client/etc' for example. Same thing for
> 'client/tmp' or 'client/logs', which should go to
> '%{_localstatedir}/...' for example. I used symlinks for this approach.
> Not nice, but IMHO at least somehow better than having stuff like log
> files under /usr/... You might also want to strip(1) the binaries.
>
> Final steps were to provide an according run-command script which was
> copied to '%{_initrddir}/xymon-client'. Also don't forget to create the
> user (with the same name as we defined BBUSER when calling the configure
> script" as part of the %pre script. In the %post should register the
> service using chkconfig(8), in %preun deregister it after stopping the
> service. %postun should contain a restart of the service. Evaluate "$1"
> in all cases to detect if you are dealing with the initial package
> installation, upgrades or package removal, as written in the RPM
> documentation. Last but not least you might also have a logrotate
> configuration file '%{_sysconfdir}/logrotate.d/xymon-client' which
> performs log file rotation on certain conditions and restarts the
> service after doing so.
>
> Sorry, that I cannot provide the full spec for now (have to clarify this
> with the legal department here), but at least you should have a better
> idea what's actually needed.
>
> Cheers!
> -cs
>
> To unsubscribe from the hobbit list, send an e-mail to
> hobbit-unsubscribe at hswn.dk
>
--
Russ Hammer
48 Crestwood Rd
Marblehead, MA 01945
email : russ at perneus.com
cell : 781-307-2549
AOL/IM : mhead00
More information about the Xymon
mailing list