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 Actionsで多環境の運用管理を簡単にする
Search
Kohei Kojima
November 05, 2025
290
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actionsで多環境の運用管理を簡単にする
開発生産性と開発者体験を改善するための勉強会の資料
https://yumemi.connpass.com/event/371982/
Kohei Kojima
November 05, 2025
More Decks by Kohei Kojima
See All by Kohei Kojima
GitHub ActionsからTerraform Planするお話
k_kojima_yumemi
1
190
Featured
See All Featured
Abbi's Birthday
coloredviolet
3
8.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
330
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Utilizing Notion as your number one productivity tool
mfonobong
4
340
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Un-Boring Meetings
codingconduct
0
330
Transcript
| CONFIDENTIAL (JU)VC"DUJPOTͰଟڥͷӡ༻ཧΛ؆୯ʹ͢Δ !LLPKJNBZVNFNJ
| CONFIDENTIAL 2 • ڥ͕ଟ͋Δࡍͷɺڥ͝ͱͷαʔόʔͷϚελઃఆ͕େม • ఆ • "ࣾ༻ɺ#ࣾ༻ͱ͔Ε͍ͯΔ •
ͦΕͧΕʹ%FW 4UH 1SPE͕ଘࡏ͢Δ • Ϛελઃఆࣗମ֎͔ΒมߋͰ͖Δ • ఆ • %# • 4ͳͲʹஔͨ͠+40/ ՝
| CONFIDENTIAL 3 • ڥ͕ଟ͋Δࡍͷɺڥ͝ͱͷαʔόʔͷϚελઃఆ͕େม • ఆ • "ࣾ༻ɺ#ࣾ༻ͱ͔Ε͍ͯΔ •
ͦΕͧΕʹ%FW 4UH 1SPE͕ଘࡏ͢Δ • Ϛελઃఆࣗମ֎͔ΒมߋͰ͖Δ • ఆ • %# • 4ͳͲʹஔͨ͠+40/ ՝ $*͔Βߋ৽Ͱ͖Δ ΈΛೖΕΑ͏
| CONFIDENTIAL 4 • ө࿙Ε͕ͳͤ͘Δ • өઌͷ͕%FW 4UH 1SPEͱ͓٬༷ͷͷֻ͚ࢉʹͳΔ •
өͷݮʹͭͳ͕Δ • ڥ͝ͱͷઃఆͷࠩΛͳ͍͘͢͠ • ݸͷϑΝΠϧΛશڥͰݟΔΑ͏ʹ͢Εࠩͳͤ͘Δ • (JU)VCͳͲͷ$*Λ༻͢Δ߹ ௨ৗ௨ΓͷϨϏϡʔϓϩηεΛ౿Ή͜ͱ͕Ͱ͖Δ • ͲͷΑ͏ͳઃఆʹͳ͍ͬͯΔ͔ϑΝΠϧͱ͍ͯ͢͠͠ $*͔Βߋ৽͢ΔϝϦοτ Կ͕͏Ε͍͠ͷ͔ ϝϦοτ
| CONFIDENTIAL 5 • $*͕ࣦഊ͢ΔϦεΫʹඋ͑Δඞཁ͕͋Δ • લஈͷϓϩηε͕ωοτϫʔΫΤϥʔͰࣦഊͨ͠ • ߋ৽தʹΤϥʔ͕ൃੜͨ͠ •
FUD • ˠ ߋ৽Λႈʹ͢Δ͜ͱͰϦτϥΠͰ͖ΔΑ͏ରԠ • ߋ৽ॱʹؾΛΔඞཁ͕͋Δ • %&7ˠ 45(ˠ 130%ͷߋ৽ͷதʹɺίʔυߋ৽͕ೖΔͱ%&7Ͱະөͷઃఆ ্͕Ґʹೖͬͯ͠·͏ • ˠ ϒϥϯνΛ͚ΔͳͲͯ͠༧͢Δ $*͔Βߋ৽͢ΔσϝϦοτ Կ͕͏Ε͘͠ͳ͍ͷ͔ σϝϦοτ
| CONFIDENTIAL 6 ࣗಈөͷϓϩηε %&7ڥͷࣗಈөϓϩηεͷྫ มߋΛ࡞͢Δ 13Λ࡞͢Δ
ϨϏϡʔ͠ɺ"QQSPWF͢Δ NBJOʹϚʔδ͢Δ $*͕ൃՐ͠ɺ%FWڥʹࣗಈө͞ΕΔ
| CONFIDENTIAL 7 ࣗಈөͷϓϩηε 13ͷྫ • ߋ৽͕Θ͔Γ͍͢ • ҙਤ͠ͳ͍ߋ৽͕ೖΔ͜ͱΛ͗͘͢ͳΔ
| CONFIDENTIAL 8 ҎԼͷॲཧͰߋ৽͍ͯ͘͠ • ରͷڥͷΞΫηε • ࠓճ"84Λఆ • Ϛελઃఆͷߋ৽ॲཧ
• 4ʹஔͨ͠ϑΝΠϧ • .Z42- $*ͷϓϩηε
| CONFIDENTIAL 9 ରͷڥͷΞΫηε $*ͷϓϩηε "84ͳΒ BXTBDUJPOTDPOGJHVSFBXTDSFEFOUJBMTͷBDUJPOTΛ༻Ͱ͖Δ • ݖݶߋ৽༰ʹ߹ΘͤదͳͷΛઃఆ -
uses: aws-actions/configure-aws-credentials@v4 with: aws-region: 'us-east-1' role-to-assume: ${{ secrets.AWS_IAM_ROLE }} role-session-name: ‘Update' mask-aws-account-id: true retry-max-attempts: 3
| CONFIDENTIAL 10 Ϛελઃఆͷߋ৽ॲཧ $*ͷϓϩηε 4ϑΝΠϧΛΞοϓϩʔυ͢Δ • BXT TTZODͷίϚϯυΛ༻ •
IUUQTEPDTBXTBNB[PODPNDMJMBUFTUSFGFSFODFTTZODIUNM • ͜ΕͰϑΝΠϧΛΞοϓϩʔυ͢Δ • EFMFUFΛ͚ͭΔ͜ͱͰϑΝΠϧͷআͰ͖Δ • ႈͳॲཧͳͷͰΤϥʔ࣌ʹϦτϥΠ͢Ε0, - run: aws s3 sync "./images" "${S3_DESTINATION}/assets/images/"
| CONFIDENTIAL 11 Ϛελઃఆͷߋ৽ॲཧ $*ͷϓϩηε .Z42-ͷߋ৽ • 42-Λ༻ҙ͠ɺ*/4&350/%61-*$"5&,&:61%"5&ͱ%&-&5&Λ༻ • ႈʹد͍ͤͯͨ͘Ί
• खಈͰߋ৽͠ͳ͚Ε42-͕ਖ਼ʹͳΔ INSERT INTO app_versions (os_type, app_version) VALUES ('android', '1.0.0'), ('ios', '1.0.0'), ('android', '1.1.0'), ('android', '2.0.0'), ('ios', '2.0.0') AS inserting ON DUPLICATE KEY UPDATE os_type=inserting.os_type, app_version=inserting.app_version;
| CONFIDENTIAL 12 Ϛελઃఆͷߋ৽ॲཧ $*ͷϓϩηε .Z42-ͷߋ৽ • ࣮ࡍʹ.Z42-ʹॻ͖ࠐΉʹ3%4ͷܦ࿏ཱ͕֬ඞཁ • 1VCMJD*1ͰΞΫηεͰ͖ΔͳΒͦΕͰ0,
• 1SJWBUF*1ͷΈͳΒ౿Έ͕ඞཁ • 44.Ͱ "844UBSU1PSU'PSXBSEJOH4FTTJPO5P3FNPUF)PTU Λ ༻͢ΔͳͲ
| CONFIDENTIAL 13 $*ͷτϦΨʔ ͍ͭ$*Λಈ͔͔͢ ݸʑͷҊ݅ͷੑ࣭ɺϒϥϯνઓུʹΑΔ͕ • %FWϒϥϯνʹ1VTI͞Εͨࡍʹࣗಈө • 4UH
1SPE XPSLGMPX@EJTQBUDI Ͱखಈө • ಛʹσϓϩΠ༻ͷϒϥϯνΛ༻ҙ͍ͯ͠ͳ͍߹खಈ͕͓͢͢Ί • ݸผϒϥϯν͕͋ΔͳΒࣗಈө͕͓͢͢Ί
| CONFIDENTIAL 14 ঝೝઃఆ $*ͷτϦΨʔ • (JU)VC"DUJPOTͷ&OWJSPONFOUTͰಛఆͷ&OWJSPONFOUTʹରͯ͠ঝೝΛඞਢʹ Ͱ͖Δ • ҙਤ͠ͳ͍өΛ͙
| CONFIDENTIAL 15 $*ͷτϦΨʔ γʔέϯε
| CONFIDENTIAL 16 ·ͱΊ $*͔ΒϚελઃఆΛߋ৽͢Δ͜ͱͰ • ө࣌ͷ࿙ΕΛݮΒ͢͜ͱ͕Ͱ͖Δ • ҆ఆͨ͠ӡӦʹͭͳ͕Δ •
ϨϏϡʔͷϓϩηεΛ౿ΊΔ • ্࣭ʹͭͳ͕Δ ͳͲɺੜ࢈ੑ։ൃऀମݧΛ্ͤ͞ΒΕΔ
| CONFIDENTIAL | CONFIDENTIAL 17