Installation and Setup
Prerequisites
- .NET 9.0 SDK or later
- Access to Dynamics 365 environment
- Appropriate security roles for export/import operations
Installation
Install the FlowOn.Xrm.Tools package from NuGet:
# Install as a global .NET tool
dotnet tool install --global FlowOn.Xrm.Tools
# Or install a specific version
dotnet tool install --global FlowOn.Xrm.Tools --version 1.0.224
# Verify installation
flowon --version
NuGet Package: FlowOn.Xrm.Tools
Update to Latest Version
dotnet tool update --global FlowOn.Xrm.Tools
Project-Level Installation
For project-specific installation (useful in CI/CD pipelines):
# Create tool manifest (one-time)
dotnet new tool-manifest
# Install as local tool
dotnet tool install FlowOn.Xrm.Tools
# Run using dotnet tool run
dotnet tool run flowon --version
Configuration
Create a connection configuration file flowon.config.json:
{
"connectionString": "AuthType=ClientSecret;Url=https://org.crm.dynamics.com;ClientId=xxx;ClientSecret=xxx",
"projectName": "CustomerPortal",
"outputDirectory": "./artifacts",
"mappingsDirectory": "./mappings"
}
Environment Variables
| Variable | Description |
|---|---|
FLOWON_CONNECTION_STRING | Dynamics 365 connection string |
FLOWON_PROJECT_NAME | Default FlowOn project name |
FLOWON_OUTPUT_DIR | Default output directory |
Architecture Overview
┌─────────────────────────────────────────────────────────────────────┐
│ FLOWON CI/CD ARCHITECTURE │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ DEVELOPMENT VERSION CONTROL │
│ ┌─────────────┐ ┌─────────────────┐ │
│ │ Dynamics │ │ │ │
│ │ 365 Dev │──── Export ───│ Git Repo │ │
│ │ Environment│ │ │ │
│ └─────────────┘ │ • Solutions │ │
│ │ • .flop files │ │
│ ┌─────────────┐ │ • Data maps │ │
│ │ FlowOn │──── Export ───│ • Config maps │ │
│ │ Designer │ │ • Data specs │ │
│ └─────────────┘ └────────┬────────┘ │
│ │ │
│ │ CI Pipeline │
│ ▼ │
│ ┌───────────────────────────┐ │
│ │ BUILD ARTIFACTS │ │
│ │ │ │
│ │ • Managed Solutions │ │
│ │ • FlowOn Packages │ │
│ │ • Transformed Data │ │
│ └─────────────┬─────────────┘ │
│ │ │
│ ┌─────────────────┼─────────────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ UAT │ │ Staging │ │Production │ │
│ │Environment│ │Environment│ │Environment│ │
│ └───────────┘ └───────────┘ └───────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
Key Differentiators
1. Unified Package Format (.flop)
The FlowOn Package (.flop) consolidates all FlowOn artifacts into a single, versioned package:
- Logic Blocks and Flows
- BPM Process definitions
- API configurations
- Event definitions and handlers
- Service connections
- Schedules and recipes
- Localized resources
2. Intelligent Data Mapping
Environment-specific transformations happen automatically using Source/Target mapping files that handle:
- Configuration values (URLs, feature flags)
- Entity record IDs (GUIDs that differ per environment)
- Service connection credentials
- Localized resources