[Unit] Description=Check and restart KCG Backend if JAR updated [Service] Type=oneshot ExecStart=/bin/bash -c '\ DEPLOY_DIR=/devdata/services/kcg/backend; \ JAR=$DEPLOY_DIR/kcg.jar; \ MARKER=$DEPLOY_DIR/.last-restart; \ [ ! -f "$JAR" ] && exit 0; \ if [ "$JAR" -nt "$MARKER" ] 2>/dev/null || [ ! -f "$MARKER" ]; then \ SYSTEMD_DIR=/etc/systemd/system; \ CHANGED=0; \ for f in kcg-backend.service kcg-backend-deploy.service kcg-backend-deploy.timer; do \ if [ -f "$DEPLOY_DIR/$f" ] && ! diff -q "$DEPLOY_DIR/$f" "$SYSTEMD_DIR/$f" >/dev/null 2>&1; then \ cp "$DEPLOY_DIR/$f" "$SYSTEMD_DIR/$f"; \ CHANGED=1; \ fi; \ done; \ [ "$CHANGED" = "1" ] && systemctl daemon-reload; \ systemctl restart kcg-backend; \ touch "$MARKER"; \ fi'