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
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
28
力技で実現するHR Driven Provisioningとアクセス制御の自動化 / kyash-hr-driven-provisioning
rela1470
0
1.4k
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
550
Other Decks in Programming
See All in Programming
t *testing.T は どこからやってくるの?
otakakot
1
800
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.7k
Spec-driven Development: How AI Changes Everything (And Nothing)
simas
PRO
0
390
tRPCの概要と少しだけパフォーマンス
misoton665
2
240
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
1k
PHPer、Cloudflare に引っ越す
suguruooki
1
110
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
190
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
460
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
290
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
690
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
1
490
Vibe NLP for Applied NLP
inesmontani
PRO
0
500
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
180
Site-Speed That Sticks
csswizardry
13
1.2k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
How GitHub (no longer) Works
holman
316
150k
Ethics towards AI in product and experience design
skipperchong
2
260
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
190
Crafting Experiences
bethany
1
130
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Are puppies a ranking factor?
jonoalderson
1
3.3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
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