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
Azure Pipeline
Search
giginet
PRO
April 16, 2019
Programming
0
1.9k
Azure Pipeline
giginet
PRO
April 16, 2019
Tweet
Share
More Decks by giginet
See All by giginet
Creating Intuitive Developer Tool in Swift
giginet
PRO
0
1.1k
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
2
4.9k
5分でわかるExplicitly Built Modules
giginet
PRO
0
780
Introduction for Open Source Swift Workshop
giginet
PRO
0
1.6k
Swift Packageを使った 巨大な依存グラフのキャッシュ戦略
giginet
PRO
5
5.1k
Deep Dive into Mergeable Library
giginet
PRO
1
1.8k
Go beyond the Actor Boundary ~ Swift 6へのConcurrency対応 ~
giginet
PRO
1
3.6k
新しいビルドツールScipioのご紹介
giginet
PRO
3
1.2k
ポケモンで学ぶiOS 16弾丸ツアー 🚅
giginet
PRO
1
970
Other Decks in Programming
See All in Programming
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
Open source software: how to live long and go far
gaelvaroquaux
0
660
color-scheme: light dark; を完全に理解する
uhyo
7
490
バッチを作らなきゃとなったときに考えること
irof
2
510
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
910
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
750
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
350
Formの複雑さに立ち向かう
bmthd
1
930
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
160
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
150
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
990
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
172
14k
Done Done
chrislema
182
16k
The Invisible Side of Design
smashingmag
299
50k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Bash Introduction
62gerente
611
210k
Producing Creativity
orderedlist
PRO
344
40k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Gamification - CAS2011
davidbonilla
80
5.2k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
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