BITRISE에서 iTunes Connect로 Deploy
BITRISE에 iTunes Connect에 업로드할 워크플로우를 입력합니다.
최초 업로드
발행되지 않은 상점에 없는 프로그램은 이workflow로 업로드할 수 없습니다.처음으로 Xcode에서 수동으로 업로드해야 합니다.
설정
YAML
먼저yml 파일의 설정 부분을 발췌하였다.
steps:
- [email protected]:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- [email protected]: {}
- [email protected]: {}
- [email protected]: {}
- [email protected]: {}
- [email protected]:
inputs:
- project_path: <WORKSPACE_NAME>.xcworkspace
- scheme: <SCHEME_NAME>
- is_clean_build: 'yes'
- configuration: Release
- export_method: app-store
- team_id: <TEAM_ID>
- [email protected]: {}
- [email protected]:
inputs:
- password: "$ITUNES_CONNECT_PASSWORD"
- app_id: "$ITUNES_CONNECT_APP_APPLE_ID"
- itunescon_user: "$ITUNES_CONNECT_USER_APPLE_ID"
- [email protected]: {}
- [email protected]:
inputs:
- content: |-
#!/usr/bin/env bash
# fail if any commands fails
set -e
# debug log
set -x
# write your script here
buildNumber="$IOS_APP_VERSION_NAME ($IOS_APP_VERSION_NAME.$BITRISE_BUILD_NUMBER)"
appName=$IOS_APP_NAME
bundleId=$IOS_IPA_PACKAGE_NAME
workflowId=$BITRISE_TRIGGERED_WORKFLOW_ID
echo "$BITRISE_APP_TITLE $buildNumber $workflowId"
message="The workflow \"$workflowId\" was succeeded!\n$appName $buildNumber\n$bundleId\n$BITRISE_GIT_MESSAGE"
envman add --key SLACK_MESSAGE_BODY --value "$message"
echo "SLACK_MESSAGE_BODY is $SLACK_MESSAGE_BODY"
# or run a script from your repository, like:
# bash ./path/to/script.sh
# not just bash, e.g.:
# ruby ./path/to/script.rb
- [email protected]:
is_always_run: false
inputs:
- message: "$SLACK_MESSAGE_BODY"
- emoji: ":bitrise:"
- webhook_url: https://hooks.slack.com/services/<SLACK_WEBHOOK_URL>
- channel: "#<SLACK_CHANNEL_NAME>"
- from_username: Bitrise CI
- image_url: ''
envs:
- ITUNES_CONNECT_APP_APPLE_ID: '<APPLE_ID>'
다음은 마음대로 당신의 물건으로 바꿔 주세요.<TEAM_ID> ... チームID
<SLACK_WEBHOOK_URL> ... Slack Webhook URL で発行したURL(ID)
<SLACK_CHANNEL_NAME> ... Slack通知するチャンネル名
<APPLE_ID> ... アップロードに使用するApple ID
<WORKSPACE_NAME> ... xcworkspaceの名称
<SCHEME_NAME> ... スキーム名
설명
Cocoapods Install
단계까지 저번의workflow와 같습니다.
Run CocoaPods Install
이후에 Xcode Archive & Export for iOS
단계를 추가합니다.
아카이브 이전Xcode Test
단계에서도 가능하지만, 디버그 구축과 설치가 동일하면 특별한 의미가 없어 생략합니다.
Archive 후 추가Deploy to Bitrise.io
,ipa와 dsym을 검사하고 싶을 때 유용합니다.물론 비공개 설정이다.
iTunes Connect에 업로드하려면 Deploy to iTunesConnect
또는 Deploy to iTunesConnect shenzen
단계를 수행합니다.
전자Deploy to iTunesConnect
는 여러 가지 설정을 할 수 있어서 편리할 것 같아요.
Apple ID의 2단계 인증을 유효하게 설정하면 오류가 발생하거나 장애가 발생할 수 있으므로 해당 인증서Deploy to iTunesConnect shenzen
를 사용합니다.
Deploy to iTunesConnect shenzen
간단한 설치
steps:
- [email protected]:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- [email protected]: {}
- [email protected]: {}
- [email protected]: {}
- [email protected]: {}
- [email protected]:
inputs:
- project_path: <WORKSPACE_NAME>.xcworkspace
- scheme: <SCHEME_NAME>
- is_clean_build: 'yes'
- configuration: Release
- export_method: app-store
- team_id: <TEAM_ID>
- [email protected]: {}
- [email protected]:
inputs:
- password: "$ITUNES_CONNECT_PASSWORD"
- app_id: "$ITUNES_CONNECT_APP_APPLE_ID"
- itunescon_user: "$ITUNES_CONNECT_USER_APPLE_ID"
- [email protected]: {}
- [email protected]:
inputs:
- content: |-
#!/usr/bin/env bash
# fail if any commands fails
set -e
# debug log
set -x
# write your script here
buildNumber="$IOS_APP_VERSION_NAME ($IOS_APP_VERSION_NAME.$BITRISE_BUILD_NUMBER)"
appName=$IOS_APP_NAME
bundleId=$IOS_IPA_PACKAGE_NAME
workflowId=$BITRISE_TRIGGERED_WORKFLOW_ID
echo "$BITRISE_APP_TITLE $buildNumber $workflowId"
message="The workflow \"$workflowId\" was succeeded!\n$appName $buildNumber\n$bundleId\n$BITRISE_GIT_MESSAGE"
envman add --key SLACK_MESSAGE_BODY --value "$message"
echo "SLACK_MESSAGE_BODY is $SLACK_MESSAGE_BODY"
# or run a script from your repository, like:
# bash ./path/to/script.sh
# not just bash, e.g.:
# ruby ./path/to/script.rb
- [email protected]:
is_always_run: false
inputs:
- message: "$SLACK_MESSAGE_BODY"
- emoji: ":bitrise:"
- webhook_url: https://hooks.slack.com/services/<SLACK_WEBHOOK_URL>
- channel: "#<SLACK_CHANNEL_NAME>"
- from_username: Bitrise CI
- image_url: ''
envs:
- ITUNES_CONNECT_APP_APPLE_ID: '<APPLE_ID>'
<TEAM_ID> ... チームID
<SLACK_WEBHOOK_URL> ... Slack Webhook URL で発行したURL(ID)
<SLACK_CHANNEL_NAME> ... Slack通知するチャンネル名
<APPLE_ID> ... アップロードに使用するApple ID
<WORKSPACE_NAME> ... xcworkspaceの名称
<SCHEME_NAME> ... スキーム名
Archive에서 output의 $BITRISEIPA_PATH를 사용합니다.
시크릿에 정의된 애플 ID를 지정합니다.
시크릿에 정의된 애플 ID의 암호를 지정합니다.
애플리케이션의 App Store ID를 지정합니다.(예: Env Vars에 정의된 변수 이름 지정)
그리고 제작된workflow와 적당한branch
Start Build
를 선택하세요.검사 요점
기본적으로 잘못된 일지를 보고 해결하지만, 보고도 잘 모르는 부분도 있어서 대충 적어 놓는다.
- Provisioning Profile이 정식 응용 프로그램에 속하는지 여부
-p12 파일이 정식 애플리케이션인지 여부
- Xcode Archive ステップ > Export options > Select method for export
app-store
- Xcode Archive ステップ > Export options > The Developer Portal team to use for this export
정식 앱의 팀 ID가 되는지 여부(Debug 빌딩과 Release 빌딩에서 다른 애플 ID를 사용하는 경우 등)
- 앞서 설명한 바와 같이 Apple ID의 2단계 인증이 유효한 경우 iTunes Connect에 대한 Deploy 단계는 Deploy to iTunesConnect shenzen
여야 합니다.
감상
버튼만 누르면 아이튠즈 커넥트에 업로드할 수 있고, 좀 더 진지하게 게시된 앱이라면 손해가 없을 것 같다
수정 내역
2018/03/16:31Deploy to iTunesConnect shenzen
의 설정을 보충하다. MMMMMMMMMMMM
MMMMddddNMMM
MMMM mMMM
MMMMssssNMMM
MMMMMMMMMMMM
sMMMMd
yMMMMd
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMdhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhdMMMM
MMMM MMMM
MMMM MMMM
MMMMM MMMMMM
MMMMMMMM MMMMMMMM
MMM' MMMM .yy. .yy. MMM 'MMM
MMMh MMMM .MMMMMMl. .lMMMMMMM. MMM hMMM
MMM MMMM .MMMMMmNMMMl. .MMMMNmMMMM. MMM MMM
MMMs MMMM .hhhh yhhh. .hhhh hhh+ MMM sMMM
MMM. MMMM MMM .MMM
MMMNMMMM MMMMNMMM
MMMMMM MMMMMM
MMMM MMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMM MMMM
MMMM MMMM
MMMM MMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Reference
이 문제에 관하여(BITRISE에서 iTunes Connect로 Deploy), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/a_jike/items/2cec064572a94f899d48
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
버튼만 누르면 아이튠즈 커넥트에 업로드할 수 있고, 좀 더 진지하게 게시된 앱이라면 손해가 없을 것 같다
수정 내역
2018/03/16:31
Deploy to iTunesConnect shenzen
의 설정을 보충하다. MMMMMMMMMMMM
MMMMddddNMMM
MMMM mMMM
MMMMssssNMMM
MMMMMMMMMMMM
sMMMMd
yMMMMd
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMdhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhdMMMM
MMMM MMMM
MMMM MMMM
MMMMM MMMMMM
MMMMMMMM MMMMMMMM
MMM' MMMM .yy. .yy. MMM 'MMM
MMMh MMMM .MMMMMMl. .lMMMMMMM. MMM hMMM
MMM MMMM .MMMMMmNMMMl. .MMMMNmMMMM. MMM MMM
MMMs MMMM .hhhh yhhh. .hhhh hhh+ MMM sMMM
MMM. MMMM MMM .MMM
MMMNMMMM MMMMNMMM
MMMMMM MMMMMM
MMMM MMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMM MMMM
MMMM MMMM
MMMM MMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Reference
이 문제에 관하여(BITRISE에서 iTunes Connect로 Deploy), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/a_jike/items/2cec064572a94f899d48텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)