Node-RED projects is een manier om de flows te beheren door deze in een GIT repository te plaatsen en alle wijzigingen bij te houden. Version Control is hiermee mogelijk en naast een locale repository kan ook gemerged worden met een remote repository op bv. GitLab of GitHub.
Om Node-RED Projects te kunnen gebruiken dient een aanpassing in /addon_configs/a0d7b954_nodered/settings.js gemaakt te worden, namelijk de editorTheme -> projects dient op ’true’ gezet te worden:
editorTheme: { projects: { enabled: true } },
Hierna Node-RED herstarten en er verschijnt een Projects Welcome scherm
Je kunt nu gewoon Node-RED gebruiken zoals je gewend was door voor ‘Not right now‘ te kiezen, maar Version Control wordt aangemaakt met een nieuw project waarbij de huidige flows bewaard blijven en (by default) meegenomen in het nieuwe project. Dus… ‘Create project‘
Vul een naam en email adres in en kies voor ‘Next‘
Vervolgens wordt gevraagd om een ‘Project name’ en eventueel een omschrijving in te vullen, en weer ‘Next‘
Hier kunnen de project bestanden ingevuld worden, standaard is dat de flows.json waar je huidige flows in staan dus die kun je meenemen in dit project. ‘Next‘
Vervolgens zijn de credentials aan de beurt en we houden hier de huidige key. We kunnen nu het prject aanmaken met ‘Create project‘
en ‘Done‘ het project is aangemaakt.
Projecten worden getoond in de Informatie optie van Node-RED (rechtsboven) en er is tevens een GIT optie bijgekomen tussen Help en Debug.
Hier vind je de gewijzigde bestanden in de lokale GIT repo, uiteraard is dat als eerste het bestand flows.json. Mocht dit bestand (nog) niet hier staan, wijzig dan één van je flows en Deploy, dan zal flows.json hier in komen te staan.
en door met de muis hier op te gaan verschijnt een ‘+‘ aan de rechterkant om dit bestand te ‘comitten‘:
Zodra je een ‘commit’ doet verschijnt dit bestand onderaan bij de optie ‘Changes to commit‘
En door voor ‘commit‘ te kiezen wordt gevraagd om een omschrijving van de commit (welke wijzigingen gedaan zijn) en kies voor ‘Commit‘ om deze daadwerkelijk door te voeren.
Onderaan vind je nu de ‘Commit History‘
Een remote GIT repository kan toegevoegd worden om de lokale repo te mergen met de remote repo en zodoende een mogelijkheid te hebben om een ‘off-site’ backup te creëren.
Op de Info optie van het project kies je voor de 3 puntjes aan de rechterkant om naar de Project Settings te gaan. Hier kun je bij ‘Settings’ een Git Remote opgeven.
Hierna vind je de optie om de remote branch te gebruiken in de GIT optie bij de Commit History:
Hiermee kun je ‘pushen‘ en/of ‘pullen‘
en daarmee is de remote GIT bijgewerkt. Wellicht wordt gevraagd om een username/password voor de remote repo en daar zul je dan een token voor kunnen gebruiken of SSH-keys instellen in je remote repo. Raadpleeg hiervoor de documentatie voor GitLab of GitHub.