Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GitHub Actionsを使って指定した日時にPull Requestをマージしたい #l...
Search
akase244
January 28, 2026
Programming
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actionsを使って指定した日時にPull Requestをマージしたい #lydmeet
「レイヤード Meetup LT会 vol.8」で発表したスライドです。
akase244
January 28, 2026
More Decks by akase244
See All by akase244
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
130
mkpasswd を再実装したくなったので AIに伴走してもらいながら rekey という パスワードジェネレーターを作ってみた #fukuokago
akase244
0
51
Let’s Encryptのフォールバック先について #ツナギメオフライン.8
akase244
0
75
PHPでローカル環境用のSSL/TLS証明書を発行することはできるのか? #phpconkagawa
akase244
0
510
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
connpassのMCPを作ってみた #ツナギメオフライン.6
akase244
0
83
ローカル環境でSSL/TLS証明書を発行して警告表示を出さないようにするアレコレ #ツナギメオフライン.5
akase244
0
110
Bashスクリプトにおけるバッチ処理の同時実行制御について #ツナギメオフライン.4
akase244
0
150
疎通・有効期限を確認するコマンド #ツナギメオフライン.3
akase244
0
110
Other Decks in Programming
See All in Programming
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
190
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
7.2k
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
460
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
1k
Webの地図
yosuke_furukawa
PRO
6
4.5k
一人だけ、Kiroが静止する日
hideg
0
110
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.8k
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
240
AHC070解法紹介
eijirou
0
120
Are APIs Still Relevant in the AI Era?
soyuka
0
230
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
280
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Building Applications with DynamoDB
mza
96
7.2k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
520
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
From π to Pie charts
rasagy
1
370
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Six Lessons from altMBA
skipperchong
29
4.5k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Transcript
GitHub Actionsを使って指定した日時に Pull Requestをマージしたい January 28, 2026. レイヤード Meetup LT会
vol.8
@akase244 <?php var_dump( (new Me()) ->WebApplicationEngineer() ->InfrastructureEngineer() ); January 28,
2026. レイヤード Meetup LT会 vol.8
2025/11/8に開催したPHPカンファレンス福岡の主催・運営 2025年で10周年(全8回の開催) January 28, 2026. レイヤード Meetup LT会 vol.8
January 28, 2026. レイヤード Meetup LT会 vol.8 GitHub Actionsを使って指定した日時に Pull
Requestをマージしたい?
「ツナギメエフエム」というポッドキャストを配信 https://tsunagi.me/ https://x.com/tsunagimefm January 28, 2026. レイヤード Meetup LT会 vol.8
ツナギメエフエム(第89回:2024/05/17公開) • 吉竹さん(株式会社レイヤード) • 森さん(株式会社レイヤード) January 28, 2026. レイヤード Meetup
LT会 vol.8
• 山畑さん(株式会社レイヤード) • ノンさん(チャリチャリ株式会社) • GAOさん(株式会社Fusic) ツナギメエフエム(第107回:2024/09/18公開) January 28, 2026.
レイヤード Meetup LT会 vol.8
January 28, 2026. レイヤード Meetup LT会 vol.8 「ツナギメエフエム」のシステム構成
Spotify for CreatorsでPodcastを配信 January 28, 2026. レイヤード Meetup LT会 vol.8
tsunagi.me というドメインでwebページを公開 January 28, 2026. レイヤード Meetup LT会 vol.8
GitHubでwebページ用のリポジトリを管理 January 28, 2026. レイヤード Meetup LT会 vol.8
Cloudflare Pagesでwebページを運用 January 28, 2026. レイヤード Meetup LT会 vol.8
GitHubでPull RequestをマージするとCloudflare Pagesに自動デプロイ January 28, 2026. レイヤード Meetup LT会 vol.8
January 28, 2026. レイヤード Meetup LT会 vol.8 現状の課題 • Podcastの配信とwebページの公開のタイミングは非連動の状態。
• Spotify for Creatorsは指定日時に配信が可能。 • webページはSpotify for Creators側の配信が行われたことを確認し てからPull Requestを手動でマージしている。
January 28, 2026. レイヤード Meetup LT会 vol.8 https://tsunagi.me/ep138/ 年末に 第138回
を公開した頃に気づきました
January 28, 2026. レイヤード Meetup LT会 vol.8 これは手間(トイル)だな、と
January 28, 2026. レイヤード Meetup LT会 vol.8 今回実現したいこと • Spotify
for CreatorsでPodcastを指定した日時に配信。 • GitHubのPull Requestを公開日時の数分後に自動マージしたい。
January 28, 2026. レイヤード Meetup LT会 vol.8 どうやって実現するか • Pull
Reqeest にラベル「merge-at」を付与。 • ラベル「merge-at」のDescriptionに公開日時を YYYY-MM-DD hh:mm 形式で入力。 • GitHub Actions のワークフローを5分毎に実行。 • Pull Request にラベル「merge-at」が付与されていて、かつ、GitHub Actions の実行日時がラベルのDescriptionに入力されている日時を 過ぎていたらマージする。
January 28, 2026. レイヤード Meetup LT会 vol.8 同じようなことをやってる人はいるのか?
指定日時にプルリクをマージするなら:Merge Schedule【GitHub Actions】 January 28, 2026. レイヤード Meetup LT会 vol.8
https://zenn.dev/orch_canvas/articles/gh-actions-merge-schedule
アクションの名前もそのまんま January 28, 2026. レイヤード Meetup LT会 vol.8 https://github.com/gr2m/merge-schedule-action
Pull Requestのコメントにマージ日時を指定する方式 January 28, 2026. レイヤード Meetup LT会 vol.8
January 28, 2026. レイヤード Meetup LT会 vol.8 良さそう
January 28, 2026. レイヤード Meetup LT会 vol.8 だがしかし
January 28, 2026. レイヤード Meetup LT会 vol.8 公式提供ではない他人が作った • Vagrantfile
• Dockerfile • compose.yaml / docker-compose.yaml • Ansible Playbook • Terraform( .tfファイル) • GitHub Actions はセキュリティ的な観点で信頼してはいけないと教育されてきた
January 28, 2026. レイヤード Meetup LT会 vol.8 実装してみました
January 28, 2026. レイヤード Meetup LT会 vol.8 PRに「merge-at」のラベルを付与する
January 28, 2026. レイヤード Meetup LT会 vol.8 5分毎に動いてるっぽい
January 28, 2026. レイヤード Meetup LT会 vol.8 勝ったな?
January 28, 2026. レイヤード Meetup LT会 vol.8 そんなことなかった • 8分後
• 12分後 • 20分後 • 16分後 • 12分後 • 26分後
January 28, 2026. レイヤード Meetup LT会 vol.8 scheduleトリガー https://docs.github.com/ja/actions/reference/workflows-and-actions/events-that-trigger-workflows#schedule
January 28, 2026. レイヤード Meetup LT会 vol.8 「期待どおりの時間に動くと思うなよ」 と、書いてあります
January 28, 2026. レイヤード Meetup LT会 vol.8 プロに相談
GitHub Actionsのワークフローを正確なスケジュールで実行する January 28, 2026. レイヤード Meetup LT会 vol.8 https://tsubalog.hatenablog.com/entry/2025/12/29/125025
January 28, 2026. レイヤード Meetup LT会 vol.8 どうやって実現しているのか? • Azure
Logic Apps ワークフローのスケジュール トリガーで定期的に実 行。 • GitHub Actions の workflow_dispatchトリガーを REST API で呼び出 す。
January 28, 2026. レイヤード Meetup LT会 vol.8 先程のやり方を参考に
January 28, 2026. レイヤード Meetup LT会 vol.8 アーキテクチャを変更 • 変更前
◦ GitHub Actions の scheduleトリガーで定期的に実行 • 変更後 ◦ Amazon EventBridge で定期的に実行。 ◦ AWS Lambda で GitHub Actions の workflow_dispatchトリガーを 呼び出す。
January 28, 2026. レイヤード Meetup LT会 vol.8 勝ったな?
January 28, 2026. レイヤード Meetup LT会 vol.8 5分毎にちゃんと動いてるような。。。 • 5分後
• 5分後 • 5分後 • 5分後 • 5分後 • 5分後
January 28, 2026. レイヤード Meetup LT会 vol.8 勝ったな?
January 28, 2026. レイヤード Meetup LT会 vol.8 謎のメールを受信
January 28, 2026. レイヤード Meetup LT会 vol.8 98回もfailed?
January 28, 2026. レイヤード Meetup LT会 vol.8 何が起こった!?
January 28, 2026. レイヤード Meetup LT会 vol.8 Actionsの無料使用枠「2,000分/月」を超えてた
January 28, 2026. レイヤード Meetup LT会 vol.8 しかし、解せない
January 28, 2026. レイヤード Meetup LT会 vol.8 Actionsに掛かった時間は1回につき10秒程度 • 9秒
• 8秒 • 10秒 • 8秒 • 12秒 • 10秒 • 9秒
January 28, 2026. レイヤード Meetup LT会 vol.8 1ヶ月に何分使う計算か? • 1回の実行に約10秒
• 5分毎に1回なので1時間に12回実行(= 2分/時) • 1日に24回実行(= 48分/日) • 1ヶ月に約30回実行(= 1,440分/日) いや、2,000分は超えてなくね???
January 28, 2026. レイヤード Meetup LT会 vol.8 と思ったら
January 28, 2026. レイヤード Meetup LT会 vol.8 ちょっと待って、途中から実行の間隔が。。。 • 1分後
• 2分後 • 2分後 • 1分後 • 2分後 • 2分後
January 28, 2026. レイヤード Meetup LT会 vol.8 どうしてこうなった?
January 28, 2026. レイヤード Meetup LT会 vol.8 いずれかの設定ミスかバグかリトライでは?と予想 • GitHub
Actions • Amazon EventBridge • AWS Lambda
January 28, 2026. レイヤード Meetup LT会 vol.8 Amazon CloudWatch Logs
を確認
January 28, 2026. レイヤード Meetup LT会 vol.8 タイムアウトが発生して同じRequestsIdで複数回実行されている
January 28, 2026. レイヤード Meetup LT会 vol.8 Amazon EventBridge の再試行ポリシーが未設定の場合は
デフォルト回数(最大185 回)が適用されるっぽい?
January 28, 2026. レイヤード Meetup LT会 vol.8 対策 • AWS
Lambda のタイムアウト時間が3秒(デフォルト値)は短すぎたの で30秒に変更 • Amazon EventBridge の実行回数を5分毎から10分毎に変更。 • Amazon EventBridge の再試行ポリシーの「最大再試行回数」を明示 的に「1回」に設定する。
January 28, 2026. レイヤード Meetup LT会 vol.8 勝ったな?
January 28, 2026. レイヤード Meetup LT会 vol.8 制限が解除されるまであと8日
January 28, 2026. レイヤード Meetup LT会 vol.8 勝てなかった
January 28, 2026. レイヤード Meetup LT会 vol.8 • GitHub Actions
の scheduleトリガーはベストエフォート実行。 • AWS Lambda のデフォルトタイムアウト時間(3秒)に注意。 • Amazon EventBridge はエラーが発生すると自動で再試行する。 • GitHub Actions の無料枠を超えたら fail する仕様に感謝。(クラウド破 産するところだった) まとめ
January 28, 2026. レイヤード Meetup LT会 vol.8 「8」は重ねられてましたか?
January 28, 2026. レイヤード Meetup LT会 vol.8 最後に宣伝
キャッチアップさんの会場で開催します https://fukuokaphp.connpass.com/event/380488/ January 28, 2026. レイヤード Meetup LT会 vol.8
レイヤードさんの会場で開催します https://tsunagime-offline.connpass.com/event/381345/ January 28, 2026. レイヤード Meetup LT会 vol.8
Thanks! Have a good programming!! January 28, 2026. レイヤード Meetup
LT会 vol.8