Archive するたびに Splunk Mint (旧 Bugsense) に自動で dSYM ファイルをアップロードする
追記: この記事は古い情報です。現在この記事の方法ではアップロードできません。
最新の SplunkMint-iOS をインストールし、以下の記事に従って設定してください。(ただし、アーカイブ時ではなくビルド時にアプロードされます)
Configure your project for symbolication - Splunk Documentation
API キーとトークンの取得
API キーとトークンは Splunk Mint のサイトにログインして、それぞれ以下のページから取得する。
Xcode プロジェクトの設定
Xcode のスキーマ(Xcode 上バーのデバッグ停止ボタンの右) をクリックして Edit Scheme... を選択する。
Archive の Post-actions を開き、+ をクリックして New Run Script Action を選択する。
API_KEY="API キー" API_TOKEN="API トークン" APP_NAME=アプリ名 rm -f $APP_NAME.app.dSYM.zip zip -r $APP_NAME.app.dSYM.zip "${ARCHIVE_DSYMS_PATH}/$APP_NAME.app.dSYM" curl -F file=@"$APP_NAME.app.dSYM.zip" --header "X-Splunk-Mint-apikey: $API_KEY" --header "X-Splunk-Mint-Auth-Token: $API_TOKEN" "https://symbolicator.splkmobile.com/upload/dsym" -i
API キーやトークンを Git の管理対象に入れたく無い場合
プロジェクトルートディレクトリに mint.plist というファイルを置いて、.gitignore で管理対象にならないようにする。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>API_KEY</key> <string>API キー</string> <key>API_TOKEN</key> <string>API トークン</string> </dict> </plist>
以下のようなスクリプトを登録する
APP_NAME="アプリ名" API_KEY=$(/usr/libexec/PlistBuddy -c "Print API_KEY" $(dirname ${WORKSPACE_PATH})/mint.plist) API_TOKEN=$(/usr/libexec/PlistBuddy -c "Print API_TOKEN" $(dirname ${WORKSPACE_PATH})/mint.plist) rm -f $APP_NAME.app.dSYM.zip zip -r $APP_NAME.app.dSYM.zip "${ARCHIVE_DSYMS_PATH}/$APP_NAME.app.dSYM" curl -F file=@"$APP_NAME.app.dSYM.zip" --header "X-Splunk-Mint-apikey: ${API_KEY}" --header "X-Splunk-Mint-Auth-Token: ${API_TOKEN} "https://symbolicator.splkmobile.com/upload/dsym" -i