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
CIをもっと高速にした(かった) / ci-fast
Search
Jun Watanabe
February 22, 2017
Programming
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CIをもっと高速にした(かった) / ci-fast
presented on #phpblt #6
https://phpblt.connpass.com/event/49458/
Jun Watanabe
February 22, 2017
More Decks by Jun Watanabe
See All by Jun Watanabe
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
1.1k
20分1発勝負! 社内Webツールをライブコーディングするぞ! / Live Coding PHPerKaigi 2025
rela1470
0
33
力技で実現するHR Driven Provisioningとアクセス制御の自動化 / kyash-hr-driven-provisioning
rela1470
0
1.5k
10分(25分)でつくる社内Webツール / howto-oidc-webpage
rela1470
0
170
リーグオブ情シス 第二回 / League of Infosys
rela1470
1
1.5k
Kyashでコーポレートエンジニアを初採用して7ヶ月が経ちましたがお元気ですか / ce-night-kyash
rela1470
4
3.3k
じこしょうかい2019 / rela1470-portfolio-2019
rela1470
0
410
255オクテットのドメインはツラみがある! / endless-work
rela1470
1
5.5k
ヤフーの1on1
rela1470
0
560
Other Decks in Programming
See All in Programming
JavaDoc 再入門
nagise
0
320
ふつうのFeature Flag実践入門
irof
7
3.7k
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
260
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
160
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
710
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
490
AI時代のUIはどこへ行く?その2!
yusukebe
21
7k
New "Type" system on PicoRuby
pocke
1
830
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
160
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
200
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
680
Featured
See All Featured
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
160
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
450
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Balancing Empowerment & Direction
lara
6
1.2k
Transcript
CIΛͬͱߴʹͨ͠ (͔ͬͨ) 2017/02/22 PHP BLT #6 Jun Watanabe
Jun Watanabe • ORATTA, Inc. Chief Engineer • PHPer 8͘Β͍
• ࠷ۙϚωδϝϯτɾ։ൃڥվળͷൺॏଟΊ • Twitter: http://rela.red/ https://recruit.oratta.net/
CIճͯ͠·͔͢?
ܧଓతΠϯςάϨʔγϣϯ • ϓϩάϥϚʔͷΞϓϦέʔγϣϯ࡞࣌ͷ ࣭վળೲظͷॖͷͨΊͷश׳ • ϏϧυςετɺΠϯεϖΫγϣϯͳͲΛܧ ଓతʹ࣮ߦ͍ͯ͘͜͠ͱ
Codecov GitHub Flow scrutinizer pull request 2017/02/22 ࣌
Codecov GitHub Flow scrutinizer pull request 2017/02/22 ࣌ Ϣχοτςετ ΧόϨοδ
Ϣχοτςετ PHP5.6.17 PHPUnit
19ඵ PHPUnit͍ >time phpunit -c phpunit.xml Runtime: PHP 5.6.17 real
0m19.066s user 0m14.152s sys 0m1.670s
Ϣχοτςετ + ΧόϨοδϨϙʔτ PHP5.6.17 PHPUnit Xdebug
1427ඵ Xdebug͍ >time phpunit -c phpunit.xml —coverage-html=coverage Runtime: PHP 5.6.17
with Xdebug 2.3.3 real 14m27.768s user 14m2.158s sys 0m22.179s +148ඵ
PHP7ʹ͢Ε ྑ͍͡ΌΜ!
Ϣχοτςετ + ΧόϨοδϨϙʔτ PHP7.1.1 PHPUnit Xdebug
56ඵ PHP7͍ >time phpunit -c phpunit.xml --coverage-html=coverage Runtime: PHP 7.1.1
with Xdebug 2.5.0 real 0m56.049s user 0m47.812s sys 0m1.034s -1331ඵ
phpdbgʹ͢Ε ྑ͍͡ΌΜ!
5ඵ!! phpdbg͍ >time phpdbg -qrr phpunit -c phpunit.xml --coverage-html=coverage Runtime:
PHPDBG 7.1.1 real 0m05.875s user 0m04.711s sys 0m0.342s -51ඵ
phpdbg ͬͱ׆༻ͯ͠΄͍͠!
؆୯ʹରԠͰ͖·͢! • CircleCI • PHP7ͳΒσϑΥͰରԠ͍ͯ͠·͢! • homebrew-php • શόʔδϣϯɺΠϯετʔϧΦϓγϣϯ͕͋Γ·͢! •
ྫ)brew install php71 --with-phpdbg
ͱ͍͑ݱ࣮Ͳ͏ͳͷ͔ • PHP7ʹҠߦͰ͖ͳ͍ϓϩδΣΫτ͋Δ • phpdbgPHP5.4͔Β͑Δ • PHP5.5Ҏલ͜ͷੈ͔Β໓Μͩจ໌ • PHP5.6ͰϑϨϯζʹͳΔํ๏Λߟ͑Δ
CircleCIͷPHP5.6ڥͰ phpdbgΛແཧΓ ͑ΔΑ͏ʹ͠·ͨ͠
https://github.com/ rela1470/ circleci-phpdbg
phpdbgͰΧόϨοδ͕औΕΔͷ PHP7͔Βͩͬͨ >time phpdbg -qrr phpunit -c phpunit.xml —coverage-html=coverage Runtime:
PHPDBG 5.6.17 Error: No code coverage driver is available
Ϣχοτςετ͚ͩͰ ૣ͘ͳͬͯͳ͍͔ͳ͋ >time phpunit -c phpunit.xml Runtime: PHP 5.6.17 real
0m19.066s user 0m14.152s sys 0m1.670s
ٯʹ8ඵ͘ͳͬͨ... >time phpdbg -qrr phpunit -c phpunit.xml Runtime: PHPDBG 5.6.17
real 0m27.769s user 0m23.256s sys 0m1.244s +8ඵ
͍ΈͪΞφλ࣍ୈ • ͬͱେنͳςετڥͰͬͨΒߴԽ ͯ͠Δͷ͔? • phpdbgͩͱ௨Βͳ͍ςετ͕͋ΔͷͰɺҠߦ લνΣοΫͱ͔ʹ͏?
https://github.com/ rela1470/ circleci-phpdbg
forked from suzuki/its-travel-pack (PHPBLT #4 by @suzuki) https://github.com/ rela1470/ its-travel-pack