From c53b735e7af78df46f68075dc57716f0c98b95d9 Mon Sep 17 00:00:00 2001 From: Norbert Date: Fri, 30 Jun 2023 10:46:03 +0200 Subject: [PATCH] ping for healtcheck --- README.md | 4 ++++ auto_update_github_action.yml | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/README.md b/README.md index 43afebb..5fb8ed5 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,8 @@ Cloudflare Gateway allows you to create custom rules to filter HTTP, DNS, and ne - Automatically cleans up filter lists: removes duplicates, invalid domains, comments and more - Works fully unattended - Whitelist support, allowing you to prevent false positives and breakage by forcing trusted domains to always be unblocked. +- Optional health check: Sends a ping request ensuring continuous monitoring and alerting for the workflow execution. + ## Usage @@ -53,6 +55,8 @@ Please note that the GitHub Action downloads the recommended blocklists and whit - `CLOUDFLARE_ACCOUNT_ID`: Your Cloudflare account ID - `CLOUDFLARE_ACCOUNT_EMAIL`: Your Cloudflare account email - `CLOUDFLARE_LIST_ITEM_LIMIT`: The maximum number of blocked domains allowed for your Cloudflare Zero Trust plan. Use 300000 for the free plan or if you're unsure. +- `PING_URL`: /Optional/ Your https ping URL + 3. Create a new file in the repository named `.github/workflows/main.yml` with the contents of `auto_update_github_action.yml` found in this repository. The default settings will update your filters every week at 3 AM UTC. You can change this by editing the `schedule` property. 4. Enable GitHub Actions in your repository settings. diff --git a/auto_update_github_action.yml b/auto_update_github_action.yml index 747b937..41dadfe 100644 --- a/auto_update_github_action.yml +++ b/auto_update_github_action.yml @@ -56,3 +56,8 @@ jobs: CLOUDFLARE_ACCOUNT_EMAIL: ${{ secrets.CLOUDFLARE_ACCOUNT_EMAIL }} CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} CLOUDFLARE_LIST_ITEM_LIMIT: ${{ secrets.CLOUDFLARE_LIST_ITEM_LIMIT }} + + - name: Send ping request + if: env.PING_URL != '' + run: | + node -e "var https=require('https');https.get('${{ secrets.PING_URL }}').on('error',err=>console.log('Ping failed: '+err));"