iOS에 대한 지속적인 배포를 위한 코덤AGIC
준비 사항
이 튜토리얼을 계속하기 전에…
- iOS 개발자 프로그램 회원입니다.
- 읽고 싶은 마음이 드는군요 😆…
가격에 대한 중요한 정보

서비스는 ‘무료 월 500시간 이하의 macOS M1 시간, 선택한 기계에 따라 달라집니다.
우리는 다음을 사용할 것입니다. macOS M1 기계의 가격과 제한을 볼 수 있습니다 (가격은 이 튜토리얼이 생성된 시점의 가격으로, 미래에 변경될 수 있습니다)
🔴 요구 사항과 가격에 대해 경고한 후, 계속하려면 좋습니다.
📣 이 포스트에서는 iTunes Connect에 앱을 생성했으며 Apple 생태계의 인증서를 가지고 있다고 가정합니다. Codemagic이 모든 것을 설정할 것입니다!
시작해 보세요!
포스트에서 따르는 단계
- App Store Connect API을 사용하여 Codemagic
- 요구 사항
- App Store Connect API 키 생성
- API 앱스토어 연결 키를 사용합니다.
- Fastlane 파일 복사
- 코드매직 설정
1. 코드매직과 앱스토어 연결 API 사용
2021년 2월부터 모든 사용자가 앱스토어 연결에 로그인하기 위해 2단계 인증 또는 2단계 인증이 필요합니다. 이 추가 보안 기능은 Apple ID를 보호하여 계정에 액세스할 수 있는 사람을 단일 개인으로 보장합니다.
From 애플 지원
match에 대한 시작을 위해 기존 인증서를 취소해야 하는 것은 사실입니다. 그러나 걱정하지 마십시오. 새로운 인증서를 직접 받을 것입니다.
요구 사항
코드매직이 앱스토어 연결 API을 사용할 수 있도록 하려면 세 가지 세 가지
- 발급자 ID.
- 키 ID.
- 키 파일 또는 키 내용.
앱 스토어 연결 API 키 생성
앱 스토어 연결에서 키를 생성하려면 Admin 권한이 필요합니다. 권한이 없다면 해당 사람에게 이 문서를 알려주고 다음 지침을 따르세요.
1 — 앱 스토어 연결에 로그인하세요. 앱 스토어 연결.
2 — 사용자 및 액세스 선택. 앱 스토어 연결 사용자 액세스.

앱 스토어 연결 API 키

4 — API 키를 생성하기 위해 Generate 버튼을 클릭하거나 (+) 버튼을 클릭하세요.

5 — 키 이름을 입력하고 접근 권한을 선택하세요. 우리는 Apple Developer Program 역할 권한에 대해 더 읽어보세요. App Manager 애플 개발자 프로그램 역할 권한 여기

6 — Generate 버튼을 클릭하세요.
API 키의 액세스는 특정 앱으로 제한할 수 없습니다.
새로운 키의 이름, 키 ID, 다운로드 링크 및 기타 정보가 페이지에 나타납니다.

다음 세 가지 정보를 모두 가져오세요:
<1> 문제 ID.
<2> 키 ID.
<3> API 다운로드를 클릭하여 API 개인 키를 다운로드하세요. 개인 키가 다운로드되지 않은 경우 다운로드 링크만 표시됩니다. 애플은 개인 키의 복사본을 유지하지 않습니다. 따라서 개인 키를 한 번만 다운로드할 수 있습니다.
🔴 Store your private key in a safe place. You should never share your keys, store keys in a code repository, or include keys in client-side code.
Codemagic에 App Store Connect API 키 추가
-
Codemagic 팀 설정을 열어보세요.
code 서명 식별자 선택
인증서 업로드

-
클릭 키 추가 버튼.
-
입력을
App Store Connect API key name이 키는 애플리케이션 설정에서 나중에 키를 참조할 때 사용할 수 있는人間 읽기 가능한 이름입니다. -
입력을
Issuer ID및Key ID값. -
클릭하여 App Store Connect __CAPGO_KEEP_0__ 키를 다운로드한 것을 업로드하세요. 애플 스토어 연결 API 키를 이전에 다운로드 한 것을 업로드하기 위해 파일을 끌어다 놓으세요.
-
저장 Save.
현재 우리는 Codemagic를 App Store Connect API 키로 관리할 수 있습니다, 정말 좋습니다!
2. 인증서 및 배포 프로파일을 생성하세요.
인증서
XCode를 열고 설정 > 계정 > Apple ID > 팀 팀을 선택하세요.

클릭하여 인증서 관리 > + 그리고 선택하여 애플 배포.

그런 다음 새로운 인증서를 만들 수 있습니다.
그런 다음 인증서를 파일로 다운로드하기 위해 키 체인에 가야합니다. .p12 file.
로그인 탭 keychain 인증서.

그 다음에 원하는 인증서를 다운로드할 수 있습니다. (인증서의 날짜를 기준으로 검색하세요)
그 다음에 인증서 오른쪽 클릭 후 내보내기.
파일 형식 선택 개인 정보 교환 (.p12).
인증서를 파일로 다운로드합니다. .p12 설정 프로파일
열기
애플 개발자 인증서 그리고 올바른 팀을 선택하세요.
그 다음 새로운 프로필을 만들기 위해 클릭하세요. +

그리고 선택하세요. 애플 스토어 연결.

그 다음 올바른 앱을 선택하세요, 주의해야 합니다. 와일드 카드 사용 시 서명이 실패할 것입니다.

올바른 인증서를 선택하세요. (만료일을 확인하세요. 오늘 날짜와 월이 같아야 합니다.) 계속.

마지막으로 프로필 이름을 입력하고 생성.
이 이름은 Codemagic에서 프로필을 식별하는 데 사용됩니다.

프로필을 다운로드할 수 있습니다. .mobileprovision 프로필 다운로드

Code 인증서 추가
Codemagic lets you upload code signing certificates as PKCS#12 archives containing both the certificate and the private key which is needed to use it. When uploading, Codemagic will ask you to provide the certificate password (if the certificate is password-protected) along with a unique ,설정에서 특정 파일을 가져오기 위해 사용할 수 있습니다. codemagic.yaml 인증서 업로드
- 인증서 업로드
- 신규 인증서 생성
- 개발자 포털에서 가져오기
- Codemagic 팀 설정에서 codemagic.yaml 설정 > Code 서명 식별자.
- 열기 iOS 인증서 탭.
- 인증서 파일을 선택하려면 .p12 또는 .pem 파일을 선택하세요 또는 프레임에 드래그하여 업로드하세요.
- 인증 정보를 입력하세요. 인증 비밀번호를 입력하세요. 그리고 프로비저닝 프로파일을 선택하세요. 참조 이름을 선택하세요..
- 클릭 프로비저닝 프로파일 추가
프로비저닝 프로파일 추가
Codemagic은 애플리케이션에 사용할 프로비저닝 프로파일을 업로드하거나 애플리케이션 개발자 포털에서 프로파일을 가져올 수 있도록 허용합니다.
프로파일의 유형, 팀, 번들 ID, 만료일은 Code 서명 식별자에 추가된 각 프로파일에 표시됩니다. 또한, Codemagic은 code 서명 인증서가 Code 서명 식별자에 존재하는지 여부를 알려줍니다 (인증 정보 필드의 녹색 체크 마크). 인증 3. Codemagic 설정
3. Codemagic 설정
Codemagic 비밀 설정
값의 원천이 궁금한가요? ENV 그것은 더 이상 비밀일 필요가 없습니다 – 그것은 프로젝트의 비밀에서 오는 것입니다. 🤦
4. Codemagic 워크플로우 파일 설정
프로젝트의 루트 폴더에 이름이 codemagic.yml 이름의 파일을 만들고 다음을 추가하세요.
workflows:
ionic-capacitor-ios-workflow:
name: Capacitor iOS Workflow
max_build_duration: 120
instance_type: mac_mini_m1
integrations:
app_store_connect: CodeMagic
environment:
ios_signing:
distribution_type: app_store
bundle_identifier: YOUR_BUNDLE_IDENTIFIER
vars:
XCODE_WORKSPACE: ios/App/App.xcworkspace
XCODE_SCHEME: App
APP_STORE_APP_ID: YOUR_APP_STORE_APP_ID
node: v20.14.0
xcode: 15.4
cocoapods: default
triggering:
events:
- tag
tag_patterns:
- pattern: '*'
include: true
scripts:
- name: Install dependencies
script: |
npm install
- name: Cocoapods installation
script: |
cd ios/App && pod install
- name: Update dependencies and copy web assets to native project
script: |
npm run build
npx cap sync ios
- name: Set up code signing settings on Xcode project
script: |
xcode-project use-profiles
- name: Increment build number
script: |
cd $CM_BUILD_DIR/ios/App
LATEST_BUILD_NUMBER=$(app-store-connect get-latest-app-store-build-number "$APP_ID")
agvtool new-version -all $(($LATEST_BUILD_NUMBER + 1))
- name: Build ipa for distribution
script: |
xcode-project build-ipa \
--workspace "$XCODE_WORKSPACE" \
--scheme "$XCODE_SCHEME"
artifacts:
- build/ios/ipa/*.ipa
- /tmp/xcodebuild_logs/*.log
- $HOME/Library/Developer/Xcode/DerivedData/**/Build/**/*.app
- $HOME/Library/Developer/Xcode/DerivedData/**/Build/**/*.dSYM
publishing:
email:
recipients:
- YOUR_EMAIL
notify:
success: true # To not receive a notification when a build succeeds
failure: false # To not receive a notification when a build fails
app_store_connect:
auth: integration
# Configuration related to TestFlight (optional)
# Note: This action is performed during post-processing.
submit_to_testflight: true
# Configuration related to App Store (optional)
# Note: This action is performed during post-processing.
submit_to_app_store: false
이 워크플로우는 수동으로 또는 각 GitHub 후에 트리거되어야 합니다. 태그를 트리거하거나, 자동화하려면 자동 빌드 및 릴리즈와 함께 GitHub 작업 first.
__CAPGO_KEEP_0__
각 새 태그를 전송할 때마다 테스트 플라이트에서 릴리스가 빌드됩니다.
Ionic을 사용할 필요가 없습니다. Capacitor의 기본 버전만 필수이며, 이전 Cordova 모듈을 사용할 수 있지만 Capacitor JS 플러그인은 선호됩니다.
5. 워크플로우 트리거
워크플로우를 트리거하세요.
새 커밋을 브랜치에 푸시하세요. main 또는 development 워크플로우를 트리거하세요.

몇 분 후에 빌드는 앱 스토어 커넥트 대시보드에 표시되어야 합니다.

수동으로 시작
워크플로우를 수동으로 시작할 수 있습니다.
앱을 선택하세요. 그 다음 새 빌드 시작.

빌드할 branch를 선택하세요.

그 다음 새 빌드 시작.
빌드 목록으로 이동하세요.

결과를 확인하기 위해 빌드를 클릭하세요.

로컬 머신에서 배포할 수 있습니다.
네, 가능합니다. 그리고 그것은 매우 쉬워요.
Xcode를 사용하여 앱을 빌드하고 서명할 수 있습니다. 항상 그대로입니다.
감사합니다.
이 블로그는 다음 기사에 기반합니다.
자동 Capacitor IOS 빌드와 Codemagic에서 계속 진행하세요.
자동 __CAPGO_KEEP_0__ IOS 빌드와 Codemagic을 사용하는 경우 자동 Capacitor IOS 빌드와 Codemagic을 사용하여 CI/CD 자동화 계획을 만든 경우 자동 __CAPGO_KEEP_0__ IOS 빌드와 Codemagic을 연결하세요. Capgo CI/CD Capgo 제품 워크플로우에서 Capgo CI/CD 에 대해 Capgo 네이티브 빌드 Capgo 제품 워크플로우에서 Capgo 네이티브 빌드 에 대해 Capgo 통합 Capgo 제품 워크플로우에서 Capgo 통합 에 대해 CI/CD 통합 Capgo 빌더 / 네이티브 클라우드 빌드 제품 페이지에서 CI/CD 통합 에 대해 GitHub 액션 통합 GitHub 액션 통합