-
-
Notifications
You must be signed in to change notification settings - Fork 0
01 Getting Started
Flowline runs on Windows, Mac, and Linux. Mac and Linux support is expected to work but not yet officially tested — if you hit a platform-specific issue, please open an issue.
On Windows, winget is also available for PAC CLI: winget install Microsoft.PowerAppsCLI
If .NET 10 is installed, Flowline invokes PAC via dnx — no separate PAC CLI install needed.
dotnet tool install --global FlowlineAuthenticate PAC CLI against your Dataverse environment before using Flowline:
pac auth create --environment https://your-org.crm4.dynamics.comFlowline reuses the PAC CLI token cache — no separate auth step needed. See 10-Authentication for multi-environment setup and CI/CD service principal auth.
Use this when a solution already exists in Dataverse and you want to bring it under source control.
# Create a Git repo
mkdir contoso-flowline
cd contoso-flowline
git init
# One-time: bootstrap the solution into the repo
flowline clone ContosoSales --prod https://contoso.crm4.dynamics.com
# Daily dev loop
flowline push # push code assets to DEV
flowline sync # pull Dataverse changes back to source
git commit -m "feat: add validation"
# Promote
flowline deploy test
flowline deploy prodclone creates the full project structure, unpacks the solution XML per component, and scaffolds the Plugins and WebResources projects.
Use this when starting a new solution from scratch.
# Create a Git repo
mkdir contoso-flowline
cd contoso-flowline
git init
# Create publisher and solution in Dataverse, scaffold local structure
flowline init ContosoSales --prod https://contoso.crm4.dynamics.com
# Then follow the same daily loop as above
flowline push
flowline sync.flowline # environment URLs and solution config
└── solutions/
└── ContosoSales/
├── ContosoSales.sln
├── Package/ # PAC-managed — do not edit manually
│ ├── Package.cdsproj
│ └── src/ # unpacked solution XML
├── Plugins/ # plugin assembly project
│ ├── Plugins.csproj
│ └── Models/ # early-bound C# types (flowline generate)
├── WebResources/ # web resource files
│ └── dist/ # synced to Dataverse by push
└── artifacts/ # deployment zips (generated by deploy)
Files under WebResources/dist/ are synced to Dataverse by flowline push.
Use provision once when setting up a new environment from PROD:
flowline provision dev --prod https://contoso.crm4.dynamics.com
flowline provision test --prod https://contoso.crm4.dynamics.com