Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
レバレッジ効果をもたらす自動化のコツ
Search
Kishikawa Katsumi
July 31, 2019
Programming
1.5k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
レバレッジ効果をもたらす自動化のコツ
Kishikawa Katsumi
July 31, 2019
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
240
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
180
Running Swift without an OS
kishikawakatsumi
0
1.1k
浮動小数の比較について
kishikawakatsumi
0
620
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
280
愛される翻訳の秘訣
kishikawakatsumi
3
500
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
260
Build your own WebP codec in Swift
kishikawakatsumi
2
2.8k
Other Decks in Programming
See All in Programming
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
680
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
1.8k
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
280
XHTMLが残したもの
yosuke_furukawa
PRO
2
800
How I Stole PSI from Android Studio - DroidKaigi2026
worker8
0
130
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
240
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
710
Intent as Code
shoppingjaws
6
1k
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
0
160
FreeBSDでZabbixを動かす.pdf
kenkino
0
280
Featured
See All Featured
Fireside Chat
paigeccino
43
4k
How to Think Like a Performance Engineer
csswizardry
28
2.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Designing for humans not robots
tammielis
254
26k
What's in a price? How to price your products and services
michaelherold
247
13k
How to Talk to Developers About Accessibility
jct
2
550
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
Site-Speed That Sticks
csswizardry
13
1.5k
Paper Plane
katiecoart
PRO
4
53k
Faster Mobile Websites
deanohume
310
32k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Transcript
ϨόϨοδޮՌΛͨΒ͢ ࣗಈԽͷίπ
ࣗಈԽඇػೳཁ݅ • ϝϦοτ͕େ͖͍͜ͱཧղ͍ͯͯ͠༏ઌΛ্͛ͯऔΓΉ͜ͱ͕͠ ͍
ࣗಈԽϨόϨοδޮՌ͕͋Δ
ࣗಈԽͷखॱ खݩͷ࡞ۀΛ... ཧͯ͠ίϚϯυϥΠϯԽ CIͳͲͰ࣮ߦ͢Δ
ࣗಈԽͷखॱ खݩͷ࡞ۀΛ... ཧͯ͠ίϚϯυϥΠϯԽ CIͳͲͰ࣮ߦ͢Δ ͜Ε͕ϨόϨοδޮՌΛ͏Ή
ϨόϨοδޮՌΛੜΉࣗಈԽͷצͲ͜Ζ • ख࡞ۀ => ࣗಈ࣮ߦ • λεΫ͕ίϚϯυϥΠϯʹཧ͞ΕΔ • λεΫ͕ཧɾղ͞ΕΔ •
λεΫ͕ίʔυͰදݱ͞ΕΔʢʓʓ as a codeʣ • ܁Γฦ࣮͠ߦՄೳʹͳΔ • τϥοΩϯά͕Մೳ • ۀՄೳʹͳΔ • ࣮ߦڥ͕҆ఆ͢Δ
ϨόϨοδޮՌΛੜΉࣗಈԽͷצͲ͜Ζ • ख࡞ۀ => ࣗಈ࣮ߦ • λεΫ͕ίϚϯυϥΠϯʹཧ͞ΕΔ • λεΫ͕ཧɾղ͞ΕΔ •
λεΫ͕ίʔυͰදݱ͞ΕΔʢʓʓ as a codeʣ • ܁Γฦ࣮͠ߦՄೳʹͳΔ • τϥοΩϯά͕Մೳ • ۀՄೳʹͳΔ • ࣮ߦڥ͕҆ఆ͢Δ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ • ࣗಈԽ͕ՄೳʹͳΔ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ • ࣗಈԽ͕ՄೳʹͳΔ • ୭Ͱ࣮ߦՄೳʹͳΔ • ಡΊΘ͔ΔΑ͏ʹͳΔ
• ڥ͕҆ఆ͢Δ • etc.
ࣗಈԽͷखॱ खݩͷ࡞ۀΛ... ཧͯ͠ίϚϯυϥΠϯԽ CIͳͲͰ࣮ߦ͢Δ
λεΫΛίʔυͰදݱ͢Δʢʓʓ as a codeʣ • มߋཧ͕ՄೳʹͳΔ • τϥοΩϯάՄೳʹͳΔ • ࠶ݱՄೳʹͳΔ
• etc.
ࣗಈԽͷखॱ खݩͷ࡞ۀΛ... ཧͯ͠ίϚϯυϥΠϯԽ CIͳͲͰ࣮ߦ͢Δ
ࣗಈԽͷखॱ खݩͷ࡞ۀΛ... ཧͯ͠ίϚϯυϥΠϯԽ CIͳͲͰ࣮ߦ͢Δ
λεΫ࣮ߦڥͱͯ͠ͷBitrise • ϫʔΫϑϩʔͱτϦΨʔͷΈ͕ॊೈͰڧྗ • εέδϡʔϧ࣮ߦ͕ʢ͓ͦΒ͘ʣແݶʹఆٛͰ͖Δ • Web UI͕ศར
λεΫ࣮ߦڥͱͯ͠ͷBitrise • ϩά͕ݟͮΒ͍ • ίϚϯυϥΠϯͰͰ͖Δૢ࡞͕গͳ͍ • ίϛοτ୯ҐͰ࣮ߦΛεΩοϓ͠ʹ͍͘
Bitriseͷόϥϯεͷ͍͍ར༻ͷίπ • ϒϥϯνͱϫʔΫϑϩʔΛ໊લϧʔϧͰϚοϐϯά͢Δͱศར • ࣮ߦͷίετ͕͍҆ͷͰࣦഊΛؾʹͤͣʹϦτϥΠͰϦΧόʔ͢Δ • σόοάେมͳͷͰૉʹ࣮ߦ͞ΕΔΑ͏ʹ͢Δ • όϦΤʔγϣϯτϦΨʔͱϒϥϯνͷΈ߹ΘͤͰ࣮ݱ͢Δ
GitHubΛத৺ͱ͢ΔࣗಈԽͷγεςϜ • τϦΨʔͱͯ͠ͷPR • ςετڥͱͯ͠ͷϒϥϯν • λεΫͷมߋཧ • ࣮ߦ݁Ռͷอଘɾཧ •
ϑΝΠϧஔ͖ͱͯ͠ͷGitHub • Ծ࣮ߦڥͱͯ͠ͷCI
• deliver • deliver-internal • deliver-external • nightly-build • update-license-plist
• refresh-dSYMs • test • sync-bitrise-yml • renew-build-cache • update-dependencies • update-tools • nightly-tests App Store Connect/Fabricͷ৴ masterͰϑϧϏϧυ͢Δ ͯ͢ͷςετΛ࣮ߦ OSSͷϥΠηϯεใͷߋ৽ dSYMͷΞοϓϩʔυ PR͝ͱͷςετ Bitrise.ymlͷμϯϩʔυ ϥΠϒϥϦͷࣗಈߋ৽ πʔϧͷࣗಈߋ৽ ϏϧυΩϟογϡͷΫϦʔχϯά
• deliver • deliver-internal • deliver-external • nightly-build • update-license-plist
• refresh-dSYMs • test • sync-bitrise-yml • renew-build-cache • update-dependencies • update-tools • nightly-tests App Store Connect/Fabricͷ৴ masterͰϑϧϏϧυ͢Δ ͯ͢ͷςετΛ࣮ߦ OSSͷϥΠηϯεใͷߋ৽ dSYMͷΞοϓϩʔυ PR͝ͱͷςετ Bitrise.ymlͷμϯϩʔυ ϥΠϒϥϦͷࣗಈߋ৽ πʔϧͷࣗಈߋ৽ ϏϧυΩϟογϡͷΫϦʔχϯά Ϗϧυڥͷ҆ఆԽ ϦϦʔε͕τϥοΩϯάՄೳ ୭ͰɾͲ͜Ͱɾ͍ͭͰϦϦʔεՄೳ Ϗϧυڥ as a code Ϗϧυʹඞཁͳͷ Ϗϧυखॱ ґଘؔ ෆ۩߹͕ग़ͨͱ͖ͷௐࠪ ڥͷมߋͷτϥοΩϯά
ϏϧυɾςετͷࣗಈԽ $ brew update $ brew reinstall "carthage" $ bundle
install --path=vendor/bundle --binstubs=vendor/bin $ bundle exec fastlane download_build_cache $ Scripts/build_carthage $ Scripts/build_pods $ bundle exec fastlane folio_tests $ set -o pipefail && xcodebuild test -workspace Folio.xcworkspace -scheme Folio-Release-Staging -destination 'name=iPhone X,OS=11.4' -only-testing:FolioTests -derivedDataPath DerivedData -enableCodeCoverage YES ENABLE_TESTABILITY=YES | xcpretty
ϦϦʔεϏϧυɾ৴ͷࣗಈԽ $ brew update $ brew reinstall "carthage" $ bundle
install --path=vendor/bundle --binstubs=vendor/bin $ bundle exec fastlane download_build_cache $ Scripts/build_carthage $ Scripts/build_pods $ bundle exec fastlane folio_tests $ set -o pipefail && xcodebuild test -workspace Folio.xcworkspace -scheme Folio-Release-Staging -destination 'name=iPhone X,OS=11.4' -only-testing:FolioTests -derivedDataPath DerivedData -enableCodeCoverage YES ENABLE_TESTABILITY=YES | xcpretty
ɹϥΠϒϥϦͷࣗಈߋ৽
OpenAPI (Swagger)ͷࣗಈੜ
OpenAPI (Swagger)ͷࣗಈੜ
Bitrise.ymlͷಉظ
ɹϥΠϒϥϦͷϏϧυͱΩϟογϡ
ɹϥΠϒϥϦͷϏϧυͱΩϟογϡ
ΫϦʔϯͳԾڥͱͯ͠ͷBitrise
·ͱΊ • λεΫΛίʔυͰදݱ͢Δ͜ͱͰϨόϨοδ͕ޮ͘ • BitriseΛ͏߹ɺGitHubΛτϦΨʔ࣮ߦͷίϯτϩʔϧͱͯ͠͏ ͱόϥϯε͕͍͍ • BitriseΫϦʔϯͳϏϧυڥͱͯ͠ར༻Ͱ͖ΔʢAlt Dockerʁʣ •
ࣗಈԽΛಥ͖٧ΊΔͱখ͞ͳίετͰେ͖ͳϝϦοτ͕ಘΒΕΔ
Reference https://blog.kishikawakatsumi.com/entry/2019/06/19/160150