1. CLI로 빌드 파일을 생성할 빌더 정의

2. 환경 변수 설정 ( macOS ) 기준

export UNITY_BUILD_PATH="Builds/android/app.apk"
export UNITY_BUILD_AAB=false
export KEYSTORE_PATH="/Users/msg/SerpentOfTheEnd-client/SerpentOfTheEnd/SerpentOfTheEnd.keystore"     # 상대경로 → 절대경로
export KEYSTORE_PASS='msg0322!'
export KEY_ALIAS="serpentoftheend"                    # 생성 시 설정한 alias
export KEY_ALIAS_PASS='msg0322!'

3. 안드로이드 빌드 CLI 실행

/Applications/Unity/Hub/Editor/6000.0.26f1/Unity.app/Contents/MacOS/Unity \
  -batchmode \
  -nographics \
  -projectPath "/Users/igyeongseob/Develop/baro12_geekble/SerpentOfTheEnd/SerpentOfTheEnd" \
  -executeMethod AndroidBuilder.BuildAndroid \
  -quit
  1. 셀 스크립트로 [2, 3] 통합 ( 권장 )
#!/bin/bash

# 1. Unity 프로젝트 루트 경로 설정
PROJECT_DIR=$(pwd)
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")

# Git 버전 정보
GIT_COMMIT_HASH=$(git rev-parse --short HEAD)
GIT_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "no-tag")

# 로그 & 결과물 버저닝 이름
BUILD_NAME="app_${GIT_TAG}_${GIT_COMMIT_HASH}_${TIMESTAMP}"
export UNITY_BUILD_PATH="$PROJECT_DIR/Builds/android/${BUILD_NAME}.apk"
export UNITY_BUILD_AAB=false
export KEYSTORE_PATH="$PROJECT_DIR/SerpentOfTheEnd.keystore"
export KEYSTORE_PASS='msg0322!'
export KEY_ALIAS="serpentoftheend"
export KEY_ALIAS_PASS='msg0322!'

# 로그 디렉토리 생성, '-p': 없으면 폴더 생성
mkdir -p "$PROJECT_DIR/Logs"

# 로그 파일 경로 설정
LOG_PATH="$PROJECT_DIR/Logs/${BUILD_NAME}.log"
ln -sf "$LOG_PATH" "$PROJECT_DIR/build_latest.log"

# 2. 디버깅용 환경 변수 출력
echo "[DEBUG] UNITY_BUILD_PATH=$UNITY_BUILD_PATH"
echo "[DEBUG] KEYSTORE_PATH=$KEYSTORE_PATH"
echo "[DEBUG] KEYSTORE_PASS=$KEYSTORE_PASS"
echo "[DEBUG] KEY_ALIAS=$KEY_ALIAS"
echo "[DEBUG] KEY_ALIAS_PASS=$KEY_ALIAS_PASS"
echo "[DEBUG] LOG_PATH=$LOG_PATH"

# 3. Unity CLI 실행
/Applications/Unity/Hub/Editor/6000.0.26f1/Unity.app/Contents/MacOS/Unity \
  -batchmode \
  -nographics \
  -projectPath "$PROJECT_DIR/SerpentOfTheEnd" \
  -executeMethod AndroidBuilder.BuildAndroid \
  -quit \
  -logFile "$LOG_PATH"

# 4. 빌드 성공 여부 확인
BUILD_EXIT_CODE=$?

if [ $BUILD_EXIT_CODE -eq 0 ]; then
  echo "[✅ SUCCESS] 빌드가 성공했습니다."
  echo "[INFO] 로그 파일: $LOG_PATH"
  echo "[INFO] 빌드 결과물: $UNITY_BUILD_PATH"
else
  echo "[❌ ERROR] 빌드에 실패했습니다. 로그를 확인하세요."
  echo "[INFO] 로그 파일: $LOG_PATH"
  exit $BUILD_EXIT_CODE
fi
# 프로젝트 경로 이동 ( 본인 경로에 맞게 입력하시면 됩니다. )
cd /Users/igyeongseob/Develop/baro12_geekble/SerpentOfTheEnd

vi build.sh
# 위 내용 복사
# :wq 로 저장

# shell 스크립트 실행 권한 부여
chmod +x ./build.sh

# 스크립트 실행
./build.sh

image.png