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
-batchmode: GUI 없이 실행 (CI/CD용)-nographics:
-projectPath:
-executeMethod:
-quit:
#!/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
