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

PROJECT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
KEYSTORE_PATH="${ANDROID_RELEASE_STORE_FILE:-$HOME/.android/release-keys/rdfz/electronic-menu-rdfz-release.jks}"
KEY_ALIAS="${ANDROID_RELEASE_KEY_ALIAS:-rdfz-electronic-menu}"
STORE_PASSWORD_SERVICE='com.cpt.electronicmenu.tv.release.store-password'
KEY_PASSWORD_SERVICE='com.cpt.electronicmenu.tv.release.key-password'

if [[ ! -f "$KEYSTORE_PATH" ]]; then
  echo "RDFZ 正式签名文件不存在：$KEYSTORE_PATH" >&2
  exit 2
fi
if ! command -v security >/dev/null 2>&1; then
  echo "当前系统不支持 macOS 钥匙串命令 security。" >&2
  exit 2
fi

store_password="$(security find-generic-password -a "$USER" -s "$STORE_PASSWORD_SERVICE" -w)"
key_password="$(security find-generic-password -a "$USER" -s "$KEY_PASSWORD_SERVICE" -w)"
if [[ -z "$store_password" || -z "$key_password" ]]; then
  echo "RDFZ 正式签名密码未在登录钥匙串中找到。" >&2
  exit 2
fi

export ANDROID_RELEASE_STORE_FILE="$KEYSTORE_PATH"
export ANDROID_RELEASE_STORE_PASSWORD="$store_password"
export ANDROID_RELEASE_KEY_ALIAS="$KEY_ALIAS"
export ANDROID_RELEASE_KEY_PASSWORD="$key_password"

"$PROJECT_DIR/tools/build-rdfz-signed-release.sh"
