The majority of our app servers are currently Gentoo but will be moving to Fedora.<br><br>For the Gentoo machines I have a script to build and package our Cat apps on a build server and another deployment script to &quot;push&quot; the app to a target server  (which may then rsynced to multiple machines.)  Part of that push process is setting up a crontab in /etc/cron.d/ for the app, as well as /etc/init.d/ scripts.<br>

<br>The same package is pushed to different environments or &quot;roles&quot; such as testing, staging, and production.  The application uses a modified configuration based on the role, and also has a different crontab file for each role.  I use an /etc/$app_name.conf file to define the role for the machine -- so, for example, the push script looks at /etc/$app_name.conf and knows which crontab to build (it uses Template Toolkit for this), and likewise the /etc/init.d/ script also uses the /etc/$app_name.conf file to start the application in the correct role (e.g. testing, production, etc.).  We use mod_perl so the start up script also builds an httpd.conf on-the-fly customized for the role from settings in the app configuration file.<br>

<br>The jury is still out on if this is beautifully elegant or overly complex...<br><br><br>So, the plan is to move to packaging as an RPM.  What I&#39;m wondering is if anyone is currently packaging as an RPM and if they are using a post-install script to do anything like what I describe above.  If so, I&#39;d like to hear how you have set up this process and what your post-install script does along with any other tips you may have from your experience.<br>

<br>The ultimate goal is to be able to bring up a new machine and install the RPM and have it bring in all dependencies and start running in a standard way and w/o requiring intimate knowledge of the application.<br><br>
Thanks,<br clear="all">
<br>-- <br>Bill Moseley<br><a href="mailto:moseley@hank.org">moseley@hank.org</a><br>