Get notified on Slack when a new version of your favorite repositories is released. Using Cloudflare Workers, CRON Triggers, and KV storage.
You'll need a Cloudflare Workers account with
- A workers domain set up
- The Workers Bundled subscription ($5/mo)
Also, prepare the following secrets
- Cloudflare API token with
Edit Cloudflare Workers
permissions - GitHub API personal token
- Slack incoming webhook
You can either deploy with Cloudflare Deploy Button using GitHub Actions or deploy on your own.
-
Click the button and follow the instructions, you should end up with a clone of this repository
-
Navigate to your new GitHub repository > Settings > Secrets and add the following secrets:
- Name: CF_API_TOKEN (should be added automatically) - Name: CF_ACCOUNT_ID (should be added automatically) - Name: SECRET_SLACK_WEBHOOK_URL - Value: your-slack-webhook-url - Name: SECRET_GITHUB_TOKEN - Value: your-porsonal-read-github-token
-
Adjust index.js to list all of your repositories you want to watch
const githubRepositories = [ 'eidam/cf-workers-github-releases', 'cloudflare/wrangler', 'cloudflare/wrangler-action', '...', ]
-
Push to
main
branch to trigger the deployment -
🎉
You can clone the repository yourself and use Wrangler CLI to develop/deploy, extra list of things you need to take care of:
- create KV namespace and add the
KV_GITHUB_RELEASES
binding to wrangler.toml - create Worker secrets
SECRET_SLACK_WEBHOOK_URL
SECRET_GITHUB_TOKEN
-
Max 25 repositories to watch, due to the limit of subrequests Cloudflare Worker can make (50).
The plan is to support up to 49 by sending only one Slack notification per scheduled run.