Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Azure Pipeline
giginet
April 16, 2019
Programming
0
1.3k
Azure Pipeline
giginet
April 16, 2019
Tweet
Share
More Decks by giginet
See All by giginet
OSS Forward Workshop
giginet
3
780
Crossroad - 最高のCustom URL Schemeルーティングを支える技術2021
giginet
4
310
わいわいDocC ~ waiwai-docc ~
giginet
0
57
今日から使える実践的Swift Concurrency / Introducing Swift Concurrency
giginet
1
93
大規模なアプリのマルチモジュール構成の実践
giginet
4
10k
モバイルアプリ行動ログ基盤を”大統一”した話
giginet
0
2.3k
XcodeGen超入門
giginet
8
2.6k
👾 令和時代のゲームボーイ開発
giginet
3
6.6k
Cookpad Spring Intern 2019 - Swiftコンパイラ -
giginet
1
7.4k
Other Decks in Programming
See All in Programming
테라폼으로 ECR 관리하기 (How to Manage ECR with Terraform)
posquit0
0
530
レビュー駆動学習のススメ_StaPy#83
soogie
0
330
モデルの定義に基づくバリデーションを実現するためのpydantic入門
daikikatsuragawa
0
120
ベストプラクティス・ドリフト
sssssssssssshhhhhhhhhh
1
220
Recap CDN, Edge, WebAssembly | ワインと鍋.js#1
sadnessojisan
2
1.2k
実践 SpiceDB - クライドネイティブ時代をサバイブできるパーミッション管理の実装を目指して / Practical SpiceDB
lmt_swallow
0
140
ExplainableAIの概要とAmazon SageMaker Clarifyでの実装例
hacarus
0
110
VIMRC 2022
achimnol
0
140
ESM移行は無理だけどおれもSindreのライブラリが使いたい!
sosukesuzuki
2
560
プロダクトの成長とSREと
takuyatezuka
0
130
SAM × Dockerでサーバーレス開発が超捗った話
yu_yukk_y
1
440
僕が便利だと感じる Snow Monkey の特徴/20220723_Gifu_WordPress_Meetup
oleindesign
0
120
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
219
17k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_i
25
16k
Bootstrapping a Software Product
garrettdimon
296
110k
Design by the Numbers
sachag
271
17k
Making Projects Easy
brettharned
99
4.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
39
13k
Product Roadmaps are Hard
iamctodd
35
6.9k
Rails Girls Zürich Keynote
gr2m
87
12k
Debugging Ruby Performance
tmm1
65
10k
The Pragmatic Product Professional
lauravandoore
19
3.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
638
53k
Large-scale JavaScript Application Architecture
addyosmani
499
110k
Transcript
Azure Pipelines for iOS @giginet iOS Test Nights #10 1
୭ • @giginet • ΫοΫύου ϞόΠϧج൫ • Core Contributor of
Carthage / fastlane 2
ࠓ͢͜ͱ • Azure PipelinesͬͯΈͨ • ओʹOSS༻్ 3
Azure Pipelinesͱ • Microso(͕ఏڙ͢ΔCI as a service • ڈͷळ͙Β͍ʹ࢝·ͬͨ •
h0ps:/ /azure.microso(.com/ja-jp/services/devops/pipelines/ 4
5
ಛ • GUIͰઃఆՄೳ • ͔ͳΓແྉͰ͑Δ • OSS࣌ؒແ੍ݶͰ10ฒྻɻ࣮࣭ແྉ • Ϋϩʔζυ1ฒྻͷΈͰ݄1800 •
๛ͳλεΫ • Market Place • macOS/Linux/Windowsͷίϯςφ͕͑Δ • ηϧϑϗεςΟϯά͕Մೳ 6
7
Demo 8
9
10
11
• ઃఆϑΝΠϧYAMLͰఆٛՄೳ • azure-pipelines.yml pool: vmImage: 'macOS 10.13' steps: -
task: Xcode@5 inputs: scheme: '' sdk: 'iphoneos' configuration: 'Release' xcodeVersion: 'default' 12
• δϣϒఆ͔ٛΒYAMLΛੜͰ͖Δ 13
ͦͷଞiOS͚ͷTask • Install Provisioning Profile / Cer3ficates • App Store
• αϒϛοτ • TestFlight • Test with App Center 14
Install Provisioning Profile / Cer2ficates • Provisioning Profileূ໌ॻΛΞοϓϩʔυͯ͠ΠϯετʔϧͰ ͖Δ •
Developer Center͔Βऔ͖ͬͯͨΓɺࣗಈͰߋ৽ͨ͠Γͯ͠ ͘Εͳ͍ • ͦ͜·ͰΔʹfastlaneΛ͏ 15
App Store • App Storeͷαϒϛοτ͕ߦ͑Δ • ෦తʹfastlaneୟ͍ͯΔ • ҰԠΦʔϓϯιʔε h0ps:/
/github.com/Microso;/app-store-vsts- extension/tree/master/Tasks/app-store-release • ݱঢ়Ͱ͖Δ͜ͱ͕ݶఆత͗ͯ͢ݫ͍͠…… • ·ͱʹ͏ͷ͍͠ͷͰɻfastlaneͬͨํ͕ྑ͍ 16
17
UI Test • Visual Studio App CenterΛͬͨUIςετ͕Մೳ • XCUITest/Appium/EarlgreyͳͲ •
ͪΌΜͱͬͯͳ͍ͷͰෆ໌ 18
Swi$PM • 1ͭͷδϣϒͰmacOS/Linux͕͑Δ • →ΫϩεϓϥοτϑΥʔϜͳSwi0ϥΠϒϥϦʹ͑Δ͔ʁ • Swi0PMͰఏڙ͍ͯ͠ΔϥΠϒϥϦͷϏϧυʹͬͯΈͨ 19
Swi$PM • Swi% ToolchainΛѻ͏Task͕Ұແ͍ • swi%envToolchainͷΠϯετʔϧΛશͯࣗલͰΔඞཁ͕ ͋Δ • ͜ͷ༻్Ͱݱঢ়Travis CIͷํ͕ྑ͍
20
jobs: - job: macOS pool: vmImage: 'macOS-10.13' steps: - script:
| export SWIFT_VERSION=4.2.4 # Install swiftenv eval "$(curl -sL \ https://gist.githubusercontent.com/kylef/ \ 5c0475ff02b7c7671d2a/raw/9f442512a46d7a2af7b850d65a7e9bd31edfb09b/\ swiftenv-install.sh)" swift build 21
Pros • ୯७ʹXcodeͰϏϧυ͢ΔϓϩδΣΫτ • xcodebuild ΛࣗͰୟ͔ͳͯ͘ྑ͍ • খ͞ͳϓϥΠϕʔτϓϩδΣΫτ͖ • ϥΠϒϥϦʹΞϓϦʹ͑Δ
22
Pros • δϣϒఆٛͷॊೈ͞ • GUIͰઃఆͰ͖ͯࢼߦࡨޡ͍͢͠ • ઃఆཤྺΔ • YAMLͰѻ͏͜ͱͰ͖Δ •
GUI͔ΒYAML͕ు͚Δ 23
Cons • ܕʹϋϚͬͯͳ͍ϓϩδΣΫτʹෆ͖ • ྫ͑Swi%PMͰ͢ΔϥΠϒϥϦͳͲ • ΩϟογϡͷΈ͕ශऑ • ύοέʔδΠϯετʔϧͳͲ͕ඞཁͳϓϩδΣΫτʹෆ͖ •
ڥߏங͕DockerΛ͏͜ͱલఏͱͳ͍ͬͯΔͨΊɺmacOS ͩͱ͍͠ 24
Cons • azure-pipelines.yml͕͍͠ • ֤λεΫͷΦϓγϣϯͳͲΛѲ͠ͳ͍ͱ͍͚ͳ͍ͷͰGUI ͰΔ͔ɺશ෦γΣϧεΫϦϓτͰͬͨํ͕ྑ͍ҹ…… • ༗ྉϓϥϯߴ͍ؾ͕͢Δ • େ͖ͳΞϓϦBitriseΛͬͨํ͕ྑ͍ͷͰ……
25
·ͱΊ • ϓϥΠϕʔτϦϙδτϦ࣮࣭ແྉͰྑ͍ • ܕʹϋϚͬͨ͜ͱΓͦ͢͏ • Taskʹ͋Δ͜ͱΛ͢Δʹָ͕ͩɺͪΐͬͱ֎Εͨ͜ͱΛ͠Α͏ͱ͢Δͱ్ʹ ͍͠ • ৄ͍͠ਓTravis
CIͷํ͕Ή͠Ζָ • iOSͷCD༻్ʹ·ͩ·ͩΩπͦ͏ • App Store extensionͰͰ͖Δ͜ͱ͕ݶఆత 26
ࢀߟࢿྉ • h#ps:/ /docs.microso/.com/en-us/azure/devops/pipelines/ languages/xcode?view=azure-devops • h#ps:/ /github.com/Microso/Docs/pipelines-xcode 27
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 28