Automatické zálohování n8n workflow
Když jsem s n8n začínal, pln nadšení jsem si nakreslil krásné workflow, propracovaného AI agenta s vyladěným promptem, nastavil řádně následné zpracování dat ... abych neuvážlivou akcí o vše přišel. Od té doby u "hotových" workflow řeším pravidelné zálohování.

Vzhledem k tomu, že hodně workflow u mě vzniká jako rychlé
Pro výběr těch, které chci zálohovat, používám jednoduchý seznam v Code nodu:
return [ { "workflow_id": "WZtd9GXz80AHVTU7", "workflow_name": "Backup/Backup" }, { "workflow_id": "v9rZuLFj19fcW5hW", "workflow_name": "Backup/Save Backup File" }, { "workflow_id": "4P8hZqz4A1JDJXmu", "workflow_name": "Notebook/New Issue" }, { "workflow_id": "R1cqhZijzZBQ3Ofy", "workflow_name": "Utilities/GitHub/Create Pull Request" }, { "workflow_id": "UKoRTUl3sh7pOun6", "workflow_name": "Utilities/GitHub/Create Branch" }, { "workflow_id": "Q9Uj3PdEqc46gwHL", "workflow_name": "Utilities/GitHub/Add Labels" }];Hlavní logika pro zálohu jě následně umístěna v odděleném subworkflow, kde pomocí n8n API načtu definici daného workflow a jeho obsah uložím do GitHub repozitáře.

Jako drobnou úpravu k tomu, aby zálohované workflow bylo i lidsky čitelné a diff měl nějakou vypovídající hodnotu, zformátuji před uložením JSON do čitelné podoby s odsazením.
{{ JSON.stringify($json, null, 2) }}Na závěr se mi ještě vygeneruje přehled všech zálohovaných workflow a uloží do README.md, abych na první dobrou viděl, zda nedošlo u některých workflow k chybě během zálohování.

