Uw code implementeren deploy-your-code
Leer hoe u uw code kunt implementeren in Production met Cloud Manager-pijpleidingen in AEM as a Cloud Service.
Het opstellen van code foutloos aan Stadium en dan door aan Productie wordt gedaan door een pijpleiding van de Productie. De uitvoering van de productiepijplijn wordt opgesplitst in de volgende twee logische fasen:
- Plaatsing aan het milieu van het Stadium - de code wordt gebouwd en aan het milieu van het Stadium voor geautomatiseerde functionele het testen, UI het testen, ervaringscontrole, en het Testen van de Erkenning van de Gebruiker (UAT) opgesteld.
- Plaatsing aan het milieu van de Productie - Zodra de bouwstijl op Stadium wordt bevestigd, en voor bevordering aan Productie goedgekeurd, wordt het zelfde bouwstijlartefact opgesteld aan het milieu van de Productie.
slechts steunt het Volledige pijpleidingstype van de Code van de Stapel coderingsaftasten, functie het testen, UI het testen, en ervaringscontrole.
Implementatieproces deployment-process
Alle plaatsingen van de Cloud Service volgen een het rollen proces om nul onderbreking te verzekeren. Zie hoe het Rollen het Werk van Plaatsingenom meer te leren.
Uw code distribueren met Cloud Manager in AEM as a Cloud Service deploying-code-with-cloud-manager
Zodra u uw productiePijpleidingmet inbegrip van bewaarplaats, milieu, en het testen milieu hebt gevormd, bent u bereid om uw code op te stellen.
-
Logboek in Cloud Manager bij my.cloudmanager.adobe.comen selecteer de aangewezen organisatie.
-
Op de Mijn console van Programma's, klik het programma waarvoor u code wilt opstellen.
-
Op de pagina van het Overzicht, op het vraag-aan-actie gebied, klikt opstellen.
-
Op opstellen aan productie pagina, klik bouwt.
Het bouwstijlproces stelt uw code door de volgende drie bevolen fasen op:
Implementatiefase van fase stage-deployment
De fase van de Plaatsing van het 0} Stadium impliceert de volgende stappen:
zie de Details van het Milieu van de Bouwstijlvoor details op het bouwstijlmilieu.
zie het Testen van de Kwaliteit van de Codevoor details op het het testen proces.
Fase van de testfase stage-testing
De testende 1} fase van het Stadium {impliceert de volgende stappen:
zie ook Functionele het Testen van het Product.
zie ook het Functionele Testen van de Douane.
de tests UI zijn op selenium-Gebaseerd en verpakt in een beeld van het Docker om flexibiliteit in taal en kaders aan te bieden. Met deze methode kunt u Java en Maven, Node en WebDriver.io of een op Selenium gebaseerd framework of technologie gebruiken.
zie ook het Testen UI van de Douane.
Deze stap in de pijplijn wordt altijd uitgevoerd en kan niet worden overgeslagen. Aangezien een productiepijplijn wordt uitgevoerd, is een stap van de ervaringscontrole inbegrepen na douane functionele het testen die de controles in werking stelt.
- De pagina's die worden gevormd worden voorgelegd aan de dienst en geëvalueerd.
- De resultaten zijn informatief en tonen de scores en de verandering tussen de huidige en vorige scores.
- Dit inzicht is waardevol om te bepalen als er een regressie is die met de huidige plaatsing wordt geïntroduceerd.
Zie Begrijpend de resultaten van de Controle van de Ervaring.
Implementatiefase productie production-deployment
Het proces voor het opstellen aan productietopologieën verschilt lichtjes om het effect op bezoekers aan een AEM plaats te minimaliseren.
Productieimplementaties volgen doorgaans dezelfde stappen als eerder beschreven, maar op een voortschrijdende manier. Deze stappen omvatten het volgende:
- Implementeer AEM pakketten naar de auteur.
- Koppel
dispatcher1
los van het taakverdelingsmechanisme. - Implementeer AEM pakketten op
publish1
en gebruik het Dispatcher-pakket opdispatcher1
, verwijder de Dispatcher-cache. - Plaats
dispatcher1
weer in het taakverdelingsmechanisme. - Koppel
dispatcher2
los van het taakverdelingsmechanisme wanneerdispatcher1
weer in service is. - Implementeer AEM pakketten op
publish2
en gebruik het Dispatcher-pakket opdispatcher2
, verwijder de Dispatcher-cache. - Plaats
dispatcher2
weer in het taakverdelingsmechanisme.
Dit proces gaat verder tot de plaatsing alle uitgevers en Dispatchers in de topologie heeft bereikt.
Tijdslimieten tijdens een implementatie timeouts
De volgende stappen time-out als ze wachten op feedback van gebruikers tijdens een implementatie:
Een productieimplementatie opnieuw uitvoeren reexecute-deployment
In zeldzame gevallen kunnen de stappen van de productielocatie om voorbijgaande redenen ontbreken. In dergelijke gevallen wordt heruitvoering van de productieleidingsstap ondersteund zolang de productieleidingsstap is voltooid, ongeacht het type voltooiing (bijvoorbeeld geannuleerd of mislukt). De heruitvoering leidt tot een nieuwe uitvoering gebruikend de zelfde pijpleiding die uit de volgende drie stappen bestaat:
- Bevestiging - de zelfde bevestiging die tijdens een normale pijpleidingsuitvoering voorkomt.
- bouwt - in de context van een heruitvoering, kopieert de bouwstijlstap artefacten en voert eigenlijk geen nieuw bouwstijlproces uit.
- plaatsing van de Productie - gebruikt de zelfde configuratie en de opties zoals de stap van de productieplaatsing in een normale pijpleidingsuitvoering.
In dergelijke omstandigheden waar een heruitvoering mogelijk is, verstrekt de pagina van de de statuspagina van de productiepijpleiding re-execute optie naast de gebruikelijke Download bouwt logboek optie.
Beperkingen limitations
- Het opnieuw uitvoeren van de stap van de productieplaatsing is slechts beschikbaar voor de laatste uitvoering.
- Heruitvoering is niet beschikbaar voor het uitvoeren van push-updates. Als de laatste uitvoering een uitvoering van een push-update is, is het niet mogelijk deze opnieuw uit te voeren.
- Als de laatste uitvoering is mislukt op een willekeurig punt vóór de stap voor de implementatie van de productie, is het niet mogelijk de productie opnieuw uit te voeren.
API opnieuw uitvoeren reexecute-API
Naast het zijn beschikbaar in UI, kunt u Cloud Manager APIgebruiken om wederuitvoeringen teweeg te brengen en uitvoeringen te identificeren die als re-uitvoeringen werden teweeggebracht.
Een nieuwe uitvoering activeren reexecute-deployment-api
Om een re-uitvoering teweeg te brengen, doe een verzoek van de PUT aan de Verbinding van de HAL https://ns.adobe.com/adobecloud/rel/pipeline/reExecute
op de productie opstelt stapstaat.
- Als deze koppeling aanwezig is, kan de uitvoering vanaf die stap opnieuw worden gestart.
- Als dit niet het geval is, kan de uitvoering niet vanaf die stap opnieuw worden gestart.
Deze verbinding is slechts beschikbaar voor de productie stelt stap op.
{
"_links": {
"https://ns.adobe.com/adobecloud/rel/pipeline/logs": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530/logs",
"templated": false
},
"https://ns.adobe.com/adobecloud/rel/pipeline/reExecute": {
"href": "/api/program/4/pipeline/1/execution?stepId=2983530",
"templated": false
},
"https://ns.adobe.com/adobecloud/rel/pipeline/metrics": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530/metrics",
"templated": false
},
"self": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530",
"templated": false
}
},
"id": "6187842",
"stepId": "2983530",
"phaseId": "1575676",
"action": "deploy",
"environment": "weretail-global-b75-prod",
"environmentType": "prod",
"environmentId": "59254",
"startedAt": "2022-01-20T14:47:41.247+0000",
"finishedAt": "2022-01-20T15:06:19.885+0000",
"updatedAt": "2022-01-20T15:06:20.803+0000",
"details": {
},
"status": "FINISHED"
De syntaxis van de href-waarde van de HAL-koppeling is slechts een voorbeeld. De werkelijke waarde moet altijd worden gelezen van de HAL-koppeling en niet worden gegenereerd.
Het voorleggen van een verzoek van de PUT aan dit eindpunt resulteert in een 201 reactie als succesvol, en het antwoordlichaam is de vertegenwoordiging van de nieuwe uitvoering. Deze workflow lijkt op het starten van een normale uitvoering via de API.
Identificeer een wederuitvoeringsuitvoering identify-reexecution
Het systeem heruitvoeringen identificeert door het veld trigger
in te stellen op de waarde RE_EXECUTE
.