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
SwiftでMCPサーバーを作ろう!
giginet
PRO
3
270
Creating Intuitive Developer Tool in Swift
giginet
PRO
0
1.3k
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
2
5.8k
5分でわかるExplicitly Built Modules
giginet
PRO
1
1.2k
Introduction for Open Source Swift Workshop
giginet
PRO
0
1.7k
Swift Packageを使った 巨大な依存グラフのキャッシュ戦略
giginet
PRO
5
5.9k
Deep Dive into Mergeable Library
giginet
PRO
1
2k
Go beyond the Actor Boundary ~ Swift 6へのConcurrency対応 ~
giginet
PRO
1
4k
新しいビルドツールScipioのご紹介
giginet
PRO
3
1.3k
Other Decks in Programming
See All in Programming
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
2.1k
print("Hello, World")
eddie
2
530
Deep Dive into Kotlin Flow
jmatsu
1
370
Swift Updates - Learn Languages 2025
koher
2
510
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
540
個人軟體時代
ethanhuang13
0
330
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
400
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
640
概念モデル→論理モデルで気をつけていること
sunnyone
3
300
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
870
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
The Cult of Friendly URLs
andyhume
79
6.6k
Building Applications with DynamoDB
mza
96
6.6k
Six Lessons from altMBA
skipperchong
28
4k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Documentation Writing (for coders)
carmenintech
74
5k
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