XPPWS Tomcat init.d startup script (RHEL 5) to systemd startup (RHEL 7)

RWS front-line support has told me that a Linux startup script (i.e. in /etc/init.d for older versions of Red Hat EL) was never something that was included/delivered with XPPWS Tomcat.

Why do I have one? I didn't invent this; it was delivered, probably around 10-11 years ago on Red Hat EL 5.3 with XPP 8.something and XPPWS 1.2. I did personally tweak it to work on a newer Red  Hat server (EL 5.5?) with XPPWS 1.3, maybe 6 years ago. 

I am seeking an updated one to work with Red Hat EL 7.x (where init.d is obsolete and everything is now a service under systemd/systemctl). We've *almost* got it figured out all on our own, but I thought I'd ask support about a current systemd startup on reboot. So I was surprised to get the, "nope, never delivered anything like that." 

What say you, XPP hive mind?

Old server:

/etc/rc.d/rc5.d/S81SDL_License -> ../init.d/SDL_License
/etc/rc.d/rc5.d/S90xyenterprise -> ../init.d/xyenterprise
/etc/rc.d/rc5.d/S92xppws -> ../init.d/xppws
/etc/rc.d/rc5.d/s99contenta -> ../init.d/contenta

Parents
  • BTW, in your ticket you mentioned something about the PERL5LIB environment variable.

    The XPP-delivered (init.d) startup scripts, and related files like xyv.cshrc and xyv.profile, have not manipulated the PERL5LIB environment variable at all since around 2011. Even before that, all that was being done was to save/restore any existing PERL5LIB variable setting around calling the (now long obsolete) Mainwin "set runtime" stuff, since the Mainwin stuff had the side effect of destroying any existing PERL5LIB setting. XPP itself, as delivered, never needed or depended on any PERL5LIB environment variable.

    So if in your (XPP/Tomcat) environment you actually need the PERL5LIB environment variable to be set to something (or any other environment settings), it would be your responsibility to get that done.

    A "hook" that is often used for this type of "custom", or "site specific", stuff is the XYV_EXECS/global.cshrc and/or XYV_EXECS/global.profile files. These files are considered "customizable", so they won't be stepped on by an XPP "install" (whereas the xyv.cshrc and xyv.profile files are not considered customizable and thus will be overwritten).

Reply
  • BTW, in your ticket you mentioned something about the PERL5LIB environment variable.

    The XPP-delivered (init.d) startup scripts, and related files like xyv.cshrc and xyv.profile, have not manipulated the PERL5LIB environment variable at all since around 2011. Even before that, all that was being done was to save/restore any existing PERL5LIB variable setting around calling the (now long obsolete) Mainwin "set runtime" stuff, since the Mainwin stuff had the side effect of destroying any existing PERL5LIB setting. XPP itself, as delivered, never needed or depended on any PERL5LIB environment variable.

    So if in your (XPP/Tomcat) environment you actually need the PERL5LIB environment variable to be set to something (or any other environment settings), it would be your responsibility to get that done.

    A "hook" that is often used for this type of "custom", or "site specific", stuff is the XYV_EXECS/global.cshrc and/or XYV_EXECS/global.profile files. These files are considered "customizable", so they won't be stepped on by an XPP "install" (whereas the xyv.cshrc and xyv.profile files are not considered customizable and thus will be overwritten).

Children
  • The PERL5LIB situation is easier to answer. We use it because it was required for Contenta (specifically when XPP and Contenta were on the same server, I think?), for many purposes including Contenta publishing to XPP. As things like this happen and evolve, we naturally found it convenient to add additional Perl packages to one of the locations specified in PERL5LIB. So now, even though we retired Contenta a few years ago, we can't extract ourselves from the need to keep using PERL5LIB (without a lot of work/reconfiguring). And we incorporated a lot of professional services-developed Perl subs from Contenta packages in our non-Contenta Perl programs.

    We set PERL5LIB in global.cshrc, as we are very "CSH" oriented. I suspect that when we did the setup of Red Hat EL7, we didn't match the default shells as they existed on EL5. So it could be that root (bash) may be looking down xyv.profile and global.profile instead of xyv.cshrc and global.cshrc. It's true that we haven't copied our customizations in global.cshrc to global.profile. That is my latest hunch. It might be as simple as updating global.profile.

    I do realize this is our responsibility. I don't think I was wrong to open a ticket (or ask here) to see if anyone could enlighten me on the RWS/SDL/XyEnterprise delivered parts. There was indeed confusion. FYI, when we did our fresh install of XPPWS on RH 7, I don't think there is a init.d file anywhere to be found, and I don't believe it's in the documentation for XPPWS either. It there is, I could not find anything.