Skip to main content

Automate n8n updates with version checking and Portainer webhook

Workflow preview

Automate n8n updates with version checking and Portainer webhook preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

Overview

πŸ”„ 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.