38 lines
770 B
Bash
Executable File
38 lines
770 B
Bash
Executable File
#!/bin/sh
|
|
set -eu
|
|
|
|
STATE_DIR="${CMM_STATE_DIR:-/host/run/monok8s/cmm}"
|
|
DONE_FILE="$STATE_DIR/dpa_app.loaded"
|
|
LOCK_DIR="$STATE_DIR/dpa_app.lock"
|
|
|
|
mkdir -p "$STATE_DIR"
|
|
|
|
if [ -e "$DONE_FILE" ]; then
|
|
echo "[ask] dpa_app already loaded for this boot; skipping"
|
|
exit 0
|
|
fi
|
|
|
|
if ! mkdir "$LOCK_DIR" 2>/dev/null; then
|
|
echo "[ask] another dpa_app initialization is running; waiting"
|
|
|
|
while [ ! -e "$DONE_FILE" ]; do
|
|
sleep 1
|
|
done
|
|
|
|
echo "[ask] dpa_app was loaded by another process; skipping"
|
|
exit 0
|
|
fi
|
|
|
|
trap 'rmdir "$LOCK_DIR" 2>/dev/null || true' EXIT
|
|
|
|
if [ -e "$DONE_FILE" ]; then
|
|
echo "[ask] dpa_app already loaded for this boot; skipping"
|
|
exit 0
|
|
fi
|
|
|
|
echo "[ask] running dpa_app"
|
|
/bin/dpa_app
|
|
|
|
date -u +"%Y-%m-%dT%H:%M:%SZ" > "$DONE_FILE"
|
|
echo "[ask] dpa_app loaded"
|