CI/CD Fundamentals: wel een training met Gitlab, maar geen Gitlab training
Begin 2022 lanceerden we bij AT Computing onze nieuwe CI/CD Fundamentals with Gitlab training. Inmiddels is de training meerdere keren gegeven en zijn de reacties van de deelnemers unaniem zeer positief. Ook vanuit gesprekken met klanten krijgen we enthousiaste reacties op de training, maar is er ook altijd behoefte aan duiding wat er bij deze training nu precies aan bod komt. Omdat deze onduidelijkheid mogelijk breder leeft, zetten we hieronder de zaken maar eens helder op een rij.
Om met het belangrijkste te beginnen: het doel van deze training is niet om te leren werken met Gitlab. Het is dus geen Gitlab-training. Je hoeft echter vooraf geen kennis van Gitlab te hebben om de training te kunnen volgen. Alles wat je met Gitlab moet doen wordt tijdens de training uitgelegd. Wat wel noodzakelijk is, is vlot uit de voeten kunnen met de command line interface. Onze training Linux Infrastructure Fundamentals vormt (uiteraard) de perfecte basis, maar als je op een andere manier deze voorkennis tot je neemt dan komt het helemaal goed.
Gitlab gebruiken we tijdens de training om de concepten en werkingsprincipes van een CI/CD pipeline duidelijk te maken in theorie en praktijk. Je werkt tijdens de hands-on practicum opdrachten dus met Gitlab, maar dat had ook een willekeurige andere tool kunnen zijn waarmee je een CI/CD pipeline kunt bouwen.
Waarom hebben we voor Gitlab gekozen?
- Het is in de markt een zeer veelgebruikte tool (Gitlab vormt samen met Azure DevOps / Azure Pipelines, Jenkins en Atlassian Bamboo / Bitbucket Pipelines de huidige top 4 van meest gebruikte tools voor Continuous Integration en Continuous Delivery in Nederland).
- We gebruiken Gitlab zelf bij AT Computing. We hebben hierdoor veel ervaring met deze tool en het bouwen van pipelines. Wat doen we allemaal met Gitlab? Best veel! Onze website, al onze lab-omgevingen en binnenkort ook ons volledige cursusmateriaal bestaat uit repo’s die zich allemaal in onze Gitlab omgeving bevinden en middels CI/CD pipelines artifacts genereren en compleet gebruiksklare producten afleveren.
- Gitlab is volledig opgebouwd uit open source componenten en is als applicatie ook als open source / community edition beschikbaar.
Net zoals bij alle trainingen van AT Computing leggen we bij de CI/CD Fundamentals training merk agnostisch de concepten en werkingsprincipes uit. Of je op basis van de training in je eigen praktijk gebruik gaat maken van Gitlab of een andere tool is daarom geen beperking: de concepten blijven gelden. Daarnaast blijft ook veel van de praktijkkennis die je tijdens de opdrachten opdoet relevant:
- Gitlab pipelines worden geschreven in YAML. Ook Azure Pipelines, AWS Code Pipelines en Google Cloud Build kunnen in YAML worden geschreven. (Jenkins X pipelines ook, maar Jenkins pipelines dan weer niet. Die worden in groovy geschreven).
- Gitlab hanteert definities binnen de pipeline, zoals stages, jobs en tasks. Ook bij diverse andere CI/CD tools wordt deze terminologie gehanteerd om onderscheid tussen stadia van en activiteiten binnen de pipeline te duiden.
- Een CI/CD pipeline wordt vaak gebruikt om diverse tools aan elkaar te knopen en samen te laten werken. Tijdens onze CI/CD Fundamentals training leer je stap voor stap hoe je dit doet en hoe dat werkt. Zo wordt in de pipeline o.a. gebruik gemaakt van de shell (bash), Docker en Kubernetes. Dit werkingsprincipe is nagenoeg hetzelfde binnen alle andere CI/CD tools. Alleen de syntax en naamgeving verschilt, maar dat is relatief eenvoudig om bij te leren middels documentatie van de tool die je kiest.
Mocht je met CI/CD pipelines aan de slag willen gaan, dan valt er met de CI/CD Fundamentals with Gitlab training dus enorm veel te leren. Ongeacht of je nu voor Gitlab kiest of toch een andere tool gaat gebruiken binnen jouw IT-omgeving.
$ blog-details
- $ categorie: CI/CD Pipelines
- $ tools: o.a. GitLab, Jenkins, Azure DevOps, AWS CodePipelines, Jenkins X, Google Cloud Build...
- $ date: 2022-08-31T16:34:00 CEST
- $ trainingen:
CI/CD Fundamentals with GitLab
Linux Infrastructure Fundamentals