Power Platform ALM and Pipelines Implementation
Power Platform ALM and Pipelines Implementation turns the Power Apps, Power Automate flows and Copilot Studio agents your makers built straight into the default environment into a governed development, test and production solution lifecycle. In three weeks IT Partner designs and builds the environment set with Dataverse, enables Managed Environments where your licences cover the users, installs pipelines in Power Platform with a pre-deployment approval before production, restructures one pilot solution properly — your publisher, solution layering, connection references and environment variables — connects the development environment to source control through Dataverse Git integration (Azure DevOps generally available; GitHub as a Microsoft preview feature at the time of writing), promotes that pilot solution end to end as a managed solution, and hands over a deployment runbook and one-page maker guidance. $3,950 per project, fixed, quoted in writing before work begins; you pay after you approve delivery. The premium Power Platform licences for the people who use managed environments, and the Dataverse capacity the environments draw on, are yours — and are named in writing before anything is switched on.
What this engagement is
The pattern is the same in almost every tenant we open: the apps and flows the business actually depends on live in the default environment, were built by the people who needed them, and are edited in place — which means production is also the development environment. There is no test stage, no approval before a change goes live, no record of what changed, and no way back when a flow edit breaks an order process on a Friday afternoon. Connections belong to the maker who created them, so a departure is an outage; a copied app is the backup strategy. None of this is the makers' fault. It is the absence of application lifecycle management — the discipline pro-code teams take for granted — on a platform that now runs business-critical work. This engagement implements that lifecycle with the tooling Microsoft ships in the platform, not a bolt-on. Development, test and production environments, each with a Dataverse database, give a solution somewhere to be built, somewhere to be checked and somewhere to run. Pipelines in Power Platform — a custom host environment carrying the Power Platform Pipelines application, with stages bound to test and production — let a maker request a deployment from inside the maker portal while the deployment itself runs under a service principal or the stage owner's identity, so nobody needs edit rights in production to ship to it; a pre-deployment step on the production stage routes the request to a named approver through a Power Automate approval before anything lands. Dataverse Git integration binds the development environment to a repository, so every change to the solution is committed, diffable and reviewable. Azure DevOps is generally available for it; GitHub is offered by Microsoft as a preview feature at the time of writing and needs a GitHub App with its private key held in an Azure Key Vault, so we recommend it only where your developers already live in GitHub and accept a preview. Inside the solution we do the unglamorous work that makes promotion repeatable: a publisher with your prefix, connection references instead of personal connections, environment variables instead of hard-coded site URLs and IDs, and dependencies resolved so the solution imports as managed into test and production without hand edits. Licensing is where these projects stall, so we put it first. Pipelines require every target environment to be a Managed Environment, and Dataverse Git integration requires the development environment to be one as well — so in the lifecycle this page delivers, every environment ends up managed. Microsoft's rule for managed environments is that every user who runs an app or flow in one holds a qualifying premium licence: Power Apps Premium, Power Apps per app, Power Automate Premium, pay-as-you-go, or a Dynamics 365 enterprise licence — Microsoft 365 seeded rights are not enough. Microsoft began notifying administrators of unlicensed use through the Microsoft 365 Message center in March 2026, started in-product notices to end users in June 2026, and states that from February 2027 unlicensed users are blocked from opening apps in managed environments. We read your entitlements against the pilot solution's user list in week one, tell you in writing who needs what, and enable Managed Environments only where the people are covered. The licences themselves and the Dataverse capacity the new environments consume are yours to buy — at Microsoft's list price through us or through anyone else. Boundaries, drawn honestly. This is the solution lifecycle, not the whole operating model: tenant-wide environment strategy, data loss prevention policies, environment routing, orphan cleanup and the Center of Excellence are Power Platform Governance and Center of Excellence Setup, and the two fit together — governance decides where things live, ALM decides how they move. Running the environments month to month afterwards is Managed Power Platform Governance and Support. Pro-code teams shipping .NET, containers or infrastructure to Azure want Azure DevOps and GitHub CI/CD Pipeline Implementation, which shares the platform choice with this service and nothing else. And we do not rewrite your apps: the pilot solution is restructured for promotion, not rebuilt — new apps and flows are Custom Business Apps and Process Automation. Where a Copilot Studio agent is part of the solution it travels through the same pipeline; what should govern agents as a class is a different conversation, and we wrote down what agent governance is and why it matters in 2026.
Success criteria
What you receive
How the work unfolds
Inventory the apps, flows and agents in the default environment and any existing environments; choose the pilot solution with its business owner; read licensing entitlements against the pilot's users and check Dataverse capacity; agree the environment model, naming, Git provider, approval policy and roles. Everything we build traces to a decision recorded here.
Create the development, test and production environments with Dataverse, or validate the ones you have; assign security roles; enable Managed Environments where the licensing memo shows the users covered; create the custom host environment and install the Power Platform Pipelines application.
Bring the pilot into a proper solution under your publisher; replace personal connections with connection references and hard-coded values with environment variables; resolve dependencies on components outside the solution; run solution checker and fix what it flags.
Bind the development environment to the repository and branch with the agreed binding type, make the first commit, and walk a maker through editing, committing and reading the diff.
Configure the pipeline and its stages, the delegated deployment identity and the production approval; promote the pilot to test and run the acceptance checks; then request, approve and deploy to production with environment variable values set per stage.
Deliver the deployment runbook and one-page maker guidance; run the handover session with makers and admins, including one approval and one rejection end to end; record the decision on the default-environment originals and close out with the licensing findings memo.
Prerequisites
Who does what
IT Partner
- Run discovery, read the licensing entitlements, and put the ALM decisions record and the licensing findings memo in writing before building anything.
- Create or validate the environments, enable Managed Environments where the users are covered, build the custom host with the Power Platform Pipelines application, and assign roles.
- Restructure the pilot solution — publisher, connection references, environment variables, dependencies, solution checker — and bind the development environment to source control.
- Configure the pipeline, stages, delegated deployment identity and production approval, and run the first promotion to test and production with you.
- Deliver the runbook and maker guidance, run the handover session, and remove any temporary access we were granted.
- Raise any scope, licensing or platform constraint the moment we find it, in writing.
Your team
- Provide admin or delegated access, the Azure DevOps organization (or GitHub organization and Azure subscription for the preview), and approval to create the service principal.
- Nominate the pilot solution and its business owner, and make its maker available in week two.
- Buy the premium licences and Dataverse capacity the findings memo identifies before Managed Environments is enabled — at Microsoft's list price, through us or anyone else.
- Name the production approver and the deployment administrators, and make decisions when options are presented.
- Run the acceptance checks in test and production, and own the lifecycle after handover.
What's not included
Limitations & technical notes
Frequently asked questions
What does Power Platform ALM and Pipelines Implementation include?
One solution lifecycle, end to end: development, test and production environments with Dataverse; Managed Environments enabled where your licences cover the users; a custom pipelines host with the Power Platform Pipelines application and one pipeline with test and production stages; a pre-deployment approval on production with delegated deployment so makers never need production rights; the pilot solution restructured under your publisher with connection references and environment variables; Dataverse Git integration binding the development environment to Azure DevOps (or GitHub, in preview); the pilot promoted to production as a managed solution and validated by its owner; a licensing findings memo; and a deployment runbook, one-page maker guidance and a handover session. Three weeks, $3,950 fixed.
Do we need Managed Environments, and what does that mean for licences?
Yes, and it is the decision to make before anything else. Pipelines require every target environment to be a Managed Environment, and Dataverse Git integration requires the development environment to be one — so every environment in this lifecycle is managed. Microsoft's rule is that every user who runs an app or flow in a managed environment holds a qualifying premium licence: Power Apps Premium, Power Apps per app, Power Automate Premium, pay-as-you-go, or a Dynamics 365 enterprise licence; Microsoft 365 seeded rights are not enough. We read your entitlements against the pilot solution's user list in week one and put the gap, if any, in writing with a decision per user group. We do not enable Managed Environments over unlicensed users and hope.
What are the 2026 Managed Environments licensing notices about?
Microsoft's Managed Environments licensing documentation, as checked in September 2026, says administrators started receiving Microsoft 365 Message center notices in March 2026 about users of managed environments who lack an appropriate licence, end users started seeing in-product notices in June 2026, and from February 2027 those users are blocked from opening apps in managed environments. If you have already seen the notices, the licensing memo in week one tells you exactly who they are about; if you have not, the same memo keeps you from earning them once these environments are managed.
Does every user really need Power Apps Premium? That is a lot for a 300-person app.
Not necessarily Premium. Power Apps per app licenses a user for one app, and pay-as-you-go meters app use to an Azure subscription in your tenant without assigning a licence at all; both qualify for managed environments, and a Power Automate Premium or Dynamics 365 enterprise licence qualifies too. We model the options against the pilot's real user list and name the cheapest compliant one in the findings memo. Buying it is your decision, at Microsoft's list price whether through us or anyone else; we do not purchase on your behalf.
Azure DevOps or GitHub for source control?
Azure DevOps is generally available for Dataverse Git integration and is our default. GitHub support is a Microsoft preview feature at the time of writing: it works, but it needs a GitHub App with its private key held in an Azure Key Vault, and Microsoft's preview terms apply. We recommend GitHub only where your developers already work there and you accept the preview status. Because Git integration lives in the development environment only, choosing Azure DevOps now and rebinding to GitHub later touches neither test nor production.
Can makers keep building in the default environment?
For personal experiments, that is a governance decision — environment routing and default-environment restrictions belong to the governance engagement. For anything the business depends on, no: it gets a solution in the development environment and reaches production through the pipeline. The maker guidance is one page: build in development, inside the solution, using connection references and environment variables; commit; request a deployment; never edit production. Makers keep their autonomy in development. What changes is that production stops being where they experiment.
What happens to the apps and flows already running in the default environment?
The pilot is one of them: we move it into a proper solution, promote it through the pipeline, and retire or freeze the original once the business owner signs off on the production copy. The rest are inventoried in week one with a recommendation each — next through the pipeline, leave in place, or retire — and each subsequent solution is a small fixed-scope add-on or your team's own work with the runbook. Moving a canvas app or cloud flow between environments is a solution export and import with connections re-established through connection references, not a lift-and-shift, which is why the restructuring week exists.
What is the pipelines host, and do we really need four environments?
The host is a Dataverse environment that stores the pipeline definitions, security roles and run history — the control plane. Microsoft auto-creates a platform host for personal pipelines, but it is limited to one source and two targets, cannot be extended with approvals and cannot be shared, so a governed pipeline needs a custom host, which we create. Microsoft recommends four environments — host, development, test, production — and supports a minimum of three; we build four so approvals and history sit apart from the solution itself. Every one needs a Dataverse database, and Dataverse for Teams environments cannot take part.
How do pre-deployment approvals work?
When a maker requests a deployment to production, the gated extension on that stage — pre-deployment step required, or delegated deployment with approval — puts the request in a pending state and fires a Power Automate flow that sends an approval to the named approver. On approval the flow signals the host and the deployment runs under the service principal or stage owner identity, not the maker's; on rejection it stops, with the note in run history. Run history records who requested, who approved and what was deployed. Test can stay ungated so makers iterate quickly; production is where the gate belongs.
Do makers get access to production?
No — and after this project they do not need it. Delegated deployment means the deployment runs under a service principal or the stage owner with rights in the target; the maker only needs the Deployment Pipeline User role in the host and maker rights in development. Admins keep production; business users get the app as a managed solution nobody can edit in place.
Does this cover Copilot Studio agents?
An agent that belongs to the pilot solution is solution-aware and travels through the same pipeline as the apps and flows around it, with the same environment variable and connection reference discipline; Microsoft has extended Git integration into the Copilot Studio maker portal as well, and we confirm in week two that every component in your agent is a supported type. What this engagement does not do is govern agents as a class — who may publish, to which channels, with what data access. That is agent governance, and we wrote up what it is and why your business needs it in 2026; building agents is Custom Agent Development with Microsoft Copilot Studio.
What does the $3,950 fixed price cover, and what would cost extra?
The fixed price covers one tenant and one solution lifecycle: development, test and production environments plus the pipelines host, one custom pipeline with test and production stages, one production approval with delegated deployment, Git integration for the development environment to one repository, one pilot solution restructured and promoted end to end, the licensing findings memo, the optional starter build definition where you already run Azure DevOps or GitHub, and the runbook, maker guidance and handover. Quoted separately: additional solutions, additional pipelines or stages such as a UAT or hotfix stage, Dynamics 365 or Power Pages lifecycles, pro-code CI/CD, and bulk data migration. Licences, Dataverse capacity and any Azure consumption are always yours.
How long does it take?
Three weeks: discovery, decisions and environments in the first; solution restructuring and source control in the second; the pipeline, approvals, the first promotion and handover across the second and third. The usual delays are licences and capacity that have not been bought when Managed Environments is due to be enabled, a pilot chosen without its business owner's time, and approvals that sit — they move the calendar, not the fixed price.
How is this different from the Governance and CoE service, and from the Azure DevOps CI/CD service?
Governance decides where things live and what they may connect to — environment strategy for the whole tenant, DLP, routing, cleanup, the Center of Excellence; that is Power Platform Governance and Center of Excellence Setup. ALM decides how one solution moves from a maker's change to production — environments for that lifecycle, pipelines, approvals, source control; that is this page. Many customers do governance first and ALM second; some start here because one app became critical faster than governance arrived, and the environments we create fit the model the governance engagement later formalizes. Azure DevOps and GitHub CI/CD Pipeline Implementation is for pro-code teams shipping application code and infrastructure to Azure; it shares the platform choice with this service and nothing else.
What about Dataverse capacity?
Every environment in the lifecycle — development, test, production and the host — needs a Dataverse database and draws on your tenant's Dataverse capacity; premium licences carry capacity entitlements, and large tables or file-heavy solutions may need capacity add-ons. We state your capacity position in week one before creating anything, and we do not buy capacity on your behalf.
What happens after handover?
Your team owns the lifecycle with the runbook and maker guidance — the next solution should not need us. If your Microsoft licensing runs through IT Partner, break-fix questions about the pipeline afterwards fall under the unlimited business-hours support that comes with that relationship; putting further solutions through, or adding stages, is project work quoted as a small fixed-scope add-on; month-to-month environment administration is Managed Power Platform Governance and Support. There is no lock-in: everything we build is Microsoft's own tooling in your tenant, documented so anyone can run it, and you can stop using our services at any time.