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
73
GitHubだけでWebフロントエンドのCI/CDをまわしてみた
ozaki25
October 01, 2019
Tweet
Share
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
140
20210525_react_next.pdf
ozaki25
0
100
Webフロントエンドはなぜ複雑なのか
ozaki25
1
98
utility first css
ozaki25
0
67
20201225_how_to_learn_technology.pdf
ozaki25
0
130
20201124_blitz.pdf
ozaki25
0
67
20200727_liff_app.pdf
ozaki25
1
600
20200721_web_vitals.pdf
ozaki25
0
80
20200624_web_otp_api.pdf
ozaki25
1
100
Other Decks in Technology
See All in Technology
組み込みアプリパフォーマンス格闘記 検索画面編
wataruhigasi
1
170
podman_update_2024-12
orimanabu
1
290
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
27
24k
効率的な技術組織が作れる!書籍『チームトポロジー』要点まとめ
iwamot
2
130
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
290
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
300
クレカ・銀行連携機能における “状態”との向き合い方 / SmartBank Engineer LT Event
smartbank
2
110
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
160
メンタル面でもつよつよエンジニアになる/登壇資料(井田 献一朗)
hacobu
0
130
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
240
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
19
5.7k
12 Days of OpenAIから読み解く、生成AI 2025年のトレンド
shunsukeono_am
0
420
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
What's in a price? How to price your products and services
michaelherold
244
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
1
110
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Cult of Friendly URLs
andyhume
78
6.1k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
It's Worth the Effort
3n
183
28k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
RailsConf 2023
tenderlove
29
940
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 ੑೳ໘ͳͲٻΊΔ໘ͰબࢶͷҰͭͱͯ͠಄ʹೖΕ͓ͯ͘ͱ Αͦ͞͏
͋Γ͕ͱ͏͍͟͝·ͨ͠