Konfigurera pipelines för ALM Accelerator
Pipelines är motorn i ALM Accelerator. De automatiserar ALM-processen för Power Platform. De skapas med Azure Pipelines, en tjänst för Azure DevOps och lagras i ett Azure DevOps-projekt.
Fyra huvudpipelines används för att automatisera ALM-process:
- Import
- Export
- Delete
- Skapa/distribuera
Pipelines är utformade för användning med arbetsyteappen ALM Accelerator. Du behöver inte använda appen, men vi rekommenderar den. Appen har ett enkelt gränssnitt mot pipelines och ett sätt att konfigurera dem utan att behöva förstå de underliggande parametrarna.
Vanliga ALM Accelerator pipelinescenarier
ALM Accelerator pipelines och program har standardkonfigurationer som gör att du snabbt kan komma igång med ALM för Power Platform. Pipelines kan omfatta många olika ALM-scenarier som uppfyller organisationens krav. I följande avsnitt beskrivs några vanliga scenarier och hur de kan ses över via pipelinekonfiguration, distributionsprofiler och steg i appen ALM Accelerator eller direkt via pipelinen.
Installera pipelines i ett projekt och källkoden i ett annat projekt
I appen ALM Accelerator och i distributionsprofiler kan du ange ett pipelineprojekt och ett källprojekt. Med ett alternativ i installationsguiden kan du ange ett separat pipelineprojekt och en separat lagringsdatabas. De här alternativen är användbara om du vill segmentera lagringen av lösningar baserat på användare, företagsstruktur eller andra faktorer. I de flesta fall lagras pipeline-YAML-filerna i pipeline-projektet och export, import och ta bort pipelines skapas i det projekt där lösningen är källkontrollerad.
Kör pipelines utan ALM Accelerator
Med appen ALM Accelerator är det enkelt att använda knappar för att köra pipelines. Men du behöver inte appen för att köra dem. Om du vill använda pipelines oberoende av appen kör du dem direkt från kommandoraden. Du kan även skapa din egen app. Använd en anpassad anslutning för Azure DevOps API, ingår i ALM Accelerator-lösningen, för att anropa pipelines med hjälp av Power Automate eller andra Power Platform tekniker.
I båda fallen är nyckeln till att förstå parametrarna som skickas till dem, om du vill använda pipelines oberoende.
Pipelineparametrar
Parametrar för import-unmanaged-to-dev-environment: Använd importlösningens pipeline för att importera en ohanterad lösning från källkontrollen till en utvecklingsmiljö.
Följande tabell beskriver importpipelinens parametrar.
Parameter | Exempel | Beskrivning |
---|---|---|
Project | Mina Azure DevOps-projekt | Namnet på det projekt som lösningen ska importeras till |
Lagringsplats | Min Azure DevOps lagringsplats | Namnet på den lagringsplats som lösningen ska importeras från |
SolutionName | MySolutionName | Namnet på lösningen som ska importeras |
me@example.com | E-postadressen till användaren som importerar lösningen | |
UserName | Senast, först | Användarnamnet för användaren som importerar lösningen |
Filial | huvud- | Den gren där lösningen ska byggas och importeras från |
ServiceConnectionName | MyServiceConnection | Namnet på tjänstanslutningen som ska användas för importen |
ServiceConnectionUrl | example.crm.dynamics.com | URL för utvecklarmiljön för importen |
EnvironmentName | MyDevEnvironment | Används för att hitta distributionsinställningarna i distributionspipelinen, returnerar ett mappnamn under config-katalogen i lösningskällan |
Parametrar för delete-unmanaged-solution-and-components: Använd pipelinen för borttagningslösning för att ta bort en ohanterad lösning och alla dess komponenter från en utvecklingsmiljö.
Följande tabell beskriver parametrar för att ta bort pipeline.
Parameter | Exempel | Beskrivning |
---|---|---|
SolutionName | MySolutionName | Namnet på lösningen som ska tas bort |
ServiceConnectionName | MyServiceConnection | Namnet på tjänstanslutningen som ska användas för lösningen som ska tas bort |
ServiceConnectionUrl | example.crm.dynamics.com | URL för utvecklarmiljön för den lösning som ska tas bort |
Parametrar för export-solution-to-git: Använd pipelinen för exportlösning för att exportera lösningen till en Git-lagringsplats.
Följande tabell beskriver exportpipelinens parametrar.
Parameter | Exempel | Beskrivning |
---|---|---|
Project | Mina Azure DevOps-projekt | Namnet på det projekt för att exportera lösningens källkod till |
Lagringsplats | Min Azure DevOps lagringsplats | Namnet på den lagringsplats för att exportera lösningens källkod till |
SolutionName | MySolutionName | Namnet på lösningen som ska exporteras |
me@example.com | E-postadressen till användaren som exporterar lösningen | |
UserName | Senast, först | Användarnamnet för användaren som exporterar lösningen |
CommitMessage | Felkorrigering #1234 | En beskrivning av ändringarna som ska lagras i lagringsplats |
Filial | huvud- | Antingen källgrenen som ska skapa en gren från eller den befintliga grenen för att skapa |
BranchToCreate | funktionen-1234 | Det unika namnet på en ny gren som ska skapas baserat på Branch parametern, om det behövs |
ServiceConnectionName | MyServiceConnection | Namnet på tjänstanslutningen som ska användas för lösningsexporten |
ServiceConnectionUrl | example.crm.dynamics.com | URL för utvecklarmiljön för den ohanterade lösning som ska exporteras |
Data | [Distributionsinställningar JSON] | En JSON-sträng som innehåller de distributionsinställningar som ska användas för export och konfigurering av distributionspipelines |
PortalSiteName | MyPortalSite | Namnet på Power Pages webbplatsen som är associerad med den lösning som ska exporteras |
Anpassa versionshanteringen av lösningar när du exporterar eller distribuerar dem med av ALM Accelerator-pipelines
Som standard versionshanteras exporterade och distribuerade lösningar med det namn som anges i distributionspipeline YAML-fil. Med ALM Accelerator-pipelines kan du emellertid anpassa versionshanteringen av en lösning när du exporterar eller distribuerar den. Följande avsnitt beskriver de metoder du kan använda.
Exporterad versionshantering
Använd versionsnumret som exporteras av pipelines som versionsnumret i alla distribuerade miljöer. Skapa en variabel med namnet UseSolutionVersionFromDataverse i din exportpipeline eller en global variabel i variabelbiblioteket för ALM Accelerator. Ge det värdet Sant. Variabeln säkerställer att versionsnumret som exporteras i lösningen bevaras i miljöer nedströms och återspeglas i källkontrollen när lösningskällan används.
Anpassad versionshanteringslogik
Ange en version av lösningen med hjälp av ALM Accelerator. Lägg till anpassade logik i build-solution-pack-pre-hook.yml
mallen för att ändra Solution.xml
direkt eller med andra verktyg som till exempel pac-lösningsversion.
Anpassad versionshantering av ta med dina egna mallar
Möjligheten att ta med egna mallar för att skapa distributionspipelines ger flexibilitet för versionshantering vid den första exporten av en lösning. Du kan till exempel skapa en kopia av en build-deploy-validation/test/prod-SampleSolution.yml
och ändra versionsnamnet från standard till en versionsstrategi baserat på konfigurera körnings- eller versionsnummer:
build:
- name: 1.0.$(Date:yyyyMMdd)$(Rev:.r)
...
När mallarna är på plats uppdaterar du distributionsstegen i distributionsprofilen så att de pekar på dem.
Anpassa antalet distributionssteg i dina pipelines och namnen på målmiljöerna
Liknande anpassad versionshantering med mallar ger möjligheten att ta med egna mallar för att skapa distributionspipelines mer flexibilitet vid den första exporten av en lösning. Ange i vilket projekt mallarna finns och sökvägen till den mall som ska användas för att skapa distributionspipelinen. Inställningarna för projektet och sökvägen finns i distributionsprofilen och tabellen distributionssteg i administrationsappen ALM Accelerator.
Sökvägen till mallen är relativ i förhållande till roten till platsen för exportpipelinen. Sökvägen till standardmallarna för distributionspipeline för valideringsmiljön är till exempel /Pipelines/build-deploy-validation-SampleSolution.yml
. Om du vill använda en mall i samma projekt som exportpipelinen anger du sökvägen som /Pipelines/build-deploy-validation-MyCustomTemplate.yml
.
I följande tabell beskrivs platshållare i mallarna för lösningsspecifika värden som ersätts när distributionspipelinen skapas.
Platshållare | Beskrivning |
---|---|
SampleSolutionName | Namnet på lösningen som ska distribueras |
RepositoryContainingTheBuildTemplates | Förvaret som innehåller de byggmallar som ska användas för distributionspipelinen |
BranchContainingTheBuildTemplates | Förgrening som innehåller de byggmallar som ska användas för distributionspipelinen |
alm-accelerator-variable-group | Den globala variabelgruppen i versionsmallarna använder för distributionspipelinen |
Vi rekommenderar att du kopierar en build-deploy-validation/test/prod-SampleSolution.yml
pipelinemall för att komma igång med din egen anpassade mall.
Kör anpassade steg i pipelines utan att ändra standardmallarna
Pipelinemallarna för ALM Accelerator har flera anknytningspunkter, eller hookar, som du kan använda för att anpassa pipelines samtidigt som du minimerar bruset från sammanslagningskonflikter i uppgraderingsscenarier. Läs mer om ALM Accelerator-krokar.
Aktivera eller inaktivera specifika åtgärder i pipelines
Pipelines använder variabler för att avgöra om en uppgift ska köras eller inte, eller vilken uppgift av flera möjligheter som ska utföras. I följande tabell beskrivs de variabler du kan ange för en enskild pipeline eller, genom alm-accelerator-variable-group, alla pipelines.
Kommentar
Om du vill ange dessa variabler för specifika lösningar vid export skapar du en specifik exportpipeline utifrån mallen för exportpipelinen. Ge den namnet export-solution-to-git-{SolutionName}
. Appen ALM Accelerator använder den här exportpipelinen för lösningen i stället för general-purpose export-solution-to-git pipeline.
Variabel | Default | Pipeline(s) | Beskrivning |
---|---|---|---|
GenerateDeploymentSettings | Sant | Export | Om falskt skapas och lagras inte distributionsinställningarna i källkontrollen. |
UseDeploymentSettingsPlaceholders | Sant | Export | Om värdet är falskt används inte platshållare i distributionsinställningarna och alla värden för distributionsinställningarna sparas i filerna deploymentSettings.json och customDeploymentSettings.json .VIKTIGT: Känslig information kan sparas i oformaterad text i distributionsinställningarna. Alla användare med åtkomst till källkontroll kan läsa de här värdena. Var försiktig om du anger ett värde för variabeln. |
DisableFlows | Falsk | Export | Om sant är alla flöden avstängda i den uppackade källkoden innan de används. |
UseSolutionVersionFromDataverse | Falsk | Export | Om det är sant behålls versionsnumret som exporteras i lösningen i miljöer nedströms. Versionsnumret återspeglas i källkontrollen när lösningskällan används. |
DoNotExportCurrentEnvironmentVariableValues | Falsk | Export | Om det är sant tas variabelvärdena för den aktuella miljön bort från källkoden för den uppackade lösningen. |
PublishCustomizationsBeforeExport | Sant | Export | Om falskt publiceras inte anpassningarna innan lösningen exporteras. Det här alternativet är användbart om du arbetar i en delad miljö och bara vill exportera de senaste publicerade anpassningarna. |
CacheEnabled | Sant | Exportera/distribuera | Om falskt cachelagras PowerShell-moduler inaktiveras. Det här alternativet är användbart om dina pipelines utför rensning av cachekatalogen efter att pipelines har körts. |
ProcessCanvasApps | Sant | Exportera/distribuera | Om falsk, ska arbetsyteappar inte packas upp under export eller inte under versioner. OBS: Funktionen för uppackning och packning av duken är för närvarande i förhandsversion. Den rekommenderas inte för användning i produktionsmiljöer för närvarande. Däremot kan du inte visa arbetsytans källkod i källkontrollen om du inte anger variabeln som Sant. |
DisableSolutionChecker | Falsk | Distribuera | Om sant körs inte lösningskontrollen på alla versioner som startas via en pull-begäran. |
SkipSolutionImport | Falsk | Distribuera | Om sant, hoppas lösningsimportsteget över under distributionen. Andra aktiviteter, t.ex. flödesaktiveringar och delning, utförs fortfarande. |