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
wordpress-plugins-and-themes-development-with-C...
Search
KamataRyo
July 10, 2016
Technology
810
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
wordpress-plugins-and-themes-development-with-CI-services
WordCamp Kansai 2016
KamataRyo
July 10, 2016
More Decks by KamataRyo
See All by KamataRyo
TileCloud の開発を支える技術
kamataryo
2
450
NPX-shell-hacking
kamataryo
0
65
frontend-shikoku#1
kamataryo
1
760
Introducing of Map Warper
kamataryo
0
1.6k
wp-rest-api-and-amazon-polly
kamataryo
0
1.1k
how-to-deploy-from-travis-ci
kamataryo
1
920
IoT with React
kamataryo
1
290
wacker#17-wreact
kamataryo
0
160
wakayamarb#37
kamataryo
1
120
Other Decks in Technology
See All in Technology
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
450
TypeScript入門 2026
recruitengineers
PRO
3
500
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
220
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.6k
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
8
2.2k
Goでデータパイプラインを作ろう
sansantech
PRO
1
360
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
120
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
230
新しい SLO が良い感じにハマっている話
z63d
5
2.2k
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
510
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.2k
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Building Adaptive Systems
keathley
44
3.2k
Skip the Path - Find Your Career Trail
mkilby
1
180
Fireside Chat
paigeccino
42
4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
930
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
440
How to make the Groovebox
asonas
2
2.3k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
430
Transcript
$*ࢧԉαʔϏε͔Β࢝ΊΔ 8PSE1SFTTϓϥάΠϯɾςʔϚ։ൃ !8PSE$BNQ,BOTBJ2016
ࣗݾհ ,BNBUB3ZP
$*ࢧԉαʔϏε ✖ 8PSE1SFTTϓϥάΠϯɾςʔϚ։ൃ
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ 1)1 +BWB4DSJQU )5.- $44 $PGGFF4DSJQU 4"44 FUD ςετίʔυ ίʔσΟϯά
Ϗϧυ ςετ σϓϩΠɾϦϦʔε
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ ґଘϥΠϒϥϦͷΠϯετʔϧ ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε $PNQPTFS #PXFS OQN
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ ίϯύΠϧɺNJOJGZɺ+BWB4DSJQUɾDTTͷ݁߹ $PGGFF4DSJQU 4"44 FUD ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ -JOUω⑲ϰ 1)16OJU ,BSNB .PDIB FUD ߏจνΣοΫ Ϣχοτςετ ౷߹ςετ ίʔσΟϯά
Ϗϧυ ςετ σϓϩΠɾϦϦʔε
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ 8PSE1SFTTެࣜϦϙδτϦίϛοτ (JIUVCͷϦϦʔεػೳΛ͏ ӡ༻தͷςʔϚɾϓϥάΠϯΛ αʔόʹσϓϩΠ FUD ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε
ܧଓ᧣Ωϸϋεϱ⑲μϬϸ BCCS$* ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε ͜ΕΒͷϓϩηεΛසൟʹ܁Γฦ͠ޮԽΛਤΔ
ςʔϚɾϓϥάΠϯ։ൃͷྲྀΕ Θͨͨͪ͠ $*ࢧԉαʔϏε ίʔσΟϯά Ϗϧυ ςετ σϓϩΠɾϦϦʔε
$*ࢧԉαʔϏεಋೖͷϝϦοτ ఆܕ࡞ۀͷࣗಈԽʹΑΔলྗԽ ࣗಈςετͷश׳ԽɺϦϦʔεͷࣗ৴ ظͰϦϦʔε͞Εɺڙ༻·ͰͷظؒΛॖ εςʔλεόοδ
$*ࢧԉαʔϏε͕Ԡ͑ΒΕΔधཁͷྫ ެࣜσΟϨΫτϦʹొ͍ͯ͠ΔςʔϚɺϓϥάΠϯͰɺ 4VCWFSTJPOҎ֎ʹ(JUͰόʔδϣϯཧ͍ͨ͠ OQNͳͲͷΤίγεςϜͱ૬ੑ͕Α͍ ϓϩδΣΫτʹ·ͭΘΔ٬؍తͳࢦඪͱͯ͠ FH(JUIVCͰϓϧϦΫΤετΛͨ͘͞Ίɺ$*ͰϏϧυ͕ޭ͍ͯ͠Δ͜ ͱΛϨϏϡʔͷ݅ͱ͢ΔͳͲ
ηοτΞοϓͱ։ൃڥͷಋೖ
5SBWJT$* IUUQTUSBWJTDJPSH
None
൚༻ͷ$*ࢧԉαʔϏε (JUIVCͱ࿈ܞ ެ։ϓϩδΣΫτແྉͰར༻Ͱ͖Δ
5SBWJT$*Λར༻͢Δεςοϓ (JUIVCͱ࿈ܞ͢Δ ઃఆϑΝΠϧUSBWJTZNMΛઃஔ (JUIVCʹϓογϡ
༗ޮԽ͢Δ(JUIVCϦϙδτϦΛબ
USBWJTZNM USBWJTZNMΛϓϥάΠϯɾςʔϚͷϧʔτʹઃஔ͢Δ $ tree -a . ├── .travis.yml ├── gulpfile.js
├── my-plugin.php ├── package.json ├── phpunit.xml ├── readme.txt └── tests └── test-my-plugin.php
USBWJTZNM 5SBWJT$*͕ಈ࡞͢ΔڥΛઃఆ ʢ1)1όʔδϣϯɺґଘϥΠϒϥϦʣ ڥมΛઃఆ ࣮ߦ͢ΔγΣϧεΫϦϓτΛࢦఆ
language: php php: - 5.3 - 5.6 before_script: - npm
run build script: - phpunit after_success: - deploy.sh env: global: - foo: “bar” - secure: “a/QQ7WgztQeINOonHM..” USBWJTZNM Ϗϧυ ςετ σϓϩΠɾϦϦʔε
(JUIVCͷϓογϡʹϑοΫͯ͠ɺ5SBWJT$*ͷϏϧυ͕ൃՐ͢Δ CFGPSF@TDSJQUͱTDSJQU͕FYJUʢਖ਼ৗऴྃʣͳΒޭ BGUFS@TVDDFTT͕ൃՐ ެ։ϓϩδΣΫτͳΒɺϏϧυϩάެ։
QVTI DMPOF ϦϙδτϦ͋Δ͍ ຊ൪ڥͳͲ Ϗϧυ ςετ σϓϩΠɾϦϦʔε ίʔσΟϯά
4UZMF$* IUUQTTUZMFDJJP
None
4UZMF$* 1)1ͷίʔσΟϯάελΠϧΛνΣοΫ (JUIVCͱ࿈ܞ ެ։ϓϩδΣΫτແྉͰར༻Ͱ͖Δ
4UZMF$*Λར༻͢Δεςοϓ εςοϓ (JUIVCͱ࿈ܞ͢Δ ʢઃఆϑΝΠϧTUZMFDJZNMΛઃஔʣ (JUIVCʹίϛοτΛϓογϡ 4UZMF$*
(JUIVCͱ࿈ܞ
ίʔσΟϯάελΠϧͷੳ
TUZMFDJZNM TUZMFDJZNMΛϓϥάΠϯɾςʔϚͷϧʔτʹઃஔ͢Δ $ tree -a . ├── .styleci.yml ├── .travis.yml
├── gulpfile.js ├── my-plugin.php ├── package.json ├── phpunit.xml ├── readme.txt └── tests ├── bootstrap.php └── test-my-plugin.php
risky: false linting: true preset: recommended enabled: - long_array_syntax #array()
disabled: - short_array_syntax #[ ] TUZMFDJZNM ελΠϧʹଟ͘ͷΦϓγϣϯ͕͋Γɺ ༗ޮԽɺແޮԽΛࢦఆͰ͖Δ
νΣοΫ݁Ռ͕ࠩͰදࣔ͞ΕΔ
GithubʹϓϧϦΫΤετΛૹͬͨΓɺ ࣗಈͰϚʔδͨ͠Γ͢Δ͜ͱ͕Ͱ͖Δ
·ͱΊ $*ࢧԉαʔϏεͰͰ͖Δ͜ͱ ൚༻ͷ$*ࢧԉαʔϏεͰγΣϧεΫϦϓτ͕ಈ࡞͢Δ ͜ͱ͕ଟ͍ ڥͷࠩΛٵऩ͠ɺଟ༷ͳ࡞ۀΛ࿈ܞɾࣗಈԽͰ͖Δ Ұํɺ4UZMF$*ͷΑ͏ʹɺಛఆͷαʔϏεʹಛԽ͠ɺ खܰʹಋೖͰ͖ΔαʔϏε͋Δ ։ൃڥᅂʹԠͯ͡બ͢Δ͜ͱ͕Ͱ͖Δ
·ͱΊ 8PSE1SFTTϓϥάΠϯɾςʔϚ։ൃͰ ΦʔϓϯιʔεϓϩδΣΫτͱ૬ੑͷྑ͍ $*ࢧԉαʔϏε͕͋Δ ΦʔϓϯιʔεͷϝϦοτΛΑΓڧௐͰ͖Δ Ϗϧυςετͷϓϩηε͕ΦʔϓϯͰ͋Γɺ ԁͳ͕ٞଅ͞ΕΔ ։ൃͷॳظஈ֊͔Β͜ΕΒͷπʔϧɾαʔϏεΛ ηοτΞοϓ͓ͯ͘͜͠ͱʹେ͖ͳϝϦοτ͕͋Δ