Browse Source

Fix env parsing for variables with spaces

multi-arch-hooks
ViViDboarder 3 years ago
parent
commit
53e306d884
  1. 7
      cron-exec.sh
  2. 4
      start.sh

7
cron-exec.sh

@ -1,10 +1,11 @@
#! /bin/bash
ENV=/env
ENV=/env.sh
LOG=/cron.log
HEALTH_FILE=/unhealthy
test -f $ENV || echo NO_ENV=true > $ENV
touch $ENV
source $ENV
# Execute command and write output to log
env `cat $ENV | xargs` $@ 2>> $LOG && rm -f $HEALTH_FILE || { touch $HEALTH_FILE; exit 1; }
$@ 2>> $LOG && rm -f $HEALTH_FILE || { touch $HEALTH_FILE; exit 1; }

4
start.sh

@ -28,9 +28,9 @@ fi
if [ -n "$CRON_SCHEDULE" ]; then
# Export the environment to a file so it can be loaded from cron
env > /env
env | sed 's/^\(.*\)=\(.*\)$/export \1="\2"/g' > /env.sh
# Remove some vars we don't want to keep
sed -i '/\(HOSTNAME\|affinity\|SHLVL\|PWD\)/d' /env
sed -i '/\(HOSTNAME\|affinity\|SHLVL\|PWD\)/d' /env.sh
# Use bash for cron
echo "SHELL=/bin/bash" > /crontab.conf

Loading…
Cancel
Save