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
GitHubだけでWebフロントエンドのCI/CDをまわしてみた
Search
ozaki25
October 01, 2019
Technology
0
76
GitHubだけでWebフロントエンドのCI/CDをまわしてみた
ozaki25
October 01, 2019
Tweet
Share
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
150
20210525_react_next.pdf
ozaki25
0
110
Webフロントエンドはなぜ複雑なのか
ozaki25
1
110
utility first css
ozaki25
0
74
20201225_how_to_learn_technology.pdf
ozaki25
0
130
20201124_blitz.pdf
ozaki25
0
72
20200727_liff_app.pdf
ozaki25
1
610
20200721_web_vitals.pdf
ozaki25
0
87
20200624_web_otp_api.pdf
ozaki25
1
110
Other Decks in Technology
See All in Technology
JavaにおけるNull非許容性
skrb
2
2.7k
サバイバルモード下でのエンジニアリングマネジメント
konifar
22
7.4k
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
220
貧民的プログラミングのすすめ
kakehashi
PRO
1
150
開発組織を進化させる!AWSで実践するチームトポロジー
iwamot
2
560
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
180
完璧を捨てろ! “攻め”のQAがもたらすスピードと革新/20250306 Hiroki Hachisuka
shift_evolve
0
110
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
400
User Story Mapping + Inclusive Team
kawaguti
PRO
3
490
OPENLOGI Company Profile
hr01
0
60k
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.7k
データモデルYANGの処理系を再発明した話
tjmtrhs
0
330
Featured
See All Featured
A designer walks into a library…
pauljervisheath
205
24k
BBQ
matthewcrist
87
9.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
The Invisible Side of Design
smashingmag
299
50k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Agile that works and the tools we love
rasmusluckow
328
21k
Fireside Chat
paigeccino
35
3.2k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Transcript
(JU)VC͚ͩͰ$*$%Λճͯ͠ΈΔ ඌ࡚༐Ұ
ࣗݾհ w ໊લɿඌ࡚༐Ұ w ٕज़ɿ3FBDU 3FBDU/BUJWF 'JSFCBTF 18" αʔόʔϨε w
5XJUUFSɿ!P[BLJSO w (JU)VCɿP[BLJ w 2JJUBɿP[BLJ P[BLJͷ എ൪߸͔Β͖ͯ·͢ ʢ࠷ۙ͞΅Γؾຯʣ
࣍ (JU)VC"DUJPOTͱ (JU)VC"DUJPOTͷ͍ํ (JU)VC͚ͩͰ8FCϑϩϯτΤϯυͷ$*$%Λ݁ͤͯ͞Έͨ αʔόʔϨεͳ41"։ൃͰ(JU)VC"DUJPOTΛϑϧ׆༻ͯ͠Έͨ
ײ·ͱΊ
(JU)VC"DUJPOTͱ
(JU)VCͱ w ઃܭਤڞ༗αΠτ w ιʔείʔυΛϗεςΟϯάͰ͖Δ8FCαʔϏε w ΦʔϓϯιʔεͷϥΠϒϥϦݸਓϓϩδΣΫτͳͲ ෯͘ΘΕ͍ͯΔ w ྨࣅαʔϏεʹ(JUMBCɺ#JU#VDLFUͳͲ͕͋Δ
IUUQTPDUPEFYHJUIVCDPN
(JU)VC"DUJPOTͱ w (JU)VCʹՃ͞Εͨ$*αʔϏεʢݱࡏЌ൛ʣ w ϦϙδτϦͷ1VTIͳͲΛτϦΨʔʹλεΫΛ࣮ߦͰ͖Δ w λεΫԾڥͰ࣮ߦ͞ΕΔͷͰݴޠΛΘͣ ϏϧυςετͳͲԿͰ࣮ߦͰ͖Δ w ྨࣅαʔϏεʹ+FOLJOTɺ$JSDMF$*ɺ$PODPVSTFͳͲ͕͋Δ
ྉۚମܥ IUUQTHJUIVCDPKQGFBUVSFTBDUJPOT
(JU)VC"DUJPOTͷ͍ํ
(JU)VC"DUJPOTͷར༻ొ w ݱࡏਃ͠ͳ͍ͱ͑ͳ͍ IUUQTHJUIVCDPNGFBUVSFTBDUJPOTTJHOVQ
(JU)VC"DUJPOTͷར༻ొ w దͳࣗͷϦϙδτϦͰ"DUJPOTͷλϒ͕ग़͍ͯΕ0,
(JU)VC"DUJPOTͷઃఆϑΝΠϧ࡞ w HJUIVCXPSLqPXTԼʹZBNMϑΝΠϧΛ࡞͢Δ͚ͩͰ (JU)VC͕উखʹೝࣝͯ͘͠ΕΔ
ઃఆϑΝΠϧͷαϯϓϧ
ઃఆϑΝΠϧͷαϯϓϧ 8PSLqPX໊
ઃఆϑΝΠϧͷαϯϓϧ τϦΨʔ 1VTI͞Εͨ࣌ 1VMM3FRVFTUͷ࡞࣌ͳͲ ઃఆͰ͖Δ
ઃఆϑΝΠϧͷαϯϓϧ +PCͷఆٛ ෳఆٛ͢Δͱฒྻʹ࣮ߦ͞ΕΔ ͜ͷྫͰUFTUͱ͍͏KPCΛ ͻͱ͚ͭͩఆ͍ٛͯ͠Δ
ઃఆϑΝΠϧͷαϯϓϧ ڥͷઃఆ ͜ͷྫͰ6CVOUVʹ/PEFͷڥΛ ηοτΞοϓ͍ͯ͠Δ
ઃఆϑΝΠϧͷαϯϓϧ λεΫͷઃఆ ࣮ߦ͢ΔίϚϯυΛఆ͍ٛͯ͘͠ ͜ͷྫͰIFMMPͱIFMMPOPEFͷͱ͍͏ λεΫΛఆ͍ٛͯ͠Δ
ઃఆϑΝΠϧͷαϯϓϧ w ৄࡉҎԼͷϖʔδʹࡌͬͯ·͢ w IUUQTIFMQHJUIVCDPNKBBSUJDMFT XPSLqPXTZOUBYGPSHJUIVCBDUJPOT
࣮ߦ݁Ռͷαϯϓϧ
,FZใͷຒΊࠐΈ w "1*,FZͷΑ͏ͳιʔείʔυ্ʹॻ͖ͨ͘ͳ͍ใ 4FDSFUTͱͯ͠(JU)VC্ʹొ͠औΓࠐΉ͜ͱ͕Ͱ͖Δ ʮ4FUUJOHTʯʮTFDSFUTʯ͔Βొ
(JU)VC͚ͩͰ8FCϑϩϯτΤϯυͷ $*$%Λ݁ͤͯ͞Έͨ
(JU)VC"DUJPOTΛͬͯߟ͑ͨ͜ͱ w (JU)VC"DUJPOTͱ(JU)VC1BHFTΛ͑(JU)VC͚ͩͰ 8FCϑϩϯτΤϯυͷ$*$%Λ݁ͤ͞Δ͜ͱ͕Ͱ͖ͦ͏ʂ αʔόαΠυ ΫϥΠΞϯταΠυ )551௨৴ ͬͪ͜ଆͷ
Γ͍ͨ͜ͱ w 8FCϑϩϯτΤϯυͷ ։ൃ͔ΒϢʔβ͕ΞΫηε͢Δ·Ͱͷͳ͕Ε
Γ͍ͨ͜ͱ ᶃ41"ͷίʔυΛॻ͘
Γ͍ͨ͜ͱ ᶃ41"ͷίʔυΛॻ͘ ᶄϦϙδτϦʹ1VTI
Γ͍ͨ͜ͱ ᶃ41"ͷίʔυΛॻ͘ ᶄϦϙδτϦʹ1VTI ᶅςετϏϧυσϓϩΠ Α͠ͳʹͬͯ͘Ε
Γ͍ͨ͜ͱ ᶃ41"ͷίʔυΛॻ͘ ᶄϦϙδτϦʹ1VTI ᶅςετϏϧυσϓϩΠ ᶆϖʔδʹΞΫηε
(JU)VC"DUJPOTͱ(JU)VC1BHFTΛ͏ͱ
Γ͍ͨ͜ͱ ᶃ41"ͷίʔυΛॻ͘ ᶄϦϙδτϦʹ1VTI ᶆϖʔδʹΞΫηε ᶅςετϏϧυσϓϩΠ IUNM DTT KT
IUNM DTT KT $*αʔϏε ϗεςΟϯάαʔϏε
%FNP
αʔόʔϨεͳ41"։ൃͰ(JU)VC"DUJPOT Λϑϧ׆༻ͯ͠Έͨ
Α͋͘ΔΞϓϦͷߏ 3FBDU -BNCEB )551௨৴ 41" "1* ϑϩϯτ41"Ͱ"1*αʔόʔϨεͳߏ
ʢࢀߟʣ/FUMJGZͱ w ੩తϑΝΠϧͷϗεςΟϯάαʔϏε w ϢʔβΞοϓϩʔυ͞Εͨ)5.-ͳͲͷ63-ʹ ΞΫηε͢Δ͜ͱͰ8FCίϯςϯπΛӾཡͰ͖Δ w /FUMJGZ(JU)VC࿈ܞ͕ߴػೳͰઃఆͳ͠Ͱ
ϒϥϯν͝ͱͷϓϨϏϡʔڥ࡞ͳͲ͕Ͱ͖Δ
ʢࢀߟʣ4UPSZCPPLͱ w 41"ͷίϯϙʔωϯτΛ 8FC্Ͱಈ࡞Λ֬ೝͰ͖Α͏ʹ͢ΔϥΠϒϥϦ w ͲΜͳίϯϙʔωϯτ͕༻ҙ͞Ε͍ͯΔ͔ͷѲ ίϯϙʔωϯτͷ͍ํͳͲΛ֬ೝ͢Δ͜ͱ͕Ͱ͖Δ w
੩తϑΝΠϧͱͯ͠ग़ྗͰ͖ΔͨΊϗεςΟϯάαʔϏεʹ σϓϩΠ͢Δ͜ͱͰ8FC্ͰӾཡՄೳͱͳΔ
Α͋͘ΔΞϓϦͷߏ 3FBDU -BNCEB )551௨৴ 41" "1* ·ͣ ͬͪ͜ଆ͔Β
EFWϒϥϯν NBTUFSϒϥϯν ίʔυΛॻ͘ 1SFWJFXڥ ຊ൪ڥ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI ίʔυΛॻ͘ 1SFWJFXڥ ຊ൪ڥ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF 1SFWJFXڥ ຊ൪ڥ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF 1SFWJFXڥ ຊ൪ڥ
ɹɹɹςετ ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF .FSHF 1SFWJFXڥ
ຊ൪ڥ ɹɹɹςετ ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF .FSHF 1SFWJFXڥ
ຊ൪ڥ ɹɹɹςετ ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ ɹɹɹɹɹ4UPSZCPPLΛ ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ
%FNP
Α͋͘ΔΞϓϦͷߏ 3FBDU -BNCEB )551௨৴ 41" "1* ࣍ͬͪ͜ଆ
EFWϒϥϯν NBTUFSϒϥϯν ίʔυΛॻ͘
EFWϒϥϯν NBTUFSϒϥϯν 1VTI ίʔυΛॻ͘
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF ɹɹɹɹɹςετ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF .FSHF ɹɹɹɹɹςετ
EFWϒϥϯν NBTUFSϒϥϯν 1VTI 1VMM3FRVFTU ίʔυΛॻ͘ $SFBUF .FSHF ɹɹɹɹɹςετ
ɹɹɹϏϧυ ɹɹɹɹσϓϩΠ
%FNP
ײ·ͱΊ
(JU)VC"DUJPOTͷػೳʹ͍ͭͯ w ϥΠϒϥϦΛΩϟογϡͰ͖ͳ͍ͷ͕ඍົ w ຖճJOTUBMM͠ͳ͍ͱ͍͚ͳ͍͔Β͔͔࣌ؒΔ w εϖοΫѱ͍ͷ͔࣮ߦ͕͍ w ϩʔΧϧͰಉ͜͡ͱΛΔΑΓѹతʹ͍ w
࠷େ·Ͱฒྻ࣮ߦͰ͖Δ͔Β࣍ୈ͔ʁ w ΩϟογϡͰ͖ͳ͍ฒྻ࣮ߦͰΧόʔͰ͖Δ͔ʁ
(JU)VC"DUJPOTΛͬͯΈͯ w (JU)VCʹ1VTI͢ΔͷͨΓલͷϑϩʔͳͷͰɺ ͦͷྲྀΕͰ$*͕ճΔͷخ͍͠ w ݸਓ։ൃͰ$*Λճ͢ϋʔυϧ͕Լ͕ͬͨؾ͕͢Δ w ͪΌΜͱͨ͠ΞϓϦͰ͏ͳΒ ୯७ʹબࢶ͕૿͑ͨͷ͕خ͍͠ ༻్ʹ͋ͬͨͷΛ͍ͬͯ͘ͱྑͦ͞͏
·ͱΊ w (JU)VC"DUJPOTΛ͏ͱଞͷ$*αʔϏεͱಉ͡Ϩϕϧͷ ϫʔΫϑϩʔΛճͤΔ w ϦϙδτϦʹ(JU)VCΛ͏ͳΒͦͷதͰ$*·Ͱ ݁Ͱ͖ΔͷͰΑͦ͞͏ w ੑೳ໘ͳͲٻΊΔ໘ͰબࢶͷҰͭͱͯ͠಄ʹೖΕ͓ͯ͘ͱ Αͦ͞͏
͋Γ͕ͱ͏͍͟͝·ͨ͠