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
KARTEを支えるCI環境
Search
positiveflat
November 08, 2016
Programming
1
2.2k
KARTEを支えるCI環境
positiveflat
November 08, 2016
Tweet
Share
More Decks by positiveflat
See All by positiveflat
マルチプロダクト開発体制における エンジニアリングマネジメント | 野田 陽平 PLAID, Inc
positiveflat
2
610
プレイドにおけるプロダクトの国際化の取り組み | 野田 陽平 PLAID, Inc
positiveflat
6
2.9k
CXプラットフォームKARTEのプロダクト改善
positiveflat
1
1.4k
Vue.jsを数ヶ月使ってみて遭遇した問題とその解決策
positiveflat
4
4.4k
Other Decks in Programming
See All in Programming
VibeCoding時代のエンジニアリング
daisuketakeda
0
270
JAWS DAYS 2025 re_Cheers: WEB
komakichi
0
130
Road to Ruby for A Linguistics Nerd
hayat01sh1da
PRO
0
380
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
2
560
Beyond_the_Prompt__Evaluating__Testing__and_Securing_LLM_Applications.pdf
meteatamel
0
120
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
290
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.3k
UMAPをざっくりと理解 / Overview of UMAP
kaityo256
PRO
3
1.6k
Vibe Coding の話をしよう
schroneko
14
3.9k
データと事例で振り返るDevin導入の"リアル" / The Realities of Devin Reflected in Data and Case Studies
rkaga
3
2.8k
Instrumentsを使用した アプリのパフォーマンス向上方法
hinakko
0
260
ビカム・ア・コパイロット
ymd65536
1
160
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Making Projects Easy
brettharned
116
6.2k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Faster Mobile Websites
deanohume
307
31k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Adopting Sorbet at Scale
ufuk
76
9.4k
Facilitating Awesome Meetings
lara
54
6.4k
Designing for Performance
lara
608
69k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
850
Transcript
,"35&Λࢧ͑Δ$*ڥ 1-"*% *OD :PIFJ/PEB
ࣗݾհ ໊લ:PIFJ/PEB ॴଐגࣜձࣾϓϨΠυ UXJUUFS!QPTJUJWFqBU *#.ιϑτΣΞ։ൃݚڀॴ ిࢠใ։ࣔؔ࿈ͷιϑτΣΞ։ൃ ʙגࣜձࣾϓϨΠυ
ϦΞϧλΠϜ8FC٬πʔϧͷ։ൃ ʢ6* #BDLFOE $*৭ʑʣ
ͲΜͳαʔϏεΛ։ൃ͍ͯ͠Δ͔ ։ൃελϯεͱҙࣝ 1-"*%ͷ$*ڥͷશମ૾ ى͖ͨͱऔΓΜͰ͖ͨ͜ͱ ·ͱΊ
ͲΜͳαʔϏεΛ։ൃ͍ͯ͠Δ͔
WEB٬ϓϥοτϑΥʔϜ KARTEΛ։ൃ͍ͯ͠·͢
Πϕϯτඵ ඵؒτϥοΩϯά Y ඵղੳ ղੳͷ.BY࣌ؒ ԯ =݄ ݄ؒྲྀ௨ֹۚ
WEB٬ϓϥοτϑΥʔϜ KARTEΛ։ൃ͍ͯ͠·͢
input - output
2015.3ͷϦϦʔεҎ߱ 1300ࣾҎ্ʹಋೖ
։ൃελϯεͱҙࣝ
• શһ͕ࣗͰߟ͑Δ • શһ͕θϩϕʔεͰߟ͑Δ • શһ͕͢Δ ࣗ༝ͰϑϥοτͳνʔϜͰɺεϐʔυײͷ͋Δ։ൃΛࢦ͢ ࣦഊΛڐ༰ͯ͠ɺτϥΠΞϯυΤϥʔͰਐΜͰ͍͘
Software development process ʢΑ͘ݟΔv-modelʣ
ཁ݅ఆٛ ઃܭ ৄࡉઃܭ ࣮ ςετ ϦϦʔε
ӡ༻ खΓίετ
ςετࣗಈԽͷత • Regression issueΛݮΒ͢ • खΓΛ͑ͯ։ൃͷεϐʔυΛҡ࣋͢Δ • ςετͷίετݮ
1-"*%ͷ$*ڥ
Development process
Release process (git-flow) 3FMFBTF 3FMFBTF CSBODI %FQMPZUP FWBMVBUJPO FOW .BOVBM
5FTU %FQMPZUP QSPEVDUJPO FOW
None
GUI Automation (selenium)
ى͖ͨͱऔΓΜͰ͖ͨ͜ͱ
ى͖ͨ • ͍ͬͯΔΠϯελϯε͕͍ • GUI automation testͰɺelement͕ͳ͔ͳ͔ݟ͔ͭ Βͳ͍(sleepࠈ) • ςετʹ͕͔͔࣌ؒΔͱฒྻΛ্͛ͨ͘ͳΔͷͰɺ
ෆඞཁʹ༻͢Δ͕ଟ͘ͳΔ
CircleCIͰͷฒྻԽ
CircleCI Enterprise • ࣗͰΠϯελϯεΛཱͯͯͦΕΛ͑Δ (ςετʹ߹Θͤͯࣗ༝ʹmachine specΛ ௐͰ͖Δʣ • 30 days
trial
GUI automation XFCESJWFSXBJU ESJWFS FMFNFOUTESJWFSpOE&MFNFOUT CZ@IPHF SFUVSOXFCESJWFSQSPNJTFpMUFSFMFNFOUT
FMFNFOU FMFNJT%JTQMBZFE UIFO FMFNFOUT FMFNFOUTMFOHUI UJNFPVU FSSPS.TH • elementݟ͔ͭΒͳ͍ • ڥʹΑͬͯඳը͕͍ • ୯७ͳsleepͩͱඳը࣌ؒͷมԽʹରԠͰ͖ͳ͍
ݱࡏͷ՝ • Manual testͷ෦͕͍ͬͯΔ • ࣮ߦ͕͍࣌ؒ
ࠓޙͷ༧ఆ • Dockerizeͯ͠ςετ༻ͷڥઃఆͷ࣌ؒ ݮ͢Δ • productionڥͷdeployલͷςετࣗಈԽ ʢΠϯλʔϯͷֶੜ͕ࣗಈԽதʂ͏͙͢ʣ
5. ·ͱΊ • PLAIDͷCIڥͷհ • ى͖ͨͱऔΓΜͰ͖ͨ͜ͱ
1-"*% *OD ΤϯδχΞืूதͰ͢ʂ