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
レバレッジ効果をもたらす自動化のコツ
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
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
150
Running Swift without an OS
kishikawakatsumi
0
950
浮動小数の比較について
kishikawakatsumi
0
550
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
250
愛される翻訳の秘訣
kishikawakatsumi
3
450
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
240
Build your own WebP codec in Swift
kishikawakatsumi
2
2.3k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
330
Other Decks in Programming
See All in Programming
net-httpのHTTP/2対応について
naruse
0
500
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.7k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
540
ふつうのFeature Flag実践入門
irof
8
4k
The NotImplementedError Problem in Ruby
koic
1
840
C# and C++ Interoperability - cho-dotnetnew
harukasao
0
260
New "Type" system on PicoRuby
pocke
1
970
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
250
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
120
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
710
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
260
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
240
Faster Mobile Websites
deanohume
310
31k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
240
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Visualization
eitanlees
152
17k
My Coaching Mixtape
mlcsv
0
150
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
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