convert_ssis_package
Convert SSIS packages (.dtsx files) to Azure Data Factory JSON artifacts including pipelines, linked services, datasets, and triggers for ETL modernization.
Instructions
Convert a single SSIS package (.dtsx file) to Azure Data Factory JSON artifacts. Generates: pipeline JSON, linked service JSONs, dataset JSONs, mapping data flow JSONs, trigger JSONs, and Azure Function stubs for Script Tasks. Supports Self-Hosted IR, Key Vault secrets, Microsoft Recommended linked service format, schema remapping, ESI reuse detection, CDM pattern flagging, and cross-package dedup. Returns a summary of generated files and any warnings.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| package_path | Yes | Absolute path to the .dtsx file to convert. | |
| output_dir | Yes | Directory to write ADF artifacts to. Sub-folders pipeline/, linkedService/, dataset/, dataflow/, trigger/, stubs/ will be created automatically. | |
| generate_trigger | No | Whether to emit a template ScheduleTrigger JSON. Default: true. | |
| llm_translate | No | If true, call Azure OpenAI to translate C# Script Task source code to Python in the generated Azure Function stubs. Requires AZURE_OPENAI_ENDPOINT and AZURE_OPENAI_API_KEY environment variables. Falls back gracefully if unavailable. Default: false. | |
| on_prem_ir_name | No | Integration Runtime name for on-prem connections. Default: 'SelfHostedIR'. | SelfHostedIR |
| auth_type | No | Default authentication type for Azure SQL linked services. Default: 'SystemAssignedManagedIdentity'. | SystemAssignedManagedIdentity |
| use_key_vault | No | Use Azure Key Vault secret references for passwords/connection strings. Default: false. | |
| kv_ls_name | No | Name for the Key Vault linked service. Default: 'LS_KeyVault'. | LS_KeyVault |
| kv_url | No | Azure Key Vault base URL. Default: 'https://TODO.vault.azure.net/'. | https://TODO.vault.azure.net/ |
| esi_tables_path | No | Optional path to a JSON file mapping source_system → table list for ESI reuse detection. | |
| schema_remap_path | No | Optional path to a JSON file mapping old schema prefixes to new ones for database consolidation. Format: {"StagingDB.dbo": "ConsolidatedDB.staging"}. | |
| shared_artifacts_dir | No | Optional shared directory for cross-package linked service/dataset deduplication. When converting multiple packages, point all to the same shared dir. | |
| pipeline_prefix | No | Prefix for pipeline names. Default: 'PL_'. | PL_ |