ALM Accelerator-pijplijnen configureren
Pijplijnen zijn de motoren van de ALM Accelerator. Ze automatiseren het ALM-proces voor Power Platform. Ze zijn gebouwd met behulp van Azure Pipelines, een service van Azure DevOps, en worden opgeslagen in een Azure DevOps-project.
Er worden vier hoofdpijplijnen gebruikt om het ALM-proces te automatiseren:
- Import
- Export
- Delete
- Bouwen of implementeren
De pijplijnen zijn ontworpen voor gebruik met de canvas-app ALM Accelerator. U hoeft de app niet te gebruiken, maar we raden het wel aan. De app biedt een eenvoudige interface voor het aanroepen van de pijplijnen en een manier om ze te configureren zonder de onderliggende parameters te hoeven begrijpen.
Gemeenschappelijke ALM Accelerator-pijplijnscenario's
De ALM Accelerator-pipelines en -app hebben standaardconfiguraties waarmee u snel aan de slag kunt met ALM voor Power Platform. De pijplijnen kunnen veel verschillende ALM-scenario's afhandelen om aan de vereisten van uw organisatie te voldoen. In de volgende secties worden enkele veelvoorkomende scenario's beschreven en hoe deze kunnen worden afgehandeld door het configureren van de pijplijnen en de bijbehorende implementatieprofielen en stappen in de ALM Accelerator-app of rechtstreeks via de pijplijn.
De pijplijnen in het ene project installeren en de broncode in een ander project
In de ALM Accelerator-app en in de implementatieprofielen kunt u een pijplijnproject en een bronproject opgeven. Via een optie in de installatiewizard kunt u een apart pijplijnproject en een aparte opslagplaats opgeven. Deze opties zijn handig als u de opslag van oplossingen wilt segmenteren op basis van gebruikers, bedrijfsstructuur of andere factoren. In de meeste gevallen worden de pijplijn-YAML-bestanden opgeslagen in het pijplijnproject en worden de pijplijnen voor exporteren, importeren en verwijderen gemaakt in het project waar de oplossing brongestuurd is.
De pijplijnen zonder de ALM Accelerator uitvoeren
De canvas-app ALM Accelerator biedt een eenvoudige knoppenlaag voor het uitvoeren van de pijplijnen. U hebt de app echter niet nodig om ze uit te voeren. Als u de pijplijnen onafhankelijk van de app wilt gebruiken, voert u ze rechtstreeks vanaf de opdrachtregel uit. U kunt ook uw eigen app bouwen. Gebruik een aangepaste connector voor de Azure DevOps-API in de ALM Accelerator-oplossing, om de pijplijnen aan te roepen via Power Automate of andere Power Platform-technologieën.
In beide gevallen is het essentieel dat als u de pijplijnen onafhankelijk van elkaar wilt gebruiken, dat u weet welke parameters eraan worden doorgegeven.
Pijplijnparameters
Parameters voor import-unmanaged-to-dev-environment: gebruik de import solution-pijplijn om een onbeheerde oplossing uit broncodebeheer te importeren in een ontwikkelings-omgeving.
In de volgende tabel wordt beschreven hoe u de parameters van de pijplijn importeert.
Parameter | Voorbeeld | Omschrijving |
---|---|---|
Project | Mijn Azure DevOps-project | De naam van het project waarnaar de oplossing moet worden geïmporteerd |
Opslagplaats | Mijn Azure DevOps-opslagplaats | De naam van de opslagplaats project van waaruit de oplossing moet worden geïmporteerd |
SolutionName | MySolutionName | De naam van de te importeren oplossing |
me@example.com | Het e-mailadres van de gebruiker die de oplossing importeert | |
Gebruikersnaam | Achternaam, voornaam | De gebruikersnaam van de gebruiker die de oplossing importeert |
Vertakking | main | De vertakking op basis waarvan de oplossing moet worden gebouwd en geïmporteerd |
ServiceConnectionName | MyServiceConnection | De naam van de serviceverbinding die voor de import moet worden gebruikt |
ServiceConnectionUrl | example.crm.dynamics.com | De URL van de makeromgeving voor de import |
EnvironmentName | MyDevEnvironment | Wordt gebruikt om de implementatie-instellingen in de implementatiepijplijn te vinden; retourneert een mapnaam onder de configuratiemap in de oplossingsbron |
Parameters voor delete-unmanaged-solution-and-components: gebruik de delete solution-pijplijn om een onbeheerde oplossing en alle bijbehorende componenten uit een ontwikkelings-omgeving te verwijderen.
In de volgende tabel wordt beschreven hoe u de parameters van de pijplijn verwijdert.
Parameter | Voorbeeld | Omschrijving |
---|---|---|
SolutionName | MySolutionName | De naam van de oplossing die moet worden verwijderd |
ServiceConnectionName | MyServiceConnection | De naam van de serviceverbinding die moet worden gebruikt voor de oplossing die moet worden verwijderd |
ServiceConnectionUrl | example.crm.dynamics.com | De URL van de makeromgeving voor de te verwijderen oplossing |
Parameters voor export-solution-to-git: gebruik de export solution-pijplijn om de oplossing te exporteren naar een Git-repository.
In de volgende tabel wordt beschreven hoe u de parameters van de pijplijn exporteert.
Parameter | Voorbeeld | Omschrijving |
---|---|---|
Project | Mijn Azure DevOps-project | De naam van het project waarnaar de broncode van de oplossing moet worden geëxporteerd |
Opslagplaats | Mijn Azure DevOps-opslagplaats | De naam van de opslagplaats waarnaar de broncode van de oplossing moet worden geëxporteerd |
SolutionName | MySolutionName | De naam van de te exporteren oplossing |
me@example.com | Het e-mailadres van de gebruiker die de oplossing exporteert | |
Gebruikersnaam | Achternaam, voornaam | De gebruikersnaam van de gebruiker die de oplossing exporteert |
CommitMessage | Lost bug #1234 op | Een beschrijving van de wijzigingen die moeten worden opgeslagen in de vastlegging in de opslagplaats |
Vertakking | main | De bronvertakking van waaruit een nieuwe vertakking moet worden gemaakt of de bestaande vertakking waarin wordt vastgelegd |
BranchToCreate | feature-1234 | De unieke naam van een nieuwe vertakking die indien nodig moet worden gemaakt op basis van de Branch -parameter |
ServiceConnectionName | MyServiceConnection | De naam van de serviceverbinding die voor de export van de oplossing moet worden gebruikt |
ServiceConnectionUrl | example.crm.dynamics.com | De URL van de makeromgeving waarin de te exporteren onbeheerde oplossing zich bevindt |
'Gegevens | [JSON implementatie-instellingen] | Een JSON-tekenreeks met de implementatie-instellingen die moeten worden gebruikt voor het exporteren en configureren van implementatiepijplijnen |
PortalSiteName | MyPortalSite | De naam van de Power Pages-website die is gekoppeld aan de te exporteren oplossing |
Versiebeheer van oplossingen aanpassen bij het gebruik van de ALM Accelerator-pijplijnen om deze te exporteren of te implementeren
Geëxporteerde en geïmplementeerde oplossingen krijgen standaard de naam die is opgegeven in het YAML-bestand voor implementatiepijplijnen. Met de ALM Accelerator-pijplijnen kunt u het versiebeheer van een oplossing aanpassen bij het exporteren of implementeren ervan. In de volgende secties wordt beschreven welke methoden u kunt gebruiken.
Geëxporteerd versiebeheer
Gebruik het versienummer dat door de pijplijnen wordt geëxporteerd als het versienummer in alle geïmplementeerde omgevingen. Maak een variabele met de naam UseSolutionVersionFromDataverse in uw exportpijplijn of een algemene variabele in de variabelenbibliotheek voor de ALM Accelerator. Geef het de waarde True. De variabele zorgt ervoor dat het versienummer dat in uw oplossing wordt geëxporteerd, behouden blijft in downstreamomgevingen en wordt weerspiegeld in uw broncodebeheer wanneer de oplossingsbron wordt vastgelegd.
Aangepaste versiebeheerlogica
Gebruik ALM Accelerator-hooks om de versie van de oplossing in te stellen. Voeg uw aangepaste logica toe aan het build-solution-pack-pre-hook.yml
sjabloon om Solution.xml
rechtstreeks te bewerken of met behulp van andere tools, zoals pac-oplossing versie.
Aangepast Bring-Your-Own-Templates versiebeheer
De mogelijkheid om uw eigen sjablonen te gebruiken voor het genereren van implementatiepijplijnen biedt flexibiliteit voor versiebeer tijdens de eerste export van een oplossing. Maak bijvoorbeeld een kopie van een build-deploy-validation/test/prod-SampleSolution.yml
en verander de buildnaam van de standaardnaam naar een versiebeheerstrategie gebaseerd op configuratieuitvoering of buildnummers:
build:
- name: 1.0.$(Date:yyyyMMdd)$(Rev:.r)
...
Nadat de sjablonen zijn geplaatst, werkt u de implementatiestappen bij in uw implementatieprofiel om ernaar te verwijzen.
Pas het aantal implementatiestappen in uw pijplijnen en de namen van de doelomgevingen aan
Net als bij het aangepaste versiebeheer met sjablonen biedt de mogelijkheid om uw eigen sjablonen te gebruiken voor het genereren van implementatiepijplijnen meer flexibiliteit tijdens de eerste export van een oplossing. Geef het project op waarin uw sjablonen aanwezig zijn en het pad naar de sjabloon die moet worden gebruikt om de implementatiepijplijnen te genereren. De instellingen voor het project en pad bevinden zich in het implementatieprofiel en de tabel Ontwikkelingsstappen in de ALM Accelerator-beheerapp.
Het pad naar de sjabloon is relatief ten opzichte van de hoofdmap van de locatie van de exportpijplijn. Het pad naar de standaard pijplijnsjabloon voor implementatie van de validatieomgeving is bijvoorbeeld /Pipelines/build-deploy-validation-SampleSolution.yml
. Als u een sjabloon wilt gebruiken in hetzelfde project als de exportpijplijn, geeft u het pad op als /Pipelines/build-deploy-validation-MyCustomTemplate.yml
.
In de volgende tabel worden tijdelijke aanduidingen in de sjablonen beschreven voor oplossingsspecifieke waarden die worden vervangen wanneer de implementatiepijplijn wordt gegenereerd.
Plaatsaanduiding | Omschrijving |
---|---|
SampleSolutionName | De naam van de te implementeren oplossing |
RepositoryContainingTheBuildTemplates | De repository met de bouwsjablonen die moeten worden gebruikt voor de implementatiepijplijn |
BranchContainingTheBuildTemplates | De branch met de bouwsjablonen die moeten worden gebruikt voor de implementatiepijplijn |
alm-accelerator-variable-group | De algemene variabelengroep die de buildsjablonen gebruiken voor de implementatiepijplijn |
We raden u aan een build-deploy-validation/test/prod-SampleSolution.yml
pijplijnsjabloon te kopiëren om aan de slag te gaan met uw eigen aangepaste sjabloon.
Voer aangepaste stappen uit in uw pijplijnen zonder de standaardsjablonen te wijzigen
De ALM Accelerator-pijplijnsjablonen bevatten verschillende uitbreidingspunten, of hooks, waarmee u de pijplijnen kunt aanpassen terwijl u de ruis van samenvoegconflicten in upgradescenario's minimaliseert. Meer informatie over ALM Accelerator-hooks.
Specifieke acties in de pijplijnen in- of uitschakelen
De pijplijnen gebruiken variabelen om te bepalen of een taak al dan niet moet worden uitgevoerd of welke van verschillende taken moet worden uitgevoerd. In de volgende tabel worden de variabelen beschreven die u voor een afzonderlijke pijplijn kunt instellen, of voor alle pijplijnen via de alm-accelerator-variable-group.
Notitie
Om deze variabelen in te stellen voor specifieke oplossingen bij het exporteren, maakt u een specifieke exportpijplijn op basis van de exportpijplijnsjabloon. Geef deze de naam export-solution-to-git-{SolutionName}
. De ALM Accelerator-app gebruikt deze exportpijplijn voor de oplossing in plaats van de algemene pijplijn export-solution-to-git.
Variabele | Default | Pipeline(s) | Omschrijving |
---|---|---|---|
GenerateDeploymentSettings | True | Export | Indien onwaar, worden de implementatie-instellingen niet gegenereerd en opgeslagen in broncodebeheer. |
UseDeploymentSettingsPlaceholders | True | Export | Indien onwaar, gebruiken de implementatie-instellingen geen tijdelijke aanduidingen en worden alle waarden voor de implementatie-instellingen opgeslagen in de deploymentSettings.json - en de customDeploymentSettings.json -bestanden.BELANGRIJK: Gevoelige informatie kan in uw implementatie-instellingen als platte tekst worden opgeslagen. Alle gebruikers met toegang tot bronbeheer kunnen deze waarden lezen. Let op als u een waarde voor deze variabele instelt. |
DisableFlows | False | Export | Indien waar, worden alle stromen uitgeschakeld in de uitgepakte broncode voordat ze worden vastgelegd. |
UseSolutionVersionFromDataverse | False | Export | Als dit waar is, wordt het versienummer dat in uw oplossing wordt geëxporteerd, bewaard in downstream-omgevingen. Het versienummer wordt weerspiegeld in uw bronbeheer wanneer de oplossingsbron is vastgelegd. |
DoNotExportCurrentEnvironmentVariableValues | False | Export | Indien waar, worden de waarden van de variabelen voor de huidige omgeving verwijderd uit de broncode voor de uitgepakte oplossing. |
PublishCustomizationsBeforeExport | True | Export | Indien onwaar, worden de aanpassingen niet gepubliceerd voordat de oplossing is geëxporteerd. Deze optie is handig als u in een gedeelde omgeving werkt en alleen de laatst gepubliceerde aanpassingen wilt exporteren. |
CacheEnabled | True | Exporteren of implementeren | Indien onwaar, wordt het cachen van PowerShell-modules uitgeschakeld. Deze optie is handig als uw pijplijnen de cachemap opschonen nadat de pijplijnen zijn uitgevoerd. |
ProcessCanvasApps | True | Exporteren of implementeren | Indien onwaar, worden de canvas-apps niet uitgepakt tijdens het exporteren of ingepakt tijdens het bouwen. OPMERKING: De functionaliteit voor het uitpakken en inpakken van het canvas bevindt zich momenteel in preview. Het wordt op dit moment niet aanbevolen voor gebruik in productieomgevingen. U kunt de canvas-broncode echter niet bekijken in broncodebeheer, tenzij u deze variabele instelt op True. |
DisableSolutionChecker | False | Implementeren | Indien waar, wordt de oplossingscontrole niet uitgevoerd op elke build die wordt gestart via een pull-aanvraag. |
SkipSolutionImport | False | Implementeren | Indien waar, wordt de stap voor het importeren van de oplossing overgeslagen tijdens de implementatie. Andere activiteiten zoals stroomactiveringen en delen worden echter nog steeds uitgevoerd. |