Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
Search
fromkk
June 03, 2021
Programming
1
2.9k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
Bitrise User Group Japan #5 にて登壇してきた内容の資料です。
fromkk
June 03, 2021
Tweet
Share
More Decks by fromkk
See All by fromkk
note社の全員野球で品質向上活動について / note_qa_challenge #iOS_test_teatime
fromkk
3
1.9k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
970
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
2k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
1.1k
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
2
3.9k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
590
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
11k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
2.1k
Catalystに対応したアプリをリリースするまでのリジェクト集 #iosdc #a #lt/iosdc_2020_lt
fromkk
2
1.1k
Other Decks in Programming
See All in Programming
PHPカンファレンス関西2025 基調講演
sugimotokei
6
1.1k
DMMを支える決済基盤の技術的負債にどう立ち向かうか / Addressing Technical Debt in Payment Infrastructure
yoshiyoshifujii
5
750
Flutterと Vibe Coding で個人開発!
hyshu
1
220
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
110
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
8
560
リッチエディターを安全に開発・運用するために
unachang113
1
350
iOS開発スターターキットの作り方
akidon0000
0
230
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
0
180
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
930
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
3
1.9k
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
660
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
720
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Making Projects Easy
brettharned
117
6.3k
The Invisible Side of Design
smashingmag
301
51k
Designing for humans not robots
tammielis
253
25k
Gamification - CAS2011
davidbonilla
81
5.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
4 Signs Your Business is Dying
shpigford
184
22k
Code Review Best Practice
trishagee
69
19k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Writing Fast Ruby
sferik
628
62k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Transcript
dSYMͷΞοϓϩʔυͰ SPMΛ׆༻͢Δ Bitrise User Group Japan #5 1
struct Profile { let name = "Kazuya Ueoka" let company
= " note inc." let twitter = " @fromkk" let github = " fromkk" let qiita = " fromkk" let note = " fromkk" } 2
ৼΓฦΓ 3
https://note.com/fromkk/n/n064299093064 4
ͪΐͬͱࡶͳ࣮͕͋Γ·ͨ͠😅 5
ࡶͳ࣮ • # TypeͰϥΠϒϥϦͷཧΛSwift Package Managerͷ Έʹ͍ͤͯͨ • Crashlyticsͷupload-symbolsίϚϯυΛୟͨ͘Ί͚ͩ ʹҰ࣌྇͗ͰCocoaPodsΛར༻
• ϥΠϒϥϦͷΩϟογϡແࢹ 6 use_frameworks! target 'Type' do pod 'FirebaseCrashlytics' end
͔ͤͬ͘ͳͷͰͪΌΜͱSPMΛ׆༻͍ͨ͠ 7
SPMΛclone͢ΔσΟϨΫτϦͷܾఆ 8
ύοέʔδΛclone͢ΔσΟϨΫτϦΛมߋ • ௨ৗXcodeͰSPMΛར༻͢Δͱclone͢Δύοέʔδ ~/Library/Developer/Xcode/DerivedData/ ${PRODUCT_NAME}-${HASH}/SourcePackages/ ҎԼʹࣗಈతʹஔ͞ΕΔ • खಈͰࢦఆ͍ͨ͠߹
xcodebuild ίϚϯυͷ -clonedSourcePackagesDirPath ΦϓγϣϯΛར༻͢Δ͜ͱͰ มߋՄೳ 9
ύοέʔδͷґଘ͚ؔͩղܾ͍ͨ͠ • xcodebuild -resolvePackageDependencies -project $BITRISE_PROJECT_PATH -scheme $BITRISE_SCHEME -configuration Debug
-clonedSourcePackagesDirPath $PACKAGES_PATH ্هΛSPMܦ༝Ͱར༻͍ͨ͠ίϚϯυΛୟ͘લʹ࣮ߦ͓ͯ͘͠ ʢxcworkspaceΛར༻͍ͯ͠Δ߹ -project Λ -workspace ʹมߋʣ 10
࠷ऴతͳεΫϦϓτ 11 bundle install export FASTLANE_USER=$APPLE_ID export FASTLANE_PASSWORD=$APPLE_PW export SPACESHIP_2FA_SMS_DEFAULT_PHONE_NUMBER=$APP_PHONE_NUMBER
export DOWNLOAD_DSYMS_TEAM_ID=$APPLE_TEAM_ID fastlane udpate_session DSYMS_PATH=$(pwd)/dsyms/ mkdir $DSYMS_PATH fastlane dsyms dest:$DSYMS_PATH envman add --key DSYMS_PATH --value $DSYMS_PATH xcodebuild -resolvePackageDependencies -project $BITRISE_PROJECT_PATH -scheme $BITRISE_SCHEME -configuration Debug -clonedSourcePackagesDirPath $PACKAGES_PATH +
upload-symbolsͷύεΛมߋ 12
ΩϟογϡΛ׆༻͍ͨ͠ 13
Ωϟογϡͷ׆༻ • xcodebuild -resolvePackageDependencies Λୟ͘લʹ Bitrise.io Cache:Pull εςοϓΛՃ 14
Ωϟογϡͷ׆༻ • xcodebuild -resolvePackageDependencies Λୟ͍ͨޙͰ Bitrise.io Cache:Push εςοϓΛՃ
• Cache pathsΛԼهͷΑ͏ʹมߋ $PACKAGES_PATH -> $BITRISE_PROJECT_PATH/project.xcworkspace/ xcshareddata/swiftpm/Package.resolved 15
࠷ऴ݁Ռ 16 εΫϦϓτͷલޙʹΩϟογϡΛՃ
·ͱΊ • લճΓ͍ͯͨ͠SPMͷ՝Λղܾ͢Δ͜ͱ͕Ͱ͖ͨ🎉 • SPMͰΩϟογϡΛར༻͢Δ͜ͱͰ࣮ߦ࣌ؒॖ⏰ • ͜ΕͰεοΩϦͱͨ͠ؾͰdSYMͷΞοϓϩʔυΛCIʹͤ ΒΕΔ👍 17
None