Githubアクション、cron、およびwebhooksでNetLifyビルドをスケジュールします
指示
あなたのレポにこのGithubアクションを加えてください
.github/workflows/schedule-netlify-build.yml
# .github/workflows/schedule-netlify-build.yml
name: Schedule Netlify Build
on:
schedule:
# Customize schedule expression at crontab.guru
# This one runs at 800 UTC daily
- cron: "0 8 * * *"
jobs:
build:
name: Call Netlify build hook
runs-on: ubuntu-latest
steps:
- name: Curl request
run: curl -X POST -d {} #YOUR_BUILD_HOOK_URL#
あなたのcronスケジュールを調整する
ビルドスケジュールの決定と使用crontab.guru cronスケジュール式として記述する.
- # This one runs at 800 UTC daily
- - cron: "0 8 * * *"
+ # This one runs every 6 hours
+ - cron: "* */6 * * *"
netlifyビルドフックを生成する
Netlifyビルドフックは1つの機能を持つウェブフックです:再構築されたときにサイトをビルドします.任意
POST
netlifyビルドフックへの要求はビルドをトリガーします.新しいビルドフックをここで生成します.
「サイトの設定」「ビルド&展開」「持続配備」「ビルドフック」.
イメージからNetlify build hooks documentation
フックを命名しなければなりません.名前があなたにユニークで記述的である限り、多くの違いを作りません.
Githubアクションにビルドフックをペーストします
- run: curl -X POST -d {} #YOUR_BUILD_HOOK_URL#
+ run: curl -X POST -d {} https://api.netlify.com/build_hooks/#GENERATED_BUILD_HOOK_URL
プッシュ!
新しいワークフローをリポジトリにプッシュし、アクションタブを見ます.予定通り、スケジュールされた仕事が見えます.
ここで何を期待するかhttps://github.com/LunchDevCommunity/community-calendar/actions
エクストラクレジット
ファンシーを取得し、誰もあなたのビルドフックをGitHub Action environment variables .
物語
ダイナミックサイト静的ビルド
でlunch.dev , 私たちはcalendar of events インEleventy (滑らかな静的サイトジェネレータ).
イベントは、過去と過去のイベントの見出しの日付に基づいて表示されます.ElegeMenが静的サイトを生成するので、その洗剤はビルド時に起こります.
私たちがデータを新鮮にしたいならば、我々は少なくとも1日につき一度サイトを手動で再構築しなければなりません.
NetLifyビルドフックを使用して、我々はスケジュールでそれらのビルドを自動化することができます!
cronジョブを実行するサービスがたくさんあります.Githubアクションベースの解決策について私が好きなのは、すべてがREPOに保たれているということです.ソースを維持することができますし、プロジェクトの残りの部分を文書化!
資源
schedule
event Reference
この問題について(Githubアクション、cron、およびwebhooksでNetLifyビルドをスケジュールします), 我々は、より多くの情報をここで見つけました https://dev.to/chantastic/schedule-netlify-builds-with-github-actions-chron-and-webhooks-17n7テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol