ADF-to-Microsoft Fabric Migration Accelerator
Scan your ADF → Get a Fabric migration report with auto-converted pipelines

Migrate existing ADF pipelines, Synapse workspaces, and data flows to Fabric with ease. This extension automates the analysis and conversion process.
Features
🔍 ADF Resource Scanner
- Detects 3 formats: Git-integrated ADF repos, ARM template exports, loose pipeline JSON files
- Automatically discovers pipelines, data flows, datasets, linked services, and triggers
- Right-click any folder → "ADF→Fabric: Scan Folder for ADF Templates"
📊 Compatibility Analyzer
- Maps 35+ ADF activity types to Fabric equivalents
- Maps 30+ linked service types to Fabric connections
- Maps 6 trigger types to Fabric scheduling
- Calculates a 0–100 compatibility score
- Estimates migration effort hours with configurable rates
📋 Migration Plan Generator
- 7-phase migration plan: Infrastructure → Data Layer → Auto-Convert → Manual → Data Flows → Triggers → Re-Architecture
- Risk identification: SSIS dependencies, HDInsight activities, self-hosted IR, large scope
- Actionable recommendations: OneLake shortcuts, Managed Identity auth, parallel operation
- Export as Markdown or JSON
⚡ Auto-Converter
- Direct 1:1 conversion of fully compatible activities (Copy, Lookup, ForEach, IfCondition, etc.)
- Stub generation for incompatible activities with migration instructions
- Partial conversion with review annotations
- Outputs clean Fabric pipeline JSON
🌳 Activity Bar Integration
- Migration Explorer: Tree view of all scanned resources with compatibility icons
- Compatibility Issues: Dedicated view showing blockers, incompatible resources, and warnings
- Rich tooltips with notes, effort estimates, and Fabric equivalents
📈 Interactive Report Dashboard
- Score ring with color-coded compatibility score
- Summary cards: Total resources, fully compatible, partial, incompatible, auto-convertible, effort hours
- Compatibility breakdown bar chart
- Tabbed detail views: Pipelines, Data Flows, Linked Services, Migration Plan, Risks
- Per-activity drill-down within pipeline tables
Activity Compatibility Matrix
| ADF Activity |
Fabric Equivalent |
Level |
| Copy, Lookup, GetMetadata, Delete |
Direct 1:1 mapping |
🟢 Full |
| ForEach, IfCondition, Until, Switch, Wait |
Direct 1:1 mapping |
🟢 Full |
| SetVariable, AppendVariable, Filter, Fail |
Direct 1:1 mapping |
🟢 Full |
| ExecutePipeline, Script, Validation |
Direct 1:1 mapping |
🟢 Full |
| ExecuteDataFlow |
Dataflow Gen2 |
🟡 Partial |
| DatabricksNotebook/Python |
Fabric Notebook |
🟡 Partial |
| SqlServerStoredProcedure, WebActivity |
Script/Web Activity |
🟡 Partial |
| SynapseNotebook, AzureMLExecutePipeline |
Fabric Notebook / ML |
🟡 Partial |
| Custom, DatabricksSparkJar |
Fabric Notebook / Spark |
🟠 Workaround |
| HDInsightHive/Streaming |
Fabric Notebook / Eventstream |
🟠 Workaround |
| ExecuteSSISPackage |
❌ No equivalent |
🔴 Incompatible |
| HDInsightPig, HDInsightMapReduce |
❌ Rewrite required |
🔴 Incompatible |
| DataLakeAnalyticsU-SQL |
❌ Service retired |
🔴 Incompatible |
Commands
| Command |
Description |
ADF→Fabric: Scan Workspace |
Scan entire workspace for ADF templates |
ADF→Fabric: Scan Folder |
Scan a specific folder |
ADF→Fabric: Analyze Compatibility |
Run compatibility analysis |
ADF→Fabric: Generate Report |
Open interactive migration report |
ADF→Fabric: Convert Pipeline |
Convert a single pipeline to Fabric JSON |
ADF→Fabric: Convert All |
Convert all pipelines |
ADF→Fabric: Export Migration Plan |
Export plan as Markdown or JSON |
ADF→Fabric: Show Resource Detail |
View detailed compatibility for a resource |
ADF→Fabric: Refresh Explorer |
Refresh the migration explorer tree |
Configuration
| Setting |
Default |
Description |
adfFabricMigration.outputDir |
.fabric-migration |
Output directory for converted pipelines and reports |
adfFabricMigration.autoDetectArmTemplates |
true |
Automatically detect ARM template exports |
adfFabricMigration.includeDataFlows |
true |
Include data flows in analysis |
adfFabricMigration.targetFabricWorkspace |
"" |
Target Fabric workspace name |
adfFabricMigration.effortHoursPerActivity |
{...} |
Configurable effort multipliers per compatibility level |
Effort Configuration
{
"adfFabricMigration.effortHoursPerActivity": {
"compatible": 0.5,
"partiallyCompatible": 2,
"incompatible": 8,
"manual": 16
}
}
Usage
- Open a workspace or folder containing ADF pipeline JSON, ARM templates, or a Git-integrated ADF repo
- Run
ADF→Fabric: Scan Workspace (Ctrl+Shift+P)
- Click "Analyze Compatibility" in the notification
- View results in the Migration Explorer (Activity Bar) and the interactive report
- Convert compatible pipelines to Fabric format
- Export the migration plan to share with your team
- ✅ Git-integrated ADF repos (folder structure: pipeline/, dataflow/, dataset/, linkedService/, trigger/)
- ✅ ARM template exports (detects
$schema: deploymentTemplate)
- ✅ Loose JSON files (auto-detects by property shape)
Requirements
- VS Code 1.85+
- ADF pipeline JSON files, ARM templates, or Git-integrated ADF workspace
License
MIT — See LICENSE.txt
| |