CI CD - CRAZYFIZZz/IT-Landscape GitHub Wiki
Wat is CI/CD en waar staat het voor.: CI/CD staat voor Continuous Integration en Continuous Delivery/Deployment. Het is een aanpak binnen softwareontwikkeling waarbij je zoveel mogelijk stappen in het proces zoals code samenvoegen, testen automatisch laat verlopen.
Wat is nu precies CI? Bij Continuous Integration (CI) voeg je als ontwikkelaar je code regelmatig samen met de code van anderen, meestal via een centrale repository zoals GitHub. Elke keer als iemand iets toevoegt, wordt er automatisch een proces gestart dat de code bouwt en test. Zo’n proces checkt bijvoorbeeld of je geen fouten hebt gemaakt, of alles nog goed samenwerkt, en of bestaande functies niet stuk zijn gegaan. Doordat dit continu gebeurt, merk je snel als er iets mis is, en wordt het makkelijker om problemen op te lossen voordat ze groter worden.
En wat is dan Precies CD? Na het automatisch testen van je code in het CI-proces volgt het CD-proces. CD oftewel Continuous Delivery/Deployment zorgt ervoor dat de code die door de tests komt, direct klaarstaat om live te gaan.Bij CD wordt je applicatie automatisch klaargezet voor release, bijvoorbeeld op een test of stagingomgeving. Je hebt dan nog zelf controle over wanneer het echt naar productie gaat. Ook is CD handig omdat zodra de code door de tests komt, wordt die zonder tussenkomst automatisch omgezet naar de live-omgeving. Dit betekent dat je sneller en vaker kunt releasen, zonder steeds handmatig dingen te doen.
Oke, maar wat zijn dan nu de voordelen hiervan? CI/CD brengt veel voordelen met zich mee. Doordat code automatisch wordt getest en klaargemaakt voor release, kunnen fouten veel sneller worden opgespoord en opgelost. Dit zorgt ervoor dat de kwaliteit van de software hoger blijft, zelfs als meerdere mensen tegelijk aan een project werken.Ook is zeker snelheid belangrijk: je kunt nieuwe functies, verbeteringen veel sneller beschikbaar maken voor gebruikers, omdat het hele proces van code toevoegen tot het daadwerkelijk live zetten eigenlijk automatisch verloopt.
Voor dat ik kan kan uitleggen hoe we de pipeline moeten maken ga ik eerst zeggen hoe je een basis image maakt voor een applicatie: ik gebruik hiervoor de link https://docs.docker.com/get-started/workshop/02_our_app/ wat je nu moet doen is de app git clonen.
Eerst zorg je ervoor dat je in een nieuwe window zit en dan voer je deze command gewoon uit bij vsCode zoals dit:
je drukt op Clone git repository en je paste de link
je makt vervolgens een nieuwe folder aan of je gebruikt een bestaande folder zoals dit:
je ziet nu ook dat je alles gecloned hebt
Nu moeten we ook een repository hebben ik zal de commands uitleggen en dan stap voor stap uitleggen wat het precies doet: