Rörledningar för CI/CD ci-cd-pipeline

Lär dig mer om CI/CD-pipelines och hur de hanterar distributioner till miljöer för staging och produktion i Cloud Manager.

Översikt overview

Cloud Manager innehåller ett ramverk för kontinuerlig integrering/kontinuerlig leverans (CI/CD) som gör att implementeringsteamen kan testa snabbt och leverera ny eller uppdaterad kod. Implementeringsteamen kan konfigurera, konfigurera och starta en automatiserad CI/CD-pipeline. Detta tillvägagångssätt följer de bästa metoderna för Adobe-kodning för att utföra en omfattande kodskanning och säkerställa högsta kodkvalitet.

CI/CD-pipeline automatiserar också enhets- och prestandatestningsprocesser för att öka driftsättningseffektiviteten och proaktivt identifiera kritiska problem som är dyra att åtgärda efter driftsättningen. Implementeringsteamen kan få tillgång till en omfattande rapport om kodprestanda för att få insyn i möjliga konsekvenser för nyckeltal och kritiska säkerhetsvalideringar om koden distribueras till produktionen.

Om pipeline-processen pipeline-process

I följande diagram visas vad som händer när en release aktiveras i Cloud Manager med hjälp av en pipeline.

Pipeline-processen

Steg för pipeline
Beskrivning
​1. Starta en release
En distributionshanterare utlöser en release antingen manuellt, med en Git-implementering eller baserat på ett återkommande schema.
​2. Skapa en lanseringstagg
Cloud Manager skapar en Git-tagg som markerar releasen med ett automatiskt genererat versionsnummer, till exempel 2018.531.245527.0000001222.
​3. Byggd som släppt med autogenererad version
Cloud Manager skapar programmet med det nytilldelade versionsnumret.
​4. Utvärdera kodkvaliteten
Cloud Manager skannar källkoden och ger en sammanfattning innan koden kan distribueras till mellanlagringsmiljön.
​5. Lagrade versionsobjekt
Versionsartefakterna lagras för senare användning i distributionsstegen.
​6. Automatisk distribution av artefakter till AMS AEM-testning
Frisläppningsartefakten distribueras till testmiljön.
​7. Utlösa automatiska tester
Cloud Manager kör prestanda- och säkerhetstester på artefakten.
​8. Driftsättning av produktionsutlösare
När de automatiserade testerna har slutförts startar Cloud Manager distributionen till produktionen.
​9. Cloud Manager får artefakter att distribuera
Cloud Manager hämtar lagrade versionsartefakter.
​10. Distribuera artefakter till produktion
Artefakterna distribueras till produktionsmiljön.

Kodkällor code-sources

Rörledningar kan också skilja sig åt beroende på vilken typ av kod de distribuerar, förutom produktion och icke-produktion.

Rörledningar i full hög full-stack-pipeline

I rörledningar i fullhög distribueras den fullständiga AEM-programkoden till AEM-miljön, och som standard distribueras även webbnivåkonfigurationer.

Följande begränsningar gäller.

  • En användare måste vara inloggad med rollen Distributionshanterare för att kunna konfigurera eller köra pipelines.
  • Det kan bara finnas en pipeline i full hög per miljö.

Nedan beskrivs hur pipelinen i en hel hög interagerar med en konfigurationspipeline för webbskikt.

  • I helstacksflödet för en miljö ignoreras Dispatcher-konfigurationen om motsvarande konfigurationsflöde för webbnivån finns.
  • Om motsvarande konfigurationsflöde för webbskiktet för miljön inte finns kan användaren konfigurera pipelinen för hela stacken så att den innehåller eller ignorerar Dispatcher-konfigurationen.

Fullspaltig rörledning kan vara pipelines med kodkvalitet eller driftsättning.

Konfigurera rörledningar i full hög configure-full-stack

Se Lägga till en produktionspipeline.
Se Lägga till en icke-produktionspipeline.

Konfigurationspipelines på webbnivå web-tier-config-pipelines

Med konfigurationspipelines på webbnivå kan du exklusiv distribution av HTTPD/Dispatcher-konfiguration till AEM-miljön, vilket frigör den från andra kodändringar. Det är en smidig pipeline som ger användare som bara vill driftsätta konfigurationsändringar från Dispatcher, ett snabbare sätt att göra det på bara några minuter.

TIP
Med konfigurationspipelines på webbnivå kan du lagra webbkonfigurationen på samma eller en annan källplats som den fullständiga stackpipeline, beroende på vad som passar din projektstruktur bäst.

Följande begränsningar gäller.

  • En användare måste vara inloggad med rollen Distributionshanterare för att kunna konfigurera eller köra pipelines.
  • Det kan bara finnas en konfigurationspipeline för webbskikt per miljö.
  • Användaren kan inte konfigurera en konfigurationspipeline för ett webbskikt när motsvarande pipeline för en hel hög körs.

Nedan beskrivs hur webbskiktets konfigurationspipeline interagerar med hela stackpipelinen.

  • Om en konfigurationspipeline för ett webbskikt inte är inställd för en miljö kan användaren välja att ta med eller ignorera Dispatcher-konfigurationen när pipeline för hela stacken konfigureras.
  • När en konfigurationspipeline för ett webbskikt har konfigurerats för en miljö, ignorerar dess motsvarande pipeline för hela stacken (om det finns en sådan) Dispatcher-konfigurationen under körning och distribution.
  • När en konfigurationspipeline för ett webbskikt har tagits bort återställs dess motsvarande pipeline för hela stacken (om det finns en sådan) för att distribuera Dispatcher-konfigurationer under körningen.
NOTE
För AMS-program där blå-grön distribution är aktiverat används rullande distribution som standard för webbnivåuppdateringar. Använd en fullständig stackpipeline om du behöver blågrön distribution för ändringar på webbnivån.

Konfigurera rörledningar för webbnivå configure-web-tier

Se Lägga till en produktionspipeline.
Se Lägga till en icke-produktionspipeline.

Snabbare byggen med Smart Build use=smart-build

Cloud Manager använder nu en optimerad byggstrategi som kallas Smart Build som använder cachelagring på modulnivå för att snabba upp byggprocessen. Under varje bygge återskapas endast moduler som har ändrats, medan oförändrade moduler återanvänds från cachen.

Smart Build är endast tillgängligt för pipelines för kodkvalitet och Dev Full Stack-distribution.

Se Lägga till en icke-produktionspipeline och Om att använda Smart Build i en icke-produktionspipeline.

Konfigurera en CI/CD-pipeline how-to-setup-a-ci-cd-pipeline

Mer information om pipelinekonfigurationen finns i dokumenten Konfigurera produktionsförlopp och Konfigurera icke-produktionsförlopp.

Kvalitetsportar quality-gates

CI/CD-pipeline innehåller kvalitetsportar eller acceptanskriterier som måste uppfyllas innan koden kan flyttas från mellanlagringsmiljön till distributionsmiljön. Det finns tre portar i pipeline:

  • Kodkvalitet
  • Prestandatestning
  • Säkerhetstestning

För var och en av dessa portar finns det tre problemnivåer som kan identifieras:

  • Kritisk - Kritiska problem som identifieras av portalen orsakar ett omedelbart fel i pipeline.
  • Viktigt - Viktiga problem som identifieras av portalen gör att pipelinen försätts i pausat läge. Distributionshanteraren, projektledaren eller företagsägaren kan åsidosätta problemen, vilket gör att pipeline kan fortsätta. Alternativt kan de acceptera problemen, vilket gör att pipelinen avbryts om ett fel uppstår.
  • Information - Informationsproblem som identifieras av porten tillhandahålls endast i informationssyfte och påverkar inte pipeline-körningen.

Följande är ett exempel på en kodsökning där problem identifieras.

Exempel på kodsökning

Konfigurera portar how-to-setup-gates

Mer information om hur du ställer in kod, kvalitet och prestanda finns i dokumentet Configuring Production Pipelines.

recommendation-more-help
experience-manager-cloud-manager-help-main-toc