From bfb0aa25d217e60c6d27ac9380f90825334710fd Mon Sep 17 00:00:00 2001 From: kangddong Date: Wed, 20 May 2026 16:19:42 +0900 Subject: [PATCH 1/2] =?UTF-8?q?ci:=20GitHub=20Actions=20iOS=20=EB=B9=8C?= =?UTF-8?q?=EB=93=9C/=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EC=9B=8C=ED=81=AC?= =?UTF-8?q?=ED=94=8C=EB=A1=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit develop·main에 대한 push/PR 시 macos-14 러너에서 Controllers scheme을 iOS Simulator로 빌드하고 ControllersTests를 실행합니다. 외부 의존성이 없으므로 캐시 단계 없이 checkout → xcodebuild만 사용합니다. Refs #13 Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/ios.yml | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/ios.yml diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml new file mode 100644 index 0000000..8bde839 --- /dev/null +++ b/.github/workflows/ios.yml @@ -0,0 +1,59 @@ +name: iOS Build & Test + +on: + push: + branches: [main, develop] + pull_request: + branches: [main, develop] + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build-test: + name: Build & Test (iOS Simulator) + runs-on: macos-14 + timeout-minutes: 30 + + env: + PROJECT_PATH: Controllers/Controllers.xcodeproj + SCHEME: Controllers + DESTINATION: platform=iOS Simulator,name=iPhone 15 + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Show Xcode version + run: xcodebuild -version + + - name: List project schemes + run: xcodebuild -list -project "$PROJECT_PATH" + + - name: List available simulators + run: xcrun simctl list devices available | head -50 + + - name: Build + run: | + set -o pipefail + xcodebuild build \ + -project "$PROJECT_PATH" \ + -scheme "$SCHEME" \ + -destination "$DESTINATION" \ + -configuration Debug \ + CODE_SIGNING_ALLOWED=NO \ + CODE_SIGNING_REQUIRED=NO \ + CODE_SIGN_IDENTITY="" + + - name: Test + run: | + set -o pipefail + xcodebuild test \ + -project "$PROJECT_PATH" \ + -scheme "$SCHEME" \ + -destination "$DESTINATION" \ + -configuration Debug \ + CODE_SIGNING_ALLOWED=NO \ + CODE_SIGNING_REQUIRED=NO \ + CODE_SIGN_IDENTITY="" From 4f9bd700d7e451662c3c2088753d376a42a86f3a Mon Sep 17 00:00:00 2001 From: kangddong Date: Wed, 20 May 2026 17:21:56 +0900 Subject: [PATCH 2/2] =?UTF-8?q?ci:=20test=20=EB=8B=A8=EA=B3=84=20=EC=9D=BC?= =?UTF-8?q?=EC=8B=9C=20=EB=B9=84=ED=99=9C=EC=84=B1=ED=99=94=20=E2=80=94=20?= =?UTF-8?q?Controllers=20scheme=20TestAction=20=EB=AF=B8=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Controllers.xcscheme 의 에 Testables가 비어 있어 `xcodebuild test`가 "Scheme not configured for the test action" 에러로 즉시 실패합니다 (Run 26147672082 참조). scheme 보강은 별도 PR로 분리하고, 1차 CI는 build 검증으로 한정합니다. Refs #13 Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/ios.yml | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index 8bde839..7c4b864 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -46,14 +46,9 @@ jobs: CODE_SIGNING_REQUIRED=NO \ CODE_SIGN_IDENTITY="" - - name: Test - run: | - set -o pipefail - xcodebuild test \ - -project "$PROJECT_PATH" \ - -scheme "$SCHEME" \ - -destination "$DESTINATION" \ - -configuration Debug \ - CODE_SIGNING_ALLOWED=NO \ - CODE_SIGNING_REQUIRED=NO \ - CODE_SIGN_IDENTITY="" + # NOTE: Test 단계는 의도적으로 비활성화 상태입니다. + # Controllers.xcscheme 의 에 ControllersTests target이 + # Testable로 등록되어 있지 않아 `xcodebuild test`가 + # "Scheme Controllers is not currently configured for the test action" + # 에러로 실패합니다. scheme TestAction 보강 후 별도 PR에서 다시 활성화 예정. + # 관련 파일: Controllers/Controllers.xcodeproj/xcshareddata/xcschemes/Controllers.xcscheme