Gecentraliseerd workflowbeheer
Ontdek methoden om GitHub Actions-workflows in de repositories van een organisatie te centraliseren en te standaardiseren.
Gecentraliseerd workflowbeheer is een gratis DevOps-bootcamp-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Je CI/CD centraliseren
Welkom bij gecentraliseerd workflowbeheer! In grote organisaties kan het beheer van CI/CD-pijplijnen voor veel projecten complex worden.
In deze les leer je hoe je GitHub Actions-workflows kunt standaardiseren en centraliseren, zodat je hele ontwikkelomgeving consistenter, efficiënter en beter beveiligd wordt.
Waarom centraliseren? De uitdagingen
Stel je voor dat elk team zijn eigen unieke CI/CD-workflow maakt. Dit leidt vaak tot:
- Duplicatie: Teams schrijven steeds opnieuw vergelijkbare logica.
- Inconsistentie: Er ontstaan verschillende standaarden en werkwijzen.
- Onderhoudsproblemen: Voor het bijwerken van een gedeeld hulpmiddel of een beveiligingspraktijk zijn op veel plaatsen wijzigingen nodig.
- Beveiligingsrisico's: Het is moeilijker om te controleren of alle pijplijnen de aanbevolen beveiligingspraktijken volgen.
Herbruikbare workflows: het belangrijkste hulpmiddel
Een van de krachtigste hulpmiddelen voor centralisatie zijn herbruikbare workflows. Hiermee kun je een reeks taken of stappen in één centrale repository definiëren en deze vervolgens vanuit elke andere repository in je organisatie aanroepen.
Dit betekent dat je algemene logica voor bouwen, testen of implementeren op één plek staat, waardoor deze eenvoudig te beheren en bij te werken is.
Voorbeeld: een herbruikbare workflow aanroepen
Zo kan een projectrepository (de 'aanroeper') een herbruikbare workflow gebruiken die in een centrale repository is gedefinieerd (bijvoorbeeld octo-org/central-workflows).
Het sleutelwoord uses verwijst naar de centrale workflow en with geeft aangepaste invoer door.
name: Client App CI
on:
push:
branches:
- main
jobs:
call-build-and-test:
# Calls a workflow from a central 'octo-org' repository
uses: octo-org/central-workflows/.github/workflows/build-and-test.yml@main
with:
node-version: '18'
secrets: inherit # Pass all caller's secrets to the reusable workflowGeheimen en variabelen op organisatieniveau
Naast herbruikbare workflows kun je met GitHub ook geheimen en variabelen op organisatieniveau definiëren.
Deze zijn essentieel voor het opslaan van gevoelige gegevens (zoals API-sleutels) of algemene configuratiewaarden (zoals implementatiedoelen) die veel repositories binnen je organisatie nodig kunnen hebben.
Toegang tot geheimen van de organisatie
Zodra een geheim van de organisatie is ingesteld, kan elke workflow in een repository waaraan toegang is verleend het gebruiken, net als een geheim op repositoryniveau. Zo worden gevoelige gegevens centraal en veilig beheerd.
Geheimen worden nooit in logboeken weergegeven.
name: Deploy App
on:
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Use Org Deployment Key
# Accesses an organization-level secret
run: echo "Attempting deployment with key: ${{ secrets.ORG_DEPLOY_KEY }}"Startworkflows voor consistentie
Om ontwikkelaars te begeleiden en ervoor te zorgen dat nieuwe projecten vanaf het begin aan de standaarden voldoen, kunnen organisaties startworkflows aanbieden.
Dit zijn vooraf gedefinieerde workflowtemplates die als opties verschijnen wanneer in een repository een nieuw workflowbestand wordt gemaakt. Ze vormen een nuttig startpunt en dwingen aanbevolen werkwijzen af zonder handmatige tussenkomst.
Standaarden afdwingen met GitHub
Voor nog strengere controle biedt GitHub functies zoals Repository Rulesets (voor GitHub Enterprise Cloud) of aangepaste GitHub Apps.
Je kunt deze zo configureren dat ze specifieke conventies voor workflownamen afdwingen, controleren of bepaalde taken altijd aanwezig zijn of workflowbestanden controleren op naleving. Zo blijft de CI/CD-aanpak overal consistent en veilig.
Waarom gecentraliseerd beheer belangrijk is
Gecentraliseerd workflowbeheer biedt een organisatie belangrijke voordelen:
- Consistentie: Alle teams volgen uniforme CI/CD-praktijken.
- Efficiëntie: Minder dubbel werk en een snellere inrichting van projecten.
- Beveiliging: Aanbevolen beveiligingspraktijken zijn eenvoudiger toe te passen en bij te werken.
- Onderhoudbaarheid: Updates van gedeelde logica worden op één centrale plek uitgevoerd.
- Inwerken: Nieuwe teams kunnen snel aan de slag met goedgekeurde templates.
Controleer je begrip
Welke van de volgende opties zijn belangrijke voordelen van het centraliseren van GitHub Actions-workflows binnen een organisatie?
Samenvatting van de les
In deze les hebben we het belang onderzocht van gecentraliseerd workflowbeheer in GitHub Actions voor organisaties. We hebben geleerd hoe herbruikbare workflows, geheimen/variabelen op organisatieniveau en startworkflows helpen om consistentie te behouden, de efficiëntie te verbeteren en de beveiliging van de repositories binnen je organisatie te versterken.
Door je CI/CD te centraliseren, stroomlijn je de activiteiten en zorg je ervoor dat alle teams de aanbevolen werkwijzen volgen.
Leer DevOps-bootcamp met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 142
- Lessen
- 568
Veelgestelde vragen
Is de les “Gecentraliseerd workflowbeheer” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “Gecentraliseerd workflowbeheer”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Wat leer ik in “Gecentraliseerd workflowbeheer”?
Ontdek methoden om GitHub Actions-workflows in de repositories van een organisatie te centraliseren en te standaardiseren. Je oefent met DevOps-bootcamp door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met DevOps-bootcamp te beginnen?
Ervaring vooraf is niet nodig. DevOps-bootcamp op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.
Hoe lang duurt de les “Gecentraliseerd workflowbeheer”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over DevOps-bootcamp?
Ja. Elke les over DevOps-bootcamp bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- CI/CD voor monorepo's
- Workflows tussen repositories
- Gecentraliseerd workflowbeheer
- Padfiltering en selectieve builds