Workflow¶
The example flow in action, adding a new notebook: branch and provision, develop, promote. Play it below, or read the same steps beneath it.
Watching the walkthrough
play all (stops at approvals) · previous step · replay step · play this step (again to pause) · play next step.
Workflow in text
-
you Branch off
mainand push -
you Queue provision-feature.yml on the branch
Once. It has no push trigger. The Run dialog defaults to
main, which is refused, so pick your branch. -
provision-feature.yml Create the branch workspaces
allez provision --env featurecreates and configures one empty workspace perfabric/<sub-folder>(provision). -
provision-feature.yml Fill them and connect them to the branch
allez deploy --env feature --branch-workspace --commit-to-gitpublishes into each workspace, connects it to the branch and commits[skip ci]. Ifbase-envis set, each workspace is also related to dev's (what a run does, why a deploy, not an update from git). -
you
git pullbefore you push againThe pipeline's commit is on your branch now.
Work in the workspace, in the repo, or both, on the same branch.
-
In the workspace
Edit in the Fabric UI, then commit to
feature/*from the workspace's source control pane. No allez involved. -
In the repo
Edit the definition files, then apply and verify per item:
allez apply fabric/<sub-folder> # every item allez apply fabric/<sub-folder> -i <A>.<Type> # a subset (-i repeatable) allez apply fabric/<sub-folder> -i <A>.<Type> --verify-runCommit once it verifies green.
Git integration moves committed state only, so testing a repo edit that way costs a throwaway commit per iteration and reports one coarse status for the whole workspace. allez apply pushes the uncommitted working tree to the branch workspace item by item, and a read-back after each item proves it landed. It applies no parameter.yml, so items land exactly as authored and it never promotes across environments (allez apply).
From here on, pipeline triggers do the work.
-
you Merge the pull request into
mainLeave delete source branch on, so the branch workspaces can be swept.
-
deploy.yml Deploy dev, sweep, plan test
allez deploy --env dev, thenallez teardown --orphansremoves your branch workspaces, then the plan for test is published. -
approver Approve
fabric-testAfter reading the test plan (reading the plan).
-
deploy.yml Deploy test, plan prod
allez deploy --env test, then the plan for prod is published. -
approver Approve
fabric-prod -
deploy.yml Deploy prod, tag the release
allez deploy --env prod, then the commit is taggedv<version>.
Each stage, its trigger and its steps are in the table under Pipelines. A hotfix is an ordinary merge to main that walks the same two gates. Every run is named with the solution's version (the version). When a release goes wrong: Rollback.