Ah, ok I understand now. Yes, I think it makes sense. I don’t remember why we did this way ;)
Thanks Regards JB > Le 10 juil. 2020 à 11:22, Bernd Eckenfels <e...@zusammenkunft.net> a écrit : > > Hello JB, > > I am proposing to set KARAF_SCRIPT to the name of the script without first > checking if it was already set. This way it is always "start" or "karaf" > independend if it has been set before. > > I don't see a condition where you would want to inherit a different script > name when initializing the start script. > > wheter to use PROGNAME instead of the literal is up for discussion, I would > go with the literal. It should be aligned with the .bat file however, in the > moment they differ (and I am not sure why) > > Gruss > Bernd > -- > http://bernd.eckenfels.net > ________________________________ > Von: Jean-Baptiste Onofre <j...@nanthrax.net> > Gesendet: Friday, July 10, 2020 6:39:32 AM > An: dev@karaf.apache.org <dev@karaf.apache.org> > Betreff: Re: KARAF_SCRIPT conditionally set? > > Hi Bernd, > > I’m not sure to see exactly the issue. > > Content of KARAF_SCRIPT is passed to setenv right ? > > Basically, you are proposing to use setenv before checking KARAF_SCRIPT, > correct ? > > Regards > JB > >> Le 9 juil. 2020 à 12:53, Bernd <e...@zusammenkunft.net> a écrit : >> >> Hello, >> >> The Karaf scripts have a mechanism to set KARAF_SCRIPT and then delegate >> common config settings to setenv. The mechanism has however two quirks, >> first of all if a script already sees a KARAF_SRIPT value it will not reset >> it, and secondly it will use the PROGNAME of the script. >> >> In default Karaf installation this seems to be not an issue, since the >> condition on KARAF_SCRIPT in setenv is only a comment. However we do use >> this mechanism to set settings for the main application server start and >> for all other commands). >> >> We check for KARAF_SCRIPT=start or KARAFAF_SCRIPT=karaf. However if rename >> start to start2 or if I call it from another script which also sets >> KARAF_SCRIPT in both cases the value passed to setenv is not "start" or >> "karaf" and therefore it will pick the wrong settings. >> >> I wonder if it would better to set the KARAF_SCRIPT settings >> unconditionally in start and karaf. Not using PROGNAME would be another >> option, nut sure if it is good or bad that a renamed script uses different >> settings...? >> >> A more general comment, a lot of environemnt variables used internal in the >> scripts might be inherited from the current shell, that is somewhat a >> support problem in our experience. Did you had a discussion on that, >> already? >> >> start: >> https://github.com/apache/karaf/blob/25b1a00ab6b2330a469c244c4abc1389aaad5313/assemblies/features/base/src/main/filtered-resources/resources/bin/start#L71 >> if [ "x${KARAF_SCRIPT}" = "x" ]; then >> KARAF_SCRIPT="${PROGNAME}" >> export KARAF_SCRIPT >> fi >> if [ -f "${DIRNAME}/setenv" ]; then >> . "${DIRNAME}/setenv" >> fi >