iOS 배포 2026년 5월 18일 약 17분 Transporter Organizer

2026 임대 Mac에서 빌드 올리기
Organizer vs Transporter

두 경로의 경계 · SSH/VNC 표 · 실패 분류 · 20분 검수

클라우드 Mac 데스크톱에서 Xcode Organizer와 Transporter로 iOS 빌드를 App Store Connect에 업로드하는 장면

자체 Mac 없이 시간제 클라우드 Mac으로 iOS를 배포하는 인디·소규모 팀은 「마지막 1마일」에서 자주 넘어집니다. CI나 동료가 .ipa를 만들어 줬는데 SSH만으로는 클릭할 업로드 UI가 없고, Archive는 됐는데 Organizer가 계속 돈다Transporter로 바꿔야 할지 모르는 패턴입니다. 이 글은 Apple 공식 두 업로드 경로가 무엇을 해결하는지 정리하고, SSH만 / SSH+1회 VNC / 처음부터 VNC 의사결정 표, Organizer·Transporter 최소 재현 절차, 티켓에 붙일 네 가지 문장, 20분 VNC 검수 표를 제시합니다. 관련: 첫 외부 TestFlight 체크리스트, Xcode Cloud Plan B, 긴급 iOS 수정 런북, Fastlane Match SSH/VNC.

01

두 경로가 푸는 문제: 잘못된 입구에서 임대 시간을 태우지 않기

2026년에도 Xcode Organizer와 Mac App Store의 Transporter로 App Store Connect에 빌드를 보냅니다. 신구 대체가 아니라 입력물과 습관이 다릅니다.

  1. 01

    Organizer 경로: 빌린 같은 Mac에서 Archive 후 GUI로 Distribute App → App Store Connect. 서명·프로비저닝·Export를 한 화면에서 대조하기 쉽지만 Xcode 버전·로그인·키체인 대화 상자에 민감합니다.

  2. 02

    Transporter 경로: 이미 배포용 서명된 .ipa(CI 산출물을 노드에 동기화)를 전달. UI가 단순해 「업로드만」에 맞지만 서명 복구·Export 재시도는 불가. Apple ID·앱 전용 비밀번호는 첫 로그인에 GUI가 필요한 경우가 많습니다.

  3. 03

    숨은 비용: 시간제 노드에서 GUI가 필요한 작업을 SSH만으로 세 번 시도하면 성과 없는 과금이 됩니다. Runbook에 needs-vnc를 표시하세요.

  4. 04

    ASC와의 관계: 어느 경로든 「업로드 성공」은 처리 시작일 뿐입니다. TestFlight·메타데이터 심사는 App Store Connect 웹에서 추적하세요. 외부 테스트 체크리스트의 빌드 번호 항목과 함께.

  5. 05

    SDK 창: 「유효하지 않은 바이너리」가 길면 먼저 RC 정렬과 툴체인 동결 글을 보고 네트워크 탓만 하지 마세요.

Windows가 주 전장이면 클라우드 Mac은 Apple 공식 배포 클라이언트가 올라간 「상架 워크스테이션」입니다. 컴파일은 다른 곳에서 해도 ASC 공식 클라이언트는 거의 macOS입니다. Linux CI만으로 API를 맞추는 것보다 여기서 시간을 사는 이유가 분명합니다.

02

의사결정 매트릭스: SSH만, 구간 VNC, GUI 전제

작업 → 권장 접속 → 전형적 실패 → 흔한 오해 순으로 Wiki에 붙일 수 있게 정리했습니다. Xcode Cloud를 쓰면 Plan B의 「Cloud 실패 → 수동 업로드」와 합치세요.

작업권장전형 신호오해
노드 Archive + OrganizerVNC(동일 사용자)진행 없음·에러 없음SSH 타임아웃만 늘림
.ipa만 전달VNC + Transporter401·로그인 실패ipa 손상으로 단정
최초 Apple ID / 2FAVNCSSH 세션 무효DerivedData 삭제 루프
Organizer 상세 로그VNCCLI 동등 출력 없음ASC만 봄
API Key + altoolSSH(키 설정됨)JWT 만료·권한프로파일만 수정
Transporter 로그인 복구VNC빈 화면·크래시Xcode 전체 재설치
심볼·Export 확인VNC + OrganizerASC dSYM 없음ipa만 재전송

실무 규칙: 첫 실패가 계정·키체인·Transporter 창과 관련되면 같은 SSH에서 세 번째는 하지 마세요. VNC 전환이 추가 1시간보다 싼 경우가 많습니다.

03

Organizer 최소 절차와 실패 읽기

VNC에서 SSH와 같은 macOS 사용자로 Xcode를 열고 메뉴 막대 계정이 로그인됐는지 확인합니다. 권장 순서:

  1. 01

    Window → Organizer에서 Archive 선택(Scheme·Configuration이 릴리스와 일치하는지).

  2. 02

    Distribute AppApp Store Connect → 마법사로 업로드(Ad Hoc 아님).

  3. 03

    크래시 심볼이 필요하면 심볼 업로드 체크. 프라이버시·수출은 프라이버시 매니페스트와 ASC 메타데이터를 먼저 맞춥니다.

  4. 04

    Organizer 완료 후 즉시 ASC TestFlight에서 처리 시작 시각과 빌드 번호 기록.

  5. 05

    실패 시 로그를 펼쳐 인증·서명·컴플라이언스를 티켓별로 나눕니다.

현상의심조치
「업로드 중」에서 정지프록시·출구테더링으로 한 번 시도
Invalid Signature / Profile서명 체인Match 검수·키체인
ITMS-9xxxxSDK·매니페스트ASC 메일·처리 상세
로그인 요구Apple IDVNC에서 Accounts 재로그인
bash
# 업로드 전(SSH·VNC 터미널 모두 가능, 동일 사용자)
xcodebuild -version
/usr/bin/security find-identity -v -p codesigning | head -n 15
04

Transporter: ipa만 있는 응급

Mac App Store에서 Transporter 설치(이미지 미포함 시). VNC로 최초 Apple ID 로그인 후 CLI는 시도할 수 있으나 세션 유지는 가끔 GUI 확인이 필요합니다.

  1. 01

    Bundle ID·버전·빌드 번호가 ASC 대기 행과 일치하는지(착오 방지).

  2. 02

    Transporter 로그인 → .ipa 드롭 → 전달 시작.

  3. 03

    실패 시 활동 로그보내기(스크린샷보다 검색 용이).

  4. 04

    ASC 처리 상태 확인. 「컴플라이언스 부족」이면 웹 수출·프라이버시로 복귀.

  5. 05

    처리 후 외부 테스트 초대 또는 프로덕션 플로우.

Windows 스크립트 ipa는 노드에서 unzip -l 등으로 서명 유무 확인. 미서명은 Transporter에서 즉시 실패하므로 Archive부터 다시.

팁: 긴급 시 응급 런북으로 최소 환경을 고른 뒤 이 절만 실행. 임대 첫 시간에 beta Xcode와 프로덕션 ipa를 동시에 건드리지 마세요.

05

인용 가능한 네 가지 사실과 20분 검수

  • 사실 1: Organizer는 Archive→Export→Upload 일체, Transporter는 서명 ipa→전달. 입구를 틀리면 임대 슬롯 전체가 녹습니다.
  • 사실 2: ASC 처리는 십여 분~한 시간대가 흔합니다. 「업로드 성공」≠ TestFlight 즉시 테스트.
  • 사실 3: 노드의 Apple ID·키체인은 세션 자산. 교체 전 백업 정책을 정하세요.
  • 사실 4: 릴리스 창에 20분 이상을 「전달 + ASC 상태」 이중 화면 확인에 쓰고 아래 표를 모두 채우세요.
확인조작통과
사용자 일치VNC 사용자 = SSH whoami데스크톱·터미널 분리 없음
로그인Accounts 노란 표시 없음올바른 Team 선택 가능
좌표버전·빌드·Bundle IDASC 행과 일치
전달 완료Organizer/Transporter 성공UTC 시각 기록
ASC 처리TestFlight 목록처리 중→테스트 가능 또는 사유 확정
심볼·컴플라이언스심볼·매니페스트ITMS 메일 pending 없음

신규 노드는 첫 30분 체크리스트를 먼저 끝내고 위 표를 매 릴리스마다 돌리면 「데스크톱은 보이는데 못 올린다」가 줄어듭니다.

관련 글

함께 읽기

FAQ

자주 묻는 질문

컴파일용은 아님. 배포는 macOS. 서명 ipa는 Transporter, .xcarchive만 있으면 Organizer Export.

API Key는 가능하지만 2FA·로그인은 VNC가 필요한 경우가 많습니다. 팀은 Transporter 또는 API 중 하나로 통일하세요.

전달≠처리 완료. Bundle ID·빌드 번호 대조. SDK·매니페스트·수출은 ASC 상세에서 수정.

유효 ipa면 Transporter가 짧은 경우가 많음. 노드 Archive면 Organizer. 계정 시간을 잡아 두세요.

맺음말

빌드 업로드는 Xcode 「잠깐 클릭」이 아니라 계정·서명·컴플라이언스·출구 네 갈래의 교차점입니다. SSH만 반복하고 Transporter·Organizer를 열지 않으면 장시간 과금·중복 전달이 남습니다. 자체 Mac은 고정비·슬립·대역 불확실성을 안습니다.

VNC를 구급차가 아니라 배포의 표준 I/F로 두면 Mac 없는 팀도 Apple 공식 클라이언트와 ASC 처리 리듬에 맞추기 쉽습니다.

본문 5절과 같은 표로 검수하려면 VNCMac에서 VNC 있는 물리 Mac을 시간제로 빌리세요. 주 버튼 구매 페이지. SSH·VNC 연결은 도움말을 참고하세요.