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
退屈なことはバッチにやらせよう
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
mako_makok
February 24, 2021
Programming
1
630
退屈なことはバッチにやらせよう
mako_makok
February 24, 2021
Tweet
Share
More Decks by mako_makok
See All by mako_makok
Kotlinにおける型の世界と エラーハンドリング / Type World and Error Handling in Kotlin
makomakok
3
1.2k
Javaでも使えるKotlin OSSを目指すためのkotlin.jvmの利用とインターフェース設計/Use of kotlin.jvm and interface design for Kotlin OSS that can also be used in Java
makomakok
0
930
Slack_API_Wrapper_BoltでBotを爆速開発.pdf
makomakok
0
350
Firebase + BoltではじめるSlackアプリ開発
makomakok
0
15k
Other Decks in Programming
See All in Programming
おれのAgentic Coding 2026/03
tsukasagr
1
120
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
190
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.2k
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
160
Tamach-sre-3_ANDPAD-shimaison93
mane12yurks38
0
200
RailsのValidatesをSwift Macrosで再現してみた
hokuron
0
140
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
170
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
440
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
220
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
250
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
270
First, design no harm
axbom
PRO
2
1.1k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
360
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Producing Creativity
orderedlist
PRO
348
40k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
260
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
160
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Leo the Paperboy
mayatellez
5
1.6k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.4k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
260
Transcript
退屈なことは バッチにやらせよう ~ Github Actions編 @mako_makok 2021/02/24 生産性向上 Tips LT会
自己紹介 • 名前: 小林允(@mako_makok) • 所属: 株式会社ラクス • 楽楽勤怠のバックエンドエンジニア •
たまにフロントエンドもやる • Spring Boot/Java/Kotlin/TypeScript/React
生産性を上げるためには • 生産性を上げるためにはやらなくていいことはやらないようにする • ルーチンは自動化しよう ◦ 毎日の天気を調べる、新刊の情報を収集する、etc... • 自動化といえばバッチ
どのscheduler使うか問題 • Rundeck • 各種CI ◦ Github Actions ◦ Circle
CI ◦ Jenkins • cron • heroku scheduler • FaaS ◦ Lambda ◦ Cloud Functions and more...
どのscheduler使うか問題 • サーバー立てるのはカロリーが高すぎる • できればサーバレスでやりたい
どのscheduler使うか問題 • Rundeck • 各種CI ◦ Github Actions ◦ Circle
CI ◦ Jenkins • cron • heroku scheduler • FaaS ◦ Lambda ◦ Cloud Functions and more...
どのscheduler使うか問題 heroku scheduler
どのscheduler使うか問題 • Rundeck • 各種CI ◦ Github Actions ◦ Circle
CI ◦ Jenkins • cron • heroku scheduler • FaaS ◦ Lambda ◦ Cloud Functions and more...
どのscheduler使うか問題 • 定期実行するだけならGithub Actions と Circle CIどっちでもいい ◦ よりお手軽なGithub Actions
• Lambda と Cloud Functions ◦ FirestoreなどのNoSQLを利用できるので永続化層が必要そうな バッチもかける ◦ CIツールよりも豊富なトリガー
天気を通知する • ユーザー数1(自分) • 天気を取得するAPIを叩く • それを整形してSlackに通知 • 2API叩くだけなのであんまり複雑なことしなくてもできそう •
Github Actions を利用する
Github Actionsの利用手順 • Repositoryに.github/workflows/*.ymlを配置するだけ
Github Actionsの利用手順 • Repositoryに.github/workflows/*.ymlを配置するだけ 毎日9時に実行
Github Actionsの利用手順 • Repositoryに.github/workflows/*.ymlを配置するだけ 見えちゃダメそう なやつはsecret に
Github Actionsの利用手順 webpack && node dist/main.js
Github Actionsのメリット • リポジトリで管理できる • cronを実行するだけだったらあまり難しい設定はいらない • 好きな言語でかける • サーバー管理がいらない
• ちょっとしたスクリプトを定期実行したいケースに向いてる • もちろんCI, CDにも https://github.com/mako-makok/weather-notificator
まとめ • ちょっとしたバッチなどはCIツール使うと便利 • 複雑なことしたくなったらFaaSを検討してみてもいいかも