Dit is een gastartikel geschreven door Peter Jaap Blaakmeer van elgentos
Hypernode Brancher is een tool ontwikkeld door Hypernode waarmee developers een exacte kopie van de productie (of development) Hypernode kunnen maken. Er is een API beschikbaar om de duplicatie van een Hypernode te automatiseren, waardoor het eenvoudig is om Brancher nodes te implementeren in een CI/CD-pijplijn.
Hypernode bood altijd al de mogelijkheid om een staging omgeving op de productie Hypernode te hosten, maar dit vonden we altijd te riskant voor de live webshop. Door de geïsoleerde omgeving die Hypernode Brancher biedt, wordt het risico op wijzigingen in de database of code van de live omgeving geëlimineerd. Dit maakt het veel veiliger om nieuwe functies te testen, zowel voor ons als ontwikkelingsbureau, als voor de klant.
Het oude implementatieproces van elgentos
Bijna 5 jaar geleden besloten we bij elgentos een CI/CD-pijplijn te bouwen waarmee we wegwerp-testomgevingen konden maken. Dit stelt ons in staat om aan een functie te werken in een aparte Git-branch en die Git-branch naar een volledig geïsoleerde omgeving te pushen.
De afgelopen jaren hebben we virtuele machines op het Google Cloud Platform gebruikt om een kopie van de webshop op te zetten die zo veel mogelijk lijkt op de live omgeving. We deden dit met behulp van de Hypernode Docker-container die door Hypernode werd geleverd.
Onze pijplijn maakt een virtuele machine aan, start de Docker-container en pusht de code in de Git-branch naar die instantie. Vervolgens importeert het een geanonimiseerde database (gemaakt met onze tool Masquerade) en maakt de webshop beschikbaar voor de buitenwereld. De klant wordt automatisch op de hoogte gebracht van een implementatie, inclusief een URL en een willekeurig gegenereerde gebruikersnaam/wachtwoord combinatie voor de beheerder. Nadat de functie is goedgekeurd en het merge-verzoek is samengevoegd, wordt de omgeving automatisch verwijderd.
De overstap naar Hypernode Brancher en de voordelen die hierbij kwamen kijken
De afgelopen maanden zijn we begonnen met het migreren van onze klanten naar het gebruik van Hypernode Brancher in plaats van de Google Cloud virtuele machines. Het grootste voordeel hiervan is dat de testomgeving een exacte kopie is van de originele Hypernode. Waar de eerder gebruikte Docker-container nog wat eigenaardigheden had en bepaalde tools en services miste die beschikbaar waren op de echte Hypernodes, bieden de Hypernode Brancher-omgevingen alle functies die de productie Hypernode heeft.
Dit stelt onze developers in staat om hun code te testen in een realistische omgeving zonder de live omgeving te beïnvloeden. Het helpt hen ook om potentiële problemen te identificeren voordat ze naar de live Hypernode worden geïmplementeerd, waardoor downtime wordt verminderd en ervoor wordt gezorgd dat eventuele wijzigingen veilig en beveiligd zijn. Het hebben van een exacte kopie van de live omgeving maakt het voor onze developers ook gemakkelijker om bugs en fouten te repliceren, zodat ze deze sneller kunnen oplossen.
Het maken van een nieuwe Brancher-node duurt ongeveer 5 minuten, wat sneller is dan ons vorige proces van het maken van een virtuele machine en het pushen van alle gegevens naar die omgeving. Dus als extra voordeel hebben we een snellere CI/CD-pijplijn.
De implementatie van Magento op de Hypernode vereist ook veel minder regels code, aangezien we alleen de productie-instellingen hoeven aan te passen aan de review omgeving instellingen. Deze configuratie hoeven we dus niet meer zelf op te zetten. Een ander voordeel voor ons is dat de administratieve taak om de klant in rekening te brengen voor de review-omgevingen nu wordt gedaan door Hypernode. Hypernode Brancher wordt per minuut gefactureerd, dus hoe sneller een klant zijn nieuwe functionaliteit test, hoe minder hij hoeft te betalen. Een geweldige stimulans, als je het aan ons vraagt ;-).
Werken met Hypernode Brancher
Om Hypernode Branchers te listen, maken en verwijderen, kun je inloggen in de productie Hypernode en daar de hypernode-brancher-tool gebruiken. Je kunt ook onze CLI-tool die is geschreven in PHP (https://github.com/elgentos/hypernode-api-cli) gebruiken om deze acties vanaf je lokale machine uit te voeren. Je moet toegang tot de CLI inschakelen in My Hypernode en de Hypernode API-token verkrijgen die je kunt vinden op je productie Hypernode in /etc/hypernode/app.json.
CI/CD opzetten voor jouw e-commerce bureau
Als je een e-commerce bureau runt, Gitlab gebruikt en geïnteresseerd bent in het implementeren van deze CI/CD-pijplijn met ondersteuning voor Hypernode Brancher, heb je geluk, want wij kunnen dit voor je opzetten. Voor meer informatie, zie: https://magecicd.com.
Over elgentos
Elgentos is een klein bureau met een sterke focus op het bouwen van snelle B2B e-commerce oplossingen met behulp van Magento. Elgentos staat bekend om zijn expertise in Magento-ontwikkeling en heeft ervaring met een diverse reeks klanten in verschillende B2B-branches. Ze streven ernaar om hoogwaardige, schaalbare en efficiënte e-commerce oplossingen te leveren om bedrijven te helpen succesvol te zijn op de online marktplaats. Ze doen dit met behulp van tools die worden geleverd door partners zoals Hypernode, Hyvä, Mollie, Tweakwise, Sansec en RUMvision.
Hi! Mijn naam is Dion, Account Manager at Hypernode
Wil je meer weten over Hypernode's Managed E-commerce Hosting? Plan je online meeting.
plan een een-op-een meeting tel:+31648362102