Mantis - Resin
Viewing Issue Advanced Details
5294 minor always 11-29-12 20:15 01-18-13 11:49
closed 3.1.0  
none 4.0.34  
0005294: system-property tag works fine in the foreground while fail in the background
i need run two instances (processes) on one host (machine) for the same one web application.
noly just do it like this:
${RESIN_HOME}/bin/ -conf ${APP_ROOT_DIR}/resin-active.conf
${RESIN_HOME}/bin/ -conf ${APP_ROOT_DIR}/resin-standby.conf

the different configuration items between resin-active.conf and resin-standby.conf are as follows:
(1) watchdog listenning port: 6800 in resin-active.conf while 6801 in resin-standby.conf
(2) http listenning port: 8080 in resin-active.conf while 8081 in resin-standby.conf
(3) stdout and stderr log file
(4) others ...

i don't want these differences hidden in everywhere of the resin.conf file, so i put them together
(take them as user-defined variables using system-property tag) on head lines of the resin.conf.

take resin-active.conf for example, define variables first:

<resin xmlns="" [^]
       xmlns:resin=""> [^]
<!--node sensitive configuration items in user applications -->
<system-property mynode.watchdog.port="6801"/>
<system-property mynode.http.port="8081"/>
<system-property mynode.jmx.port="10087"/>
<system-property mynode.gc.logfile="/opt/adlog/resin-gc-standby.log"/>




then reference the variable where you need

      <!-- The http port 8080 -->
      <http address="*" port="${mynode.http.port}"/>

it works fine when resin runs in the foreground while fail in the background (no error prompts, watch-dog starts successfully but web-app unloaded)
in other words:
execute the command ${RESIN_HOME}/bin/ -conf ${APP_ROOT_DIR}/resin-active.conf OK
while ${RESIN_HOME}/bin/ -conf ${APP_ROOT_DIR}/resin-active.conf start FAIL

i wander when and where the out-of-the-box variable ${resin.professional} or ${resin.root} of the following snippet is initialized ?

<management path="${resin.root}/admin">
    <user name="admin" password="password" disable="true"/>
    <resin:if test="${resin.professional}">

01-18-13 11:49