#!/usr/bin/env bash
set -euo pipefail

SDK_DIR="${SDK_DIR:-/workspace/city-subcenter/baidu-face-offline-sdk/extracted/Baidu_Face_Offline_SDK_Linux_ARM_8.0/face_offline_sdk}"
REPORT_DIR="${REPORT_DIR:-/workspace/city-subcenter/baidu-face-offline-sdk/reports}"
mkdir -p "$REPORT_DIR"

REPORT="$REPORT_DIR/baidu-face-get-device-id-$(date +%Y%m%d%H%M%S).txt"

cd "$SDK_DIR"

{
  echo "## get device id"
  date
  echo "SDK_DIR=$SDK_DIR"
  echo
  echo "## platform"
  uname -a
  arch
  echo
  echo "## run demo for device id"
  set +e
  timeout 20 ./run.sh armv8
  status=$?
  set -e
  echo
  echo "## timeout_status=$status"
} 2>&1 | tee "$REPORT"

device_id="$(grep -m1 'device id:' "$REPORT" | sed 's/.*device id://; s/[[:space:]]//g')"

if [ -z "$device_id" ]; then
  echo "ERROR: device id not found. See report: $REPORT" >&2
  exit 1
fi

echo
echo "DEVICE_ID=$device_id"
echo "REPORT=$REPORT"
