@dev0ph3r/netlify-plugin-cloudflare v1.0.0
Cloudflare Cache Purge Plugin for Netlify
This Netlify plugin allows you to automatically purge Cloudflare's cache for one or more zones after a successful build. It ensures your users always see the latest content without needing manual cache clearing.
Installation
To install the plugin in your Netlify project, follow these steps:
Navigate to your Netlify project directory.
Install the plugin as a dependency using npm or yarn:
npm install @dev0ph3r/netlify-plugin-cloudflareor
yarn add @dev0ph3r/netlify-plugin-cloudflareAdd the plugin to your
netlify.tomlconfiguration file:
[[plugins]]
package = "@dev0ph3r/netlify-plugin-cloudflare"Configuration
To use this plugin, you need to configure two environment variables in your Netlify project:
Required Environment Variables
CLOUDFLARE_API_TOKEN
- A valid API token for accessing Cloudflare's API. ^1: (How to create an API token in Cloudflare: https://developers.cloudflare.com/fundamentals/api/get-started/create-token/)
* Ensure the token has permission to purge the cache for the specified zones.CLOUDFLARE_ZONE_IDS
A comma-separated list of Cloudflare Zone IDs for which the cache should be purged.
Example:
zone_id_1,zone_id_2,zone_id_3
Adding Environment Variables
Navigate to Site configuration > Environment variables in the Netlify UI.
Add the following variables:
CLOUDFLARE_API_TOKENCLOUDFLARE_ZONE_IDS
Save your changes.
How It Works
Pre-Build Validation:
Before the build starts, the plugin checks if the required environment variables are configured correctly.
If any variable is missing or invalid, the build fails with a descriptive error message.
Post-Build Cache Purge:
After a successful build, the plugin triggers a cache purge for each zone specified in
CLOUDFLARE_ZONE_IDS.Logs provide details on the success or failure of the purge for each zone.
Example Logs
Successful Purge
Cloudflare configuration is valid. 2 zone(s) will be purged.
Triggering Cloudflare cache purge for 2 zone(s).
Cloudflare cache purged successfully for zone zone_id_1.
Cloudflare cache purged successfully for zone zone_id_2.
Cloudflare cache purged successfully for all zones.
Failure Example
Cloudflare configuration is valid. 2 zone(s) will be purged.
Triggering Cloudflare cache purge for 2 zone(s).
Cloudflare cache couldn't be purged for zone zone_id_1. Status: 403 Forbidden. Details: {"success":false,"errors":[{"code":10000,"message":"Invalid token"}]}.
Cache purge failed for 1 zone(s): zone_id_1
Troubleshooting
Missing or Invalid API Token:
Ensure the
CLOUDFLARE_API_TOKENenvironment variable is set and valid.Verify the token has the required permissions to purge caches.
Invalid Zone IDs:
Check that
CLOUDFLARE_ZONE_IDScontains valid Zone IDs separated by commas.Ensure the Zone IDs belong to the account associated with the API token.
Check Logs:
- Use the logs provided during the build and purge process to identify issues.
License
This plugin is licensed under the MIT License. See the LICENSE file for details.
Contributions
Contributions are welcome! Feel free to open an issue or submit a pull request with improvements or fixes.
1 year ago