Automate n8n Updates with Version Checking and Portainer Webhook

πŸ”„ Purpose of the Workflow:
The Update-N8N workflow is designed to automatically trigger a (Portainer) webhook to update an N8N container, but only if a new version of N8N is available.

βš™οΈ Detailed Workflow Steps:
πŸ•’ Scheduled Trigger
The workflow runs every 16 hours at minute 8 using a schedule trigger node.

🌐 Fetch Latest N8N Version
It sends an HTTP GET request to https://registry.npmjs.org/n8n/latest to retrieve the latest published N8N version from the npm registry.

πŸ“ˆ Get Currently Running Local Version
Another HTTP GET request is sent to https://127.0.0.1/metrics (likely the Prometheus metrics endpoint of the local N8N instance) to extract the currently installed N8N version.

🧠 Version Comparison
The workflow compares the local version (parsed from metrics) with the latest available version.

πŸ“¬ Trigger Portainer Webhook
If the versions do not match (i.e., an update is available), a POST request is sent to a webhook URL, which might be a Portainer webhook that redeploys or updates the N8N container/stack.

βœ… Key Benefits:
No manual checks or updates needed.

Triggers only when a new version is available.

Integrates seamlessly with Portainer via webhook.

Secure configuration, e.g., disallowing unauthorized TLS certs for external requests.