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.8k
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
980
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
2
4.1k
5分でわかるExplicitly Built Modules
giginet
PRO
0
550
Introduction for Open Source Swift Workshop
giginet
PRO
0
1.5k
Swift Packageを使った 巨大な依存グラフのキャッシュ戦略
giginet
PRO
5
4.9k
Deep Dive into Mergeable Library
giginet
PRO
1
1.7k
Go beyond the Actor Boundary ~ Swift 6へのConcurrency対応 ~
giginet
PRO
1
3.4k
新しいビルドツールScipioのご紹介
giginet
PRO
3
1.1k
ポケモンで学ぶiOS 16弾丸ツアー 🚅
giginet
PRO
1
930
Other Decks in Programming
See All in Programming
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
CSC509 Lecture 11
javiergs
PRO
0
180
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.5k
最新TCAキャッチアップ
0si43
0
140
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
100
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
860
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
220
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
260
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
Quine, Polyglot, 良いコード
qnighy
4
640
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
320
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Done Done
chrislema
181
16k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
KATA
mclloyd
29
14k
The Language of Interfaces
destraynor
154
24k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Happy Clients
brianwarren
98
6.7k
Optimizing for Happiness
mojombo
376
70k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
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