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
640
プレイドにおけるプロダクトの国際化の取り組み | 野田 陽平 PLAID, Inc
positiveflat
6
3k
CXプラットフォームKARTEのプロダクト改善
positiveflat
1
1.4k
Vue.jsを数ヶ月使ってみて遭遇した問題とその解決策
positiveflat
4
4.4k
Other Decks in Programming
See All in Programming
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
980
CDK引数設計道場100本ノック
badmintoncryer
2
370
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
330
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
23
9k
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
240
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
200
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
8.2k
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
450
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
420
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
820
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
600
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Adopting Sorbet at Scale
ufuk
77
9.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
108
19k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Practical Orchestrator
shlominoach
189
11k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Documentation Writing (for coders)
carmenintech
72
4.9k
Designing for humans not robots
tammielis
253
25k
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 ΤϯδχΞืूதͰ͢ʂ