Taken in Microsoft Power Platform Build Tools
De beschikbare build-taken worden beschreven in de volgende secties. Daarna zullen we een voorbeeld laten zien van Azure DevOps-pipelines die gebruikmaken van deze taken. Zie Microsoft Power Platform Bouw Tools voor Azure DevOps voor informatie over de Build Tools en hoe u deze kunt downloaden.
Help-taak
De beschikbare helpertaken worden hieronder beschreven.
Power Platform-taak Installatieprogramma voor tool
Deze taak moet één keer worden toegevoegd voor andere Power Platform Build Tools-taken in build- en release-pipelines. Deze taak installeert een set Power Platform-specifieke hulpprogramma's die de agent nodig heeft om de Microsoft Power Platform-buildtaken uit te voeren. Deze taak vereist geen configuratie meer wanneer deze wordt toegevoegd, maar bevat parameters voor de specifieke versies van elk van de hulpprogramma's die worden geïnstalleerd.
Als u up-to-date wilt blijven met de toolversies, moet u ervoor zorgen dat deze parameters overeenkomen met de versies van de tools die nodig zijn om de pipeline correct te laten werken.
YAML-fragment (Installer)
# Installs default Power Platform Build Tools
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.tool-installer.PowerPlatformToolInstaller@0
displayName: 'Power Platform Tool Installer'
# Installs specific versions of the Power Platform Build Tools
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.tool-installer.PowerPlatformToolInstaller@0
displayName: 'Power Platform Tool Installer'
inputs:
DefaultVersion: false
XrmToolingPackageDeploymentVersion: 3.3.0.928
Parameters (Installer)
| Parameters | Beschrijving |
|---|---|
DefaultVersionStandaardversies van hulpprogramma's gebruiken |
Instellen op waar om de standaardversie van alle hulpprogramma's te gebruiken, anders op onwaar. Vereist (en onwaar) als er versies van hulpprogramma's zijn opgegeven. |
PowerAppsAdminVersionXrmToolingPackageDeploymentVersionMicrosoftPowerAppsCheckerVersionCrmSdkCoreToolsVersionVersie van hulpprogramma |
De specifieke versie van het hulpprogramma die gebruikt moet worden. |
Power Platform WhoAmI
Verifieert een Power Platform-omgevingsserviceverbinding door verbinding te maken en een WhoAmI-verzoek te doen. Deze taak kan handig zijn om vroeg in de pipeline op te nemen om de connectiviteit te verifiëren voordat de verwerking begint.
YAML-fragment (WhoAmI)
# Verifies an environment service connection
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.whoami.PowerPlatformWhoAmi@0
displayName: 'Power Platform WhoAmI'
inputs:
# Service Principal/client secret (supports MFA)
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'My service connection'
# Verifies an environment service connection
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.whoami.PowerPlatformWhoAmi@0
displayName: 'Power Platform WhoAmI'
inputs:
# Username/password (no MFA support)
PowerPlatformEnvironment: 'My service connection'
Parameters (WhoAmI)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Optioneel) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt voor de omgeving waarmee verbinding moet worden gemaakt. Gedefinieerd onder Serviceverbindingen in Projectinstellingen. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt voor de omgeving waarmee verbinding moet worden gemaakt. Gedefinieerd onder Serviceverbindingen in Projectinstellingen. |
Kwaliteitscontrole
Hieronder worden de beschikbare taken vermeld om de kwaliteit van een oplossing te controleren.
Power Platform-controle
Met deze taak wordt een statische analysecontrole uitgevoerd op uw oplossingen aan de hand van een reeks aanbevolen procedures om eventuele problematische patronen te identificeren die u mogelijk onbedoeld hebt geïntroduceerd bij het bouwen van uw oplossing.
YAM-fragment (controle)
# Static analysis check of your solution
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.checker.PowerPlatformChecker@0
displayName: 'Power Platform Checker '
inputs:
PowerPlatformSPN: 'Dataverse service connection'
RuleSet: '0ad12346-e108-40b8-a956-9a8f95ea18c9'
# Static analysis check of your solution
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.checker.PowerPlatformChecker@0
displayName: 'Power Platform Checker '
inputs:
PowerPlatformSPN: 'Dataverse service connection'
UseDefaultPACheckerEndpoint: false
CustomPACheckerEndpoint: 'https://japan.api.advisor.powerapps.com/'
FileLocation: sasUriFile
FilesToAnalyzeSasUri: 'SAS URI'
FilesToAnalyze: '**\*.zip'
FilesToExclude: '**\*.tzip'
RulesToOverride: 'JSON array'
RuleSet: '0ad12346-e108-40b8-a956-9a8f95ea18c9'
Parameters (controle)
| Parameters | Beschrijving |
|---|---|
PowerPlatformSPNServiceverbinding |
(Vereist) Een verbinding met een gelicentieerde Microsoft Power Platform-omgeving is vereist voor gebruik van de Power Platform-controle. Serviceverbindingen worden gedefinieerd in Serviceverbindingen onder Projectinstellingen via het Power Platform-verbindingstype. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving makenOpmerking: Service Principal is de enige verificatiemethode die beschikbaar is voor de controletaak, dus als u een gebruikersnaam/wachtwoord gebruikt voor alle andere taken, moet u een aparte verbinding maken voor gebruik met de controletaak. Zie De service principal-verbindingen configureren voor Power Platform-omgevingen voor meer informatie over het configureren van service-principals voor gebruik met deze taak. |
UseDefaultPACheckerEndpointGebruik standaard eindpunt voor Power Platform-controle |
Standaard (waar), gebruikt de geografische locatie van de controleservice dezelfde geografie als de omgeving waarmee u verbinding maakt. |
CustomPACheckerEndpointAangepast eindpunt van PAC-controle |
Vereist wanneer UseDefaultPACheckerEndpoint onwaar is. U hebt de optie om een andere geografische locatie op te geven die u wilt gebruiken, bijvoorbeeld https://japan.api.advisor.powerapps.com. Zie De API voor Power Platform-controle gebruiken voor een lijst met beschikbare geografische gebieden. |
FileLocationLocatie van te analyseren bestand(en) |
Vereist bij het verwijzen naar een bestand vanaf een Shared Access Signature (SAS) URL sasUriFile.Opmerking: het is belangrijk om naar een geëxporteerd oplossingsbestand te verwijzen en niet naar de uitgepakte bronbestanden in uw opslagplaats. Zowel beheerde als onbeheerde oplossingsbestanden kunnen worden geanalyseerd. |
FilesToAnalyzeSasUriSAS-bestanden om te analyseren |
Vereist wanneer FileLocation is ingesteld op sasUriFile. Voer de SAS-URI in. U kunt meer dan één SAS-URI toevoegen via een door komma's (,) of puntkomma's (;) gescheiden lijst. |
FilesToAnalyzeLokale bestanden om te analyseren |
Vereist wanneer SAS-bestanden niet worden geanalyseerd. Geef het pad en de bestandsnaam op van de .zip-bestanden die u wilt analyseren. U kunt jokertekens gebruiken. Voer bijvoorbeeld in **\*.zip in voor alle ZIP-bestanden in alle submappen. |
FilesToExcludeLokale bestanden om uit te sluiten |
Geef de namen op van bestanden die van de analyse moeten worden uitgesloten. Als er meer dan één zijn, geef dit dan aan in een door komma's (,) of puntkomma's (;) gescheiden lijst. Deze lijst kan een volledige bestandsnaam bevatten of een naam met voorloop- of volgjokertekens, zoals *jquery of form.js |
RulesToOverrideRegels om te overschrijven |
Een JSON-array met regels en niveaus die moeten worden overschreven. Geaccepteerde waarden voor OverrideLevel zijn: Kritiek, Hoog, Gemiddeld, Laag, Informatief. Voorbeeld: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}] |
RuleSetRegelset |
(Vereist) Geef op welke regelset u wilt toepassen. De volgende twee regelsets zijn beschikbaar:
|
ErrorLevelFoutniveau |
In combinatie met de drempelwaardeparameter voor fouten wordt de ernst van toegestane fouten en waarschuwingen gedefinieerd. Ondersteunde drempelwaarden zijn <level>IssueCount waarbij level=Kritiek, Hoog, Gemiddeld, Laag en Informatief. |
ErrorThresholdDrempelwaarde voor fouten |
Definieert het aantal fouten (>=0) van een bepaald niveau dat de controle mag passeren voor de oplossingen die worden gecontroleerd. |
FailOnPowerAppsCheckerAnalysisErrorNiet doorgaan bij fout |
Wanneer waar, dan mislukt als de Power Apps-controleanalyse wordt geretourneerd als Failed of FinishedWithErrors. |
ArtifactDestinationNameDevOps-artefactnaam |
Specificeer de Azure DevOps-artefactennaam voor het .sarif-bestand van de controle. |
Oplossingstaken
Deze set taken kan oplossingsacties automatiseren. De omgevingstaken die verderop in dit gedeelte worden beschreven en waarmee een omgeving wordt gemaakt, gekopieerd of hersteld, overschrijven de serviceverbindingen met de nieuw gemaakte omgevingen. Dit maakt het mogelijk om oplossingstaken uit te voeren voor omgevingen die op aanvraag worden gemaakt.
Power Platform-taak Oplossing importeren
Importeert een oplossing in een doelomgeving.
YAML-fragment (Import)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.import-solution.PowerPlatformImportSolution@0
displayName: 'Power Platform Import Solution '
inputs:
PowerPlatformEnvironment: 'My service connection'
SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
HoldingSolution: true
OverwriteUnmanagedCustomizations: true
SkipProductUpdateDependencies: true
ConvertToManaged: true
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.import-solution.PowerPlatformImportSolution@0
displayName: 'Power Platform Import Solution '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
AsyncOperation: true
MaxAsyncWaitTime: 60
PublishWorkflows: false
Parameters (Import)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de oplossing wilt importeren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de oplossing wilt importeren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
SolutionInputFileInvoerbestand voor oplossing |
(Vereist) Het pad en de bestandsnaam van het bestand solution.zip om in de doelomgeving te importeren (bijv. $(Build.ArtifactStagingDirectory)$(SolutionName).zip). Opmerking: variabelen zijn een handige manier om belangrijke stukjes gegevens in verschillende delen van uw pipeline te introduceren. Zie Vooraf gedefinieerde variabelen gebuiken voor een uitgebreide lijst. |
HoldingSolutionImporteren als tijdelijke oplossing |
Een geavanceerde parameter (waar|onwaar)die wordt gebruikt wanneer een oplossing moet worden geüpgraded. Deze parameter host de oplossing in Dataverse, maar de oplossing wordt pas geüpgraded als de taak Oplossingsupgrade toepassen is uitgevoerd. |
OverwriteUnmanagedCustomizationsOverschrijven van onbeheerde aanpassingen |
Geef op of niet-beheerde aanpassingen moeten worden overschreven (waar|onwaar). |
SkipProductUpdateDependenciesAfhankelijkheden van productupdates overslaan |
Geef op of het afdwingen van afhankelijkheden met betrekking tot productupdates moet worden overgeslagen (waar|onwaar). |
ConvertToManagedConverteren naar beheerd |
Geef aan of u wilt importeren als een beheerde oplossing (waar|onwaar). |
AsyncOperationAsynchrone import |
Indien geselecteerd (waar), wordt de importbewerking asynchroon uitgevoerd. Dit wordt aanbevolen voor grotere oplossingen omdat bij deze taak anders automatisch na 4 minuten een time-out optreedt. Als u asynchroon selecteert, wordt er gepeild en gewacht tot MaxAsyncWaitTime is bereikt (true|false). |
MaxAsyncWaitTimeMaximale wachttijd |
Maximale wachttijd in minuten voor de asynchrone bewerking; standaard is 60 min (1 uur), hetzelfde als Azure DevOps-standaard voor taken. |
PublishWorkflowsProcessen activeren na import |
Geef aan of er processen (werkstromen) in de oplossing moeten worden geactiveerd na het importeren (waar|onwaar). |
UseDeploymentSettingsFileBestand met implementatie-instellingen gebruiken |
Verbindingsverwijzingen en/of waarden van omgevingsvariabelen kunnen worden ingesteld met behulp van een bestand met implementatie-instellingen(waar|onwaar). |
DeploymentSettingsFileBestand met implementatie-instellingen |
(Vereist wanneer UseDeploymentSettingsFile=waar) Het pad en de bestandsnaam van het bestand met implementatie-instellingen. |
Power Platform Upgrade van oplossing toepassen
Upgradet een oplossing die is geïmporteerd als een tijdelijke oplossing.
YAML-fragment (Upgrade)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.apply-solution-upgrade.PowerPlatformApplySolutionUpgrade@0
displayName: 'Power Platform Apply Solution Upgrade '
inputs:
PowerPlatformEnvironment: 'My service connection'
SolutionName: 'Contoso_sample'
AsyncOperation: false
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.apply-solution-upgrade.PowerPlatformApplySolutionUpgrade@0
displayName: 'Power Platform Apply Solution Upgrade '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
SolutionName: 'Contoso_sample'
MaxAsyncWaitTime: 45
Parameters (Upgrade)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de oplossing wilt upgraden (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de oplossing wilt upgraden (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
SolutionNameOplossingsnaam |
(Vereist) De naam van de oplossing om de upgrade op toe te passen. Gebruik altijd de Naam van de oplossing, niet de Weergavenaam. |
AsyncOperationAsynchrone upgrade |
Indien geselecteerd (waar), wordt de upgradebewerking als een asynchrone batchtaak uitgevoerd. Als u asynchroon selecteert, wordt er gepeild en gewacht tot MaxAsyncWaitTime is bereikt. |
MaxAsyncWaitTimeMaximale wachttijd |
Maximale wachttijd in minuten voor de asynchrone bewerking; standaard is 60 min (1 uur), hetzelfde als Azure DevOps-standaard voor taken. |
Notitie
Variabelen zijn een handige manier om belangrijke stukjes gegevens in verschillende delen van uw pijplijn te introduceren. Zie Vooraf gedefinieerde variabelen gebuiken voor een uitgebreide lijst. U kunt informatie over verbindingsreferenties en omgevingsvariabelen vooraf invullen voor de doelomgeving terwijl u een oplossing importeert met behulp van een bestand met implementatie-instellingen.
Meer informatie: Vooraf verbindingsreferenties en omgevingsvariabelen invullen voor geautomatiseerde implementatiesPower Platform-taak Oplossing exporteren
Exporteert een oplossing vanuit een bronomgeving.
YAML-fragment (Export)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.export-solution.PowerPlatformExportSolution@0
displayName: 'Power Platform Export Solution '
inputs:
PowerPlatformEnvironment: 'My service connection'
SolutionName: 'Contoso_sample'
SolutionOutputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
Managed: true
MaxAsyncWaitTime: 120
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.export-solution.PowerPlatformExportSolution@0
displayName: 'Power Platform Export Solution '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
SolutionName: 'Contoso_sample'
SolutionOutputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
Managed: true
MaxAsyncWaitTime: 120
ExportAutoNumberingSettings: true
ExportCalendarSettings: true
ExportCustomizationSettings: true
ExportEmailTrackingSettings: true
ExportGeneralSettings: true
ExportIsvConfig: true
ExportMarketingSettings: true
ExportOutlookSynchronizationSettings: true
ExportRelationshipRoles: true
ExportSales: true
Parameters (Export)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de oplossing wilt upgraden (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de oplossing wilt upgraden (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
SolutionNameOplossingsnaam |
(Vereist) De naam van de te exporteren oplossing. Gebruik altijd de Naam van de oplossing, niet de Weergavenaam. |
SolutionOutputFileUitvoerbestand voor oplossing |
(Vereist) Het pad en de bestandsnaam van het bestand solution.zip om naar de doelomgeving te exporteren (bijv. $(Build.ArtifactStagingDirectory)$(SolutionName).zip). Opmerking: variabelen zijn een handige manier om belangrijke stukjes gegevens in verschillende delen van uw pipeline te introduceren. Zie Vooraf gedefinieerde variabelen gebuiken voor een uitgebreide lijst. |
AsyncOperationAsynchrone export |
Indien geselecteerd (waar), wordt de exportbewerking als een asynchrone batchtaak uitgevoerd. Als u asynchroon selecteert, wordt er gepeild en gewacht tot MaxAsyncWaitTime is bereikt. |
MaxAsyncWaitTimeMaximale wachttijd |
Maximale wachttijd in minuten voor de asynchrone bewerking; standaard is 60 min (1 uur), hetzelfde als Azure DevOps-standaard voor taken. |
ManagedExporteren als beheerd |
Indien geselecteerd (waar), exporteer de oplossing dan als een beheerde oplossing; exporteer anders als een onbeheerde oplossing. |
ExportAutoNumberingSettingsInstellingen voor automatische nummering exporteren |
Instellingen voor automatische nummering exporteren (waar|onwaar). |
ExportCalendarSettingsAgendainstellingen exporteren |
Agendainstellingen exporteren (waar|onwaar). |
ExportCustomizationSettingsAanpassingsinstellingen exporteren |
Aanpassingsinstellingen exporteren (waar|onwaar). |
ExportEmailTrackingSettingsInstellingen voor e-mailtracering exporteren |
Instellingen voor e-mailtracering exporteren (waar|onwaar). |
ExportGeneralSettingsAlgemene instellingen exporteren |
Algemene instellingen exporteren (waar|onwaar). |
ExportIsvConfigISV-configuratie exporteren |
ISV-configuratie exporteren (waar|onwaar). |
ExportMarketingSettingsMarketinginstellingen exporteren |
Marketinginstellingen exporteren (waar|onwaar). |
ExportOutlookSynchronizationSettingsInstellingen voor Outlook-synchronisatie exporteren |
Instellingen voor Outlook-synchronisatie exporteren (waar|onwaar). |
ExportRelationshipRolesRelatierollen exporteren |
Relatierollen exporteren (waar|onwaar). |
ExportSalesVerkoop exporteren |
Verkoop exporteren (waar|onwaar). |
Power Platform-taak Oplossing uitpakken
Hierbij wordt een gecomprimeerd oplossingsbestand uitgepakt in meerdere XML-bestanden en andere bestanden, zodat deze bestanden eenvoudiger kunnen worden gelezen en beheerd door een bronbeheersysteem.
YAML-fragment (Unpack)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.unpack-solution.PowerPlatformUnpackSolution@0
displayName: 'Power Platform Unpack Solution '
inputs:
SolutionInputFile: 'C:\Public\Contoso_sample_1_0_0_1_managed.zip'
SolutionTargetFolder: 'C:\Public'
SolutionType: Both
Parameters (Unpack)
| Parameters | Beschrijving |
|---|---|
SolutionInputFileInvoerbestand voor oplossing |
(Vereist) Het pad en de bestandsnaam van het bestand solution.zip dat u wilt uitpakken. |
SolutionTargetFolderDoelmap waarin u de oplossing wilt uitpakken |
(Vereist) Het pad en de doelmap waarin u de oplossing wilt uitpakken. |
SolutionTypeType oplossing |
(Vereist) Het type oplossing dat u wilt uitpakken. Opties zijn onder meer: Onbeheerd (aanbevolen), Beheerd en Beide. |
Power Platform-taak Oplossing verpakken
Hiermee wordt een oplossing verpakt die wordt weergegeven in bronbeheer in het bestand solution.zip, dat in een andere omgeving kan worden geïmporteerd.
YAML-fragment (Pack)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.pack-solution.PowerPlatformPackSolution@0
displayName: 'Power Platform Pack Solution '
inputs:
SolutionSourceFolder: 'C:\Public'
SolutionOutputFile: 'Contoso_sample_1_0_0_1_managed.zip'
SolutionType: Managed
Parameters (Pack)
| Parameters | Beschrijving |
|---|---|
SolutionOutputFileUitvoerbestand voor oplossing |
(Vereist) Het pad en de bestandsnaam van het bestand solution.zip waarin de oplossing moet worden verpakt. |
SolutionSourceFolderBronmap van de in te pakken oplossing |
(Vereist) Het pad en de bronmap van de in te pakken oplossing. |
SolutionTypeType oplossing |
(Vereist) Het type oplossing dat u wilt verpakken. Opties zijn onder meer: Onbeheerd (aanbevolen), Beheerd en Beide. |
Power Platform Oplossing verwijderen
Verwijdert een oplossing in de doelomgeving.
YAML-fragment (Delete)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.delete-solution.PowerPlatformDeleteSolution@0
displayName: 'Power Platform Delete Solution '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
SolutionName: 'Contoso_sample'
Parameters (Delete)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de oplossing wilt verwijderen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de oplossing wilt verwijderen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
SolutionNameOplossingsnaam |
(Vereist) De naam van de oplossing die moet worden verwijderd. Gebruik altijd de Naam van de oplossing, niet de Weergavenaam. |
Power Platform-taak Aanpassingen publiceren
Publiceert alle aanpassingen in een omgeving.
YAML-fragment (Publish)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.publish-customizations.PowerPlatformPublishCustomizations@0
displayName: 'Power Platform Publish Customizations '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
Parameters (Publish)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de aanpassingen wilt publiceren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de aanpassingen wilt publiceren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
Power Platform-taak Versie van oplossing instellen
Werkt de versie van een oplossing bij.
YAML-fragment (Version)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.set-solution-version.PowerPlatformSetSolutionVersion@0
displayName: 'Power Platform Set Solution Version '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
SolutionName: 'Contoso_sample'
SolutionVersionNumber: 1.0.0.0
Parameters (Version)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de oplossingsversie wilt instellen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de oplossingsversie wilt instellen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
SolutionNameOplossingsnaam |
(Vereist) De naam van de oplossing waarvoor u de versie wilt instellen. Gebruik altijd de Naam van de oplossing, niet de Weergavenaam. |
SolutionVersionNumberVersienummer van oplossing |
(Vereist) Versienummer dat u wilt instellen. |
Hoewel het versienummer in de pipeline hard kan worden gecodeerd, wordt aanbevolen om een Azure DevOps-pipeline-variabele zoals BuildId te gebruiken. Dit biedt opties om de exacte vorm van het versienummer te definiëren op het tabblad "Opties", bijvoorbeeld: $(Year:yyyy)-$(Month:MM)-$(Day:dd)-$(rev:rr)-3
Deze definitie kan vervolgens worden gebruikt in de taak Oplossingsversie instellen door de eigenschap Versienummer in te stellen met: $(Build.BuildId) in plaats van harde codering 20200824.0.0.2.
Als alternatief de uitvoer van een PowerShell inline taakscript $(Get-Date -Format yyyy.MM.dd.HHmm) ingesteld op lege variabele met de naam SolutionVersion als Write-Host ("##vso[task.setvariable variable=SolutionVersion;]$version"), oplossingsversie instellen als $(SolutionVersion).
Power Platform-taak Pakket implementeren
Implementeert een pakket naar een omgeving. Door een pakket te implementeren in plaats van één oplossingsbestand, kunt u meerdere oplossingen, gegevens en code in een omgeving implementeren.
YAML-fragment (Deploy)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.deploy-package.PowerPlatformDeployPackage@0
displayName: 'Power Platform Deploy Package '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
PackageFile: 'C:\Users\Public\package.dll'
MaxAsyncWaitTime: 120
Parameters (Deploy)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u het pakket wilt implementeren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u het pakket wilt implementeren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. Meer informatie: zie BuildTools.EnvironmentUrl onder Power Platform Omgeving maken |
PackageFilePakketbestand |
(Vereist) Het pad en de bestandsnaam van de pakketbestandsassembly (.dll). |
MaxAsyncWaitTimeMaximale wachttijd |
Maximale wachttijd in minuten voor de asynchrone bewerking; standaard is 60 min (1 uur), hetzelfde als Azure DevOps-standaard voor taken. |
Omgevingsbeheertaken
Automatiseer algemene taken voor het beheer van de omgevingslevenscyclus (ELM).
Power Platform-taak Omgeving maken
Maak een nieuwe omgeving. Met het maken van een nieuwe omgeving wordt ook automatisch BuildTools.EnvironmentUrl gemaakt.
Belangrijk
Wanneer ingesteld, zal BuildTools.EnvironmentUrl worden gebruikt als de standaardserviceverbinding voor volgende taken in de pipeline. Elke taak die in dit artikel wordt beschreven, gebruikt alleen het eindpunt van de serviceverbinding wanneer BuildTools.EnvironmentUrl is niet ingesteld.
YAML-fragment (Create-env)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.create-environment.PowerPlatformCreateEnvironment@0
displayName: 'Power Platform Create Environment '
inputs:
PowerPlatformEnvironment: 'My service connection'
DisplayName: 'First Coffee test'
DomainName: firstcoffee
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.create-environment.PowerPlatformCreateEnvironment@0
displayName: 'Power Platform Create Environment '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
DisplayName: 'First Coffee prod'
EnvironmentSku: Production
AppsTemplate: 'D365_CustomerService,D365_FieldService'
LocationName: canada
LanguageName: 1036
CurrencyName: ALL
DomainName: firstcoffee
Parameters (Create-env)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de omgeving wilt maken (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de omgeving wilt maken (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
DisplayNameWeergavenaam |
(Vereist) De weergavenaam van de gemaakte omgeving. |
LocationNameImplementatieregio |
(Vereist) De regio waarin de omgeving moet worden gemaakt. |
EnvironmentSkuType omgeving |
(Vereist) Het type exemplaar dat moet worden geïmplementeerd. Opties zijn: Sandbox, Productie, Proefversie en SubscriptionBasedTrial. |
AppsTemplateApps |
Voor een niet-proefomgevingstype zijn de ondersteunde apps D365_CustomerService, D365_FieldService, D365_ProjectServiceAutomation en D365_Sales. |
CurrencyNameValuta |
(Vereist) Basisvaluta voor de gemaakte omgeving. De valuta kan niet worden bijgewerkt nadat de omgeving is gemaakt. |
LanguageNameLanguage |
(Vereist) De basistaal in de omgeving. |
DomainNameDomeinnaam |
(Vereist) Dit is de omgevingsspecifieke tekenreeks die deel uitmaakt van de URL. Voor bijvoorbeeld een omgeving met de volgende URL: https://powerappsbuildtasks.crm.dynamics.com zou de domeinnaam powerappsbuildtasks zijn. Opmerking: als u een domeinnaam invoert die al in gebruik is, voegt de taak een numerieke waarde toe aan de domeinnaam, beginnend met 0. Voor het bovenstaande voorbeeld zou de URL https://powerappsbuildtasks0.crm.dynamics.com worden. |
Power Platform-taak Omgeving verwijderen
Hiermee verwijdert u een omgeving.
YAML-fragment (Delete-env)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.delete-environment.PowerPlatformDeleteEnvironment@0
displayName: 'Power Platform Delete Environment '
inputs:
PowerPlatformEnvironment: 'My service connection'
Parameters (Delete-env)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u de omgeving wilt verwijderen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u de omgeving wilt verwijderen (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
Power Platform-taak Back-up maken van omgeving
Hiermee wordt een back-up van een omgeving gemaakt.
YAML-fragment (Backup-env)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.backup-environment.PowerPlatformBackupEnvironment@0
displayName: 'Power Platform Backup Environment '
inputs:
PowerPlatformEnvironment: 'My service connection'
BackupLabel: 'Full backup - $(Build.BuildNumber)'
Parameters (Backup-env)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt waarin u een back-up van de omgeving wilt maken (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt waarin u een back-up van de omgeving wilt maken (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
BackupLabelBack-uplabel |
(Vereist) Het label dat aan de back-up moet worden toegewezen. |
Power Platform-taak Omgeving kopiëren
Hiermee wordt een omgeving naar een doelomgeving gekopieerd. Er zijn twee soorten kopieën beschikbaar: volledig en minimaal. Een volledige kopie bevat zowel gegevens als oplossingsmetagegevens (aanpassingen), terwijl een minimale kopie alleen metagegevens van de oplossing en niet de feitelijke gegevens bevat.
YAML-fragment (Copy-env)
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.copy-environment.PowerPlatformCopyEnvironment@0
displayName: 'Power Platform Copy Environment '
inputs:
PowerPlatformEnvironment: 'My service connection'
TargetEnvironmentUrl: 'https://contoso-test.crm.dynamics.com'
steps:
- task: microsoft-IsvExpTools.PowerPlatform-BuildTools.copy-environment.PowerPlatformCopyEnvironment@0
displayName: 'Power Platform Copy Environment '
inputs:
authenticationType: PowerPlatformSPN
PowerPlatformSPN: 'Dataverse service connection '
TargetEnvironmentUrl: 'https://contoso-test.crm.dynamics.com'
CopyType: MinimalCopy
OverrideFriendlyName: true
FriendlyName: 'Contoso Test'
DisableAdminMode: false
Parameters (Copy-env)
| Parameters | Beschrijving |
|---|---|
authenticationTypeType verificatie |
(Vereist voor SPN) Geef een van beide op: PowerPlatformEnvironment voor een verbinding van gebruikersnaam/wachtwoord of PowerPlatformSPN voor een verbinding van service principal/clientgeheim. |
PowerPlatformEnvironmentPower Platform-omgevings-URL |
Het service-eindpunt voor de bronomgeving waaruit u de oplossing wilt kopiëren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
PowerPlatformSPNPower Platform Service Principal |
Het service-eindpunt voor de bronomgeving waaruit u de oplossing wilt kopiëren (bijvoorbeeld https://powerappsbuildtools.crm.dynamics.com). Gedefinieerd onder Serviceverbindingen in Projectinstellingen met verbindingstype Power Platform. |
TargetEnvironmentUrlURL van doelomgeving |
(Vereist) De URL voor de doelomgeving waarnaar u wilt kopiëren. |
CopyTypeType kopie |
Het type kopie dat u wilt uitvoeren: FullCopy of MinimalCopy |
OverrideFriendlyNameBeschrijvende naam overschrijven |
Wijzig de beschrijvende naam van de doelomgeving in een andere naam (waar|onwaar). |
FriendlyNameBeschrijvende naam |
De beschrijvende naam van de doelomgeving. |
DisableAdminModeBeheermodus uitschakelen |
Of de beheermodus moet worden uitgeschakeld (waar|onwaar). |
Pijplijnen voor maken en vrijgeven
Nu we hebben vastgesteld wat er met de build-tools kan worden gedaan, gaan we kijken hoe u deze tools kunt toepassen op uw build- en release-pijplijnen. Hieronder vindt u een conceptueel overzicht. In de volgende subsecties bekijken we een aantal details van de pipeline-implementatie met behulp van de taken voor Build Tools.
Als u meer wilt weten over het maken van deze pipelines en het daadwerkelijk maken van pipelines met behulp van de Microsoft Power Platform Build Tools, volgt u de labs voor Build Tools. U kunt deze downloaden van GitHub.
Meer informatie over Azure DevOps-pijpleidingen: Azure Pipelines
Build-pipeline: Een oplossing exporteren vanuit een ontwikkelomgeving (DEV)
De volgende afbeelding toont de taken van de build-tool die u zou kunnen toevoegen aan een pijplijn die een oplossing exporteert vanuit een ontwikkelomgeving.

Build-pipeline: Bouw een beheerde oplossing
De volgende afbeelding toont de taken van de build-tool die u zou kunnen toevoegen aan een pijplijn die een beheerde oplossing bouwt.

Release-pipeline: Implementeren naar een productieomgeving (PROD)
De volgende afbeelding toont de taken van de build-tool die u zou kunnen toevoegen aan een pijplijn die implementeert naar een productieomgeving.
