From 7c4fc00b37482d015acf5ca25864860cc763e934 Mon Sep 17 00:00:00 2001 From: Macbook Date: Sun, 14 Jun 2026 16:40:58 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20server=20mobile=20CI=20=E2=80=94=20Java?= =?UTF-8?q?=20paths,=20monorepo=20Podfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Jenkins/서버에서 brew OpenJDK·Android SDK 경로를 사용하고, npm workspace 루트의 Capacitor iOS 의존성을 Podfile이 참조하도록 수정한다. Co-authored-by: Cursor --- app/ios/App/Podfile | 6 +++--- scripts/build-mobile-apk.sh | 9 ++++++++- scripts/jenkins-mobile-pipeline.sh | 7 +++++++ scripts/server-install-mobile-jenkins.sh | 4 ++-- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/app/ios/App/Podfile b/app/ios/App/Podfile index 4bbe753..dbb614e 100644 --- a/app/ios/App/Podfile +++ b/app/ios/App/Podfile @@ -1,4 +1,4 @@ -require_relative '../../node_modules/@capacitor/ios/scripts/pods_helpers' +require_relative '../../../node_modules/@capacitor/ios/scripts/pods_helpers' platform :ios, '14.0' use_frameworks! @@ -9,8 +9,8 @@ use_frameworks! install! 'cocoapods', :disable_input_output_paths => true def capacitor_pods - pod 'Capacitor', :path => '../../node_modules/@capacitor/ios' - pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios' + pod 'Capacitor', :path => '../../../node_modules/@capacitor/ios' + pod 'CapacitorCordova', :path => '../../../node_modules/@capacitor/ios' end target 'App' do diff --git a/scripts/build-mobile-apk.sh b/scripts/build-mobile-apk.sh index c1c0459..bb02cc4 100755 --- a/scripts/build-mobile-apk.sh +++ b/scripts/build-mobile-apk.sh @@ -31,7 +31,7 @@ sign_release_apk() { local apksigner apksigner="${ANDROID_HOME:-$HOME/Library/Android/sdk}/build-tools/35.0.0/apksigner" if [[ ! -x "$apksigner" ]]; then - apksigner=$(command -v apksigner 2>/dev/null || true) + apksigner=$(ls -d "${ANDROID_HOME:-$HOME/Library/Android/sdk}"/build-tools/*/apksigner 2>/dev/null | sort -V | tail -1 || true) fi if [[ -z "$apksigner" || ! -x "$apksigner" ]]; then echo "apksigner 없음. Android SDK build-tools 설치 필요." >&2 @@ -49,6 +49,13 @@ sign_release_apk() { if [[ -z "${JAVA_HOME:-}" ]] && [[ -x "$HOME/.local/jdk-21.0.11+10/Contents/Home/bin/java" ]]; then export JAVA_HOME="$HOME/.local/jdk-21.0.11+10/Contents/Home" fi +if [[ -z "${JAVA_HOME:-}" ]] && [[ -x "/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home/bin/java" ]]; then + export JAVA_HOME="/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home" +fi +if [[ -z "${JAVA_HOME:-}" ]] && command -v /usr/libexec/java_home >/dev/null 2>&1; then + JAVA_HOME="$(/usr/libexec/java_home 2>/dev/null || true)" + [[ -n "$JAVA_HOME" ]] && export JAVA_HOME +fi if [[ -z "${JAVA_HOME:-}" ]]; then echo "JAVA_HOME 미설정" >&2 exit 1 diff --git a/scripts/jenkins-mobile-pipeline.sh b/scripts/jenkins-mobile-pipeline.sh index c3c4f98..7c15437 100755 --- a/scripts/jenkins-mobile-pipeline.sh +++ b/scripts/jenkins-mobile-pipeline.sh @@ -9,6 +9,13 @@ for prefix in "$HOME/homebrew" /opt/homebrew; do [[ -x "$prefix/bin/brew" ]] && eval "$("$prefix/bin/brew" shellenv)" done +if [[ -z "${ANDROID_HOME:-}" ]]; then + export ANDROID_HOME="/Users/aidev/Library/Android/sdk" +fi +if [[ -z "${JAVA_HOME:-}" ]] && [[ -x "/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home/bin/java" ]]; then + export JAVA_HOME="/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home" +fi + log() { echo "[mobile-pipeline $(date '+%H:%M:%S')] $*"; } log "=== goldenChart Mobile Pipeline #${BUILD_NUMBER:-local} ===" diff --git a/scripts/server-install-mobile-jenkins.sh b/scripts/server-install-mobile-jenkins.sh index 6144676..03e4d77 100755 --- a/scripts/server-install-mobile-jenkins.sh +++ b/scripts/server-install-mobile-jenkins.sh @@ -53,8 +53,8 @@ export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:\$PATH" export WORK_TREE="${WORK_TREE}" export GIT_DIR="${GIT_DIR}" export BUILD_NUMBER="\${BUILD_NUMBER}" -export ANDROID_HOME="\${ANDROID_HOME:-\$HOME/Library/Android/sdk}" -export JAVA_HOME="\${JAVA_HOME:-\$HOME/.local/jdk-21.0.11+10/Contents/Home}" +export ANDROID_HOME="\${ANDROID_HOME:-/Users/aidev/Library/Android/sdk}" +export JAVA_HOME="\${JAVA_HOME:-/opt/homebrew/opt/openjdk@21/libexec/openjdk.jdk/Contents/Home}" "${WORK_TREE}/scripts/jenkins-mobile-pipeline.sh"