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
umedago-20190726.pdf
Search
kumatch
July 26, 2019
Programming
0
60
umedago-20190726.pdf
kumatch
July 26, 2019
Tweet
Share
More Decks by kumatch
See All by kumatch
goleak で goroutine leak を検出する
kumatch
0
520
Other Decks in Programming
See All in Programming
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
1k
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
170
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
250
CSC305 Lecture 04
javiergs
PRO
0
270
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
490
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
570
オープンソースソフトウェアへの解像度🔬
utam0k
15
2.9k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
120
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
190
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.4k
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
1.3k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
353
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
A better future with KSS
kneath
239
18k
Designing for humans not robots
tammielis
254
26k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
We Have a Design System, Now What?
morganepeng
53
7.8k
Context Engineering - Making Every Token Count
addyosmani
6
250
What's in a price? How to price your products and services
michaelherold
246
12k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Visualization
eitanlees
149
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Transcript
GoϚϧνϓϥοτϑΥʔϜͷͨΊͷ CIαʔϏε 2019-07-26 Umeda.go 2019 Summer Yosuke Kumakura
About • kuamtch / ۽༸հ • freee גࣜձࣾ • go
/ ruby / javascript / node.js / php
͓ ʮϚϧνϓϥοτϑΥʔϜʹల։͞ΕΔ ιϑτΛ Go Ͱ։ൃ͢Δʯͱ͖ͷ CI ڥ Λߟ͑Δ
جຊͷ • Ϗϧυ࣌ʹOS/ΞʔΩςΫνϟݻ༗ͳ Go ίʔυΛѻ͏Έ͕ ͋Δ • ίʔυઌ಄ͷϏϧυλά (// +build
GOOS) • ϑΝΠϧ໊ (_GOOS, _GOARCH) • ৄ͘͠ https://golang.org/pkg/go/build/
ඪ • Windows / OSX / Linux ͷ CI Λճ͍ͨ͠
• ΫϩείϯύΠϧ͕తͰͳ͍ • OS ݻ༗ʢґଘʣͳॲཧʹରͯ͠ςετͰ͖ΔΑ͏ʹ͍ͨ͠ • ָ͍ͨ͠ʢࣗͰڥ࡞Βͳ͍ʣ
֬ೝ༻ίʔυ • https://github.com/kumatch/example-go-multios-ci • Windows/OSX/Linux ຖʹҟͳΔॲཧίʔυΛ༻ҙ • ςετίʔυҰԠ OS ຖʹ༻ҙͯ͠Έͨ
• ͜ΕΛ͍ΖΜͳ CI αʔϏεͰಈ͔͢ • ࠓճςετ࣮ߦͷΈ
Travis CI • Windows / OSX / Linux OK •
Windows ·ͩएׯෆ҆ఆ͔
CircleCI • Windows ະαϙʔτ • macOS ϓϥϯͰ Mac ڥ͕͑Δ͚Ͳ Go
͕ೖͬͯͳ͍
AppVeyor • Windows / Linux • ͜Ε·Ͱ Windows ͚ʹʴίϨͰΘΕ͍ͯͨҹ •
ҟͳΔڥ͚ʹϑϩʔͷఆٛΛॻ͘ͷ͕େมʢո͍͠ʣ • matrix only ͱ্͔ͬͯॻ͖͢Δ
Azure DevOps (Pipelines) • Windows / OSX / Linux •
ʮCIαʔϏεʯͷγϯϓϧ͞ͱϚωʔδυͷ͍͍ͱ͜औΓ
AWS CodeBuild / GCP Cloud Build • Docker ʹΑΔϏϧυڥ •
Windows / Linux • ࣗʹඞཁͳͷΛ̍ͭͣͭ࡞Γ·͠ΐ͏Έ͍ͨͳΠϝʔδ • ख͔͔ؒΔ͕͖উखͰ͖ͦ͏
·ͱΊ • Travis CI ؆୯ʹϚϧνϓϥοτϑΥʔϜ͚ͷରԠ͕Մೳ • Azure Pipelines ΊͬͪΌྑ͍ •
Windows͚ͷΈʹݶఆͯ͠ͷ AppVeyor Ҿ͖ଓ͖ΞϦ • AWS GCP Ψνܥ