Pipelines
Met pipelines kun je het hele proces van het verplaatsen van code van ontwikkeling naar productie automatiseren. Je kunt meerdere fasen binnen je pipeline definiëren en meerdere applicaties in elke fase opnemen. Als je pipeline eenmaal is ingesteld, kun je met de functie Promote naadloos wijzigingen vanuit de broncode naar QA- en productieomgevingen pushen zonder dat je de applicatie opnieuw hoeft te bouwen. Pipelines ondersteunen ook de Git Flow strategie en bieden een duidelijke visuele weergave van de ontwikkelings- en deploymentworkflow van je applicatie.
Met pipelines kun je:
- Software deployen met verschillende omgevingsvariabelen: Dit is ideaal voor scenario’s zoals een B2B applicatie die door meerdere klanten wordt gebruikt, waarbij elke klant kleine variaties in hun dashboard nodig heeft.
- Dezelfde applicatie op meerdere geografische locaties deployen: Dit helpt de prestaties te verbeteren en latentie te verminderen voor gebruikers in verschillende regio’s.
- A/B-tests uitvoeren: Zet eenvoudig verschillende versies van je applicatie in bij gerichte gebruikersgroepen, zodat je kunt testen welke versie betere resultaten oplevert.
Het gebruik van pipelines stroomlijnt het deploymentproces, verhoogt de flexibiliteit en ondersteunt een gestructureerde aanpak voor het beheren van meerdere omgevingen.
De Promote functie is ook toegankelijk via onze API, waardoor het eenvoudig is om te integreren met CI/CD tools van derden zoals GitHub Actions voor gestroomlijnde workflows.
Een pipeline toevoegen
Om een nieuwe pipeline toe te voegen, klik je op Pipeline toevoegen binnen Applicaties.
Voer een naam in voor de pipeline en kies een van de volgende opties:
- Trunk-based development: Met een trunk-based development pipeline kun je een bestaande applicatie toevoegen aan je ontwikkelfase en meerdere productieomgevingen maken als afzonderlijke applicaties om te deployen. Elk van deze applicaties kan worden gehost in verschillende datacenters en wordt behandeld als een onafhankelijke entiteit binnen zijn eigen container. Met deze opzet kun je meerdere applicaties deployen vanuit dezelfde broncode, maar met verschillende omgevingsvariabelen, domeinen, processen en andere configuraties.
- Git flow: Kies deze optie als je workflow aparte branches gebruikt voor ontwikkeling, staging en productie. Om de Git Flow pipeline te gebruiken, moeten je applicaties al zijn ingesteld binnen MyKinsta. Met deze aanpak kun je je Git Flow direct in het platform visueel beheren en volgen. De Promote functie is niet beschikbaar in deze workflow, omdat deployments automatisch plaatsvinden als je wijzigingen pusht vanuit je Git bron repository.
Je hebt ook de flexibiliteit om meerdere stadia aan de pipeline toe te voegen, zoals een QA stadium, om je wijzigingen grondig te testen voordat je ze naar productie promoot.
Klik op Pipeline toevoegen en dit opent de pipeline workflow waar je je stappen en applicaties kunt toevoegen.
App voorbeelden inschakelen
Door app voorbeelden (preview apps) in te schakelen kun je je wijzigingen in een live omgeving testen voordat je ze samenvoegt in de main branch. App voorbeelden zijn geïntegreerd met GitHub’s deployment en omgevingsfuncties, dus als je een pull request opent, wordt er automatisch een preview app gegenereerd, die een speciale testruimte biedt die je productieopstelling nabootst. Hierdoor kun je je updates bekijken, ermee werken en ze verbeteren om er zeker van te zijn dat je code werkt zoals bedoeld, voordat het volledig wordt geïntegreerd in het hoofdproject.
Als je op App voorbeelden inschakelen klikt, zijn de volgende opties beschikbaar:
Preview instellingen
- Git repository: Kies GitHub, Bitbucket of GitLab en verbind je Git account. Eenmaal verbonden kun je een Git repository kiezen.
- Automatisch nieuwe app voorbeelden maken voor elk pull request: Selecteer deze optie om elke keer dat je een pull request opent een nieuwe preview app aan te maken. De preview app wordt verwijderd als het pull request wordt gesloten.
- Oude app voorbeelden automatisch verwijderen: Selecteer deze optie om preview apps automatisch te verwijderen als er geen nieuwe implementaties plaatsvinden. Je moet het aantal dagen zonder nieuwe implementaties opgeven voordat het verwijderen van de preview apps wordt gepland.
App instellingen
- Locatie: Kies het datacenter dat je wilt gebruiken voor deze applicatie.
- Build type: Kies Nixpacks, Buildpacks of een Dockerfile.
- Build pad: Voor Nixpacks en Buildpacks is dit het pad in de repository naar de bestanden die nodig zijn om de applicatie te bouwen. Voor Dockerfiles is dit het pad naar je Dockerfile relatief ten opzichte van de repository root.
- Slaapstand: Hiermee wordt je applicatie automatisch teruggeschaald als er geen HTTP-verzoeken worden ontvangen binnen de opgegeven tijd.
Processen
In dit gedeelte kun je alle benodigde achtergrond workers, cron jobs of taken toevoegen.
Omgevingsvariabelen
Voeg alle benodigde omgevingsvariabelen toe voor je preview app.
Zodra je de vereiste gegevens hebt toegevoegd, klik je op Inschakelen.
Om de instellingen van de voorbeeld-app te wijzigen, klik je op de ellips bij Preview en selecteer je Instellingen bijwerken. Om de voorbeeld-app handmatig uit te rollen, klik je op de ellips op Voorbeeld en selecteer je Branch deployen.
Een app aan een stage toevoegen
Om een applicatie aan een stage toe te voegen, klik je op App toevoegen. Je kunt dan kiezen om een bestaande applicatie toe te voegen of een nieuwe te maken. Je kunt alleen een nieuwe applicatie maken binnen de trunk-based ontwikkelingspipeline. Als je de Git Flow pipeline gebruikt, moeten de applicaties al bestaan binnen MyKinsta.
Voor trunk-based pipelines moet de eerste fase van je pipeline de bron zijn voor de rest van de pipeline, dus je moet een bestaande applicatie kiezen. Je kunt er dan voor kiezen om een nieuwe applicatie te maken voor een van de volgende stappen.
Een fase toevoegen
Om nog een fase aan de pipeline toe te voegen, klik je op de ellips en vervolgens op Fase maken.
Voer een naam in voor de stap en klik op Fase maken. Je kunt de stappen verslepen om de volgorde te veranderen waarin je de applicatie wilt deployen.
Vervolgens kun je een nieuwe applicatie aan de stage toevoegen.
Wijzigingen promoten naar productie
Als je een trunk-based pipeline hebt opgezet, kun je de Promote optie gebruiken om de applicatie naar elk stadium te pushen zonder deze opnieuw te hoeven bouwen. Als je promoot naar een fase met meerdere applicaties, kun je kiezen naar welke applicaties je wilt promoten. Als je een bepaalde applicatie niet wilt promoten, klik dan op het minteken op die applicatie om deze uit de deployment te verwijderen.
Binnen Applicaties toont de pipeline alle opgenomen applicaties, waarbij duidelijk wordt aangegeven in welke fase elke applicatie zich binnen de pipeline bevindt en wanneer deze voor het laatst is degeployd.
Instellingen pipeline
Om de pipelineinstellingen te openen, klik je op de ellips binnen een pipeline en vervolgens op Instellingen. Met de instellingen kun je wisselen tussen trunk-based ontwikkeling en git flow pipelines. Je kunt ook de naam van je pipeline aanpassen en de volgorde van de stappen binnen de pipeline wijzigen.
Een pipeline verwijderen
Om een pipeline te verwijderen, selecteer je binnen Applicaties de pipeline die je wilt verwijderen, klik je op de ellips en klik je vervolgens op Verwijderen.
Hiermee wordt alleen de pipeline verwijderd; de applicaties worden niet verwijderd en blijven in je lijst Applicaties staan. Om een applicatie volledig te verwijderen, ga je naar Instellingen > Gevarenzone > Applicatie verwijderen. Door de applicatie volledig te verwijderen verwijder je het volgende:
- Alle bestanden
- Instellingen
- Permanente opslagschijven
- Verbindingen met andere applicaties of databases