You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 0_Azure/8_AzureApps/demos/3_fromMulesoft_toLogicApps.md
+158Lines changed: 158 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,14 @@ Last updated: 2025-10-23
9
9
10
10
----------
11
11
12
+
<details>
13
+
<summary><b>List of References</b> (Click to expand)</summary>
14
+
15
+
-[What is Azure Service Bus?](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-messaging-overview)
16
+
-[Storage queues and Service Bus queues - compared and contrasted](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-azure-and-service-bus-queues-compared-contrasted)
17
+
18
+
</details>
19
+
12
20
## What is Manhattan Active platform?
13
21
14
22
> [Manhattan Active](https://www.manh.com/en-in/our-solutions/manhattan-active-platform) is a cloud native `SaaS platform`, and it is always hosted by Manhattan Associates, `you do not self-host it on your own infrastructure.` Here’s the key detail:
@@ -105,6 +113,156 @@ An **EDI flow** is the end-to-end process of:
105
113
106
114
</details>
107
115
116
+
## Migration from MuleSoft to Azure Logic Apps
117
+
118
+
> There’s `no “one-click” migration from MuleSoft to Azure Logic Apps because they are fundamentally different platforms,` but you can make the process easier with a structured approach and some automation. Here’s how:
| EDI connectors | **Logic Apps + Integration Account** |
143
+
144
+
<details>
145
+
<summary><b>Flows (orchestration) → Azure Logic Apps workflows</b> (Click to expand)</summary>
146
+
147
+
- When you migrate a Mule **flow** to Azure, the natural destination is a **Logic Apps (Standard)** workflow because `it gives you stateful or stateless execution,` robust scopes with retries/compensation, parallel branches, and debatching, `so you preserve the control‑flow semantics you rely on while gaining cloud‑native scale.`
148
+
- We recommend **Logic Apps Standard (single‑tenant)** rather than Consumption for Manhattan‑grade integrations **because** Standard runs on dedicated compute, supports **VNET integration and Private Endpoints** for fully private inbound/outbound traffic, and hosts **built‑in connectors in‑process** for lower latency—critical when you’re orchestrating many REST calls to Manhattan Active and back‑office systems.
149
+
- [Differences between Standard single-tenant logic apps versus Consumption multitenant logic apps](https://learn.microsoft.com/en-us/azure/logic-apps/single-tenant-overview-compare)
150
+
- [Secure traffic between Standard logic apps and Azure virtual networks using private endpoints](https://learn.microsoft.com/en-us/azure/logic-apps/secure-single-tenant-workflow-virtual-network-private-endpoint)
151
+
- This choice also sets you up for sustained throughput: `you can scale vertically (WS1–WS3 SKUs) and horizontally (instances/burst),` tune trigger batch sizes, and exploit high‑throughput patterns when ingesting from **Service Bus** or **Event Hubs**. Some guidance about Logic Apps Standard handling sustained high‑rate event and message processing when sized and tuned correctly—exactly the profile you’ll see during cutover waves or seasonal peaks.
152
+
- [Scaling Logic App Standard for High Throughput Scenarios](https://techcommunity.microsoft.com/blog/integrationsonazureblog/scaling-logic-app-standard-for-high-throughput-scenarios/3866731)
153
+
- [Scaling Logic Apps Standard – Sustained Message Processing System](https://techcommunity.microsoft.com/blog/integrationsonazureblog/scaling-logic-apps-standard-%E2%80%93-sustained-message-processing-system/4339043)
154
+
- Manhattan Active is **API‑first (REST/JSON)** and also supports asynchronous delivery via queues; your orchestration will frequently mix HTTP calls with message/event triggers. Logic Apps fits that pattern natively, `and you can pick the right Azure backbone` (**Service Bus** for durable commands/workflows, **Event Grid** for light event fan‑out, **Event Hubs** for streaming—without bending the workflow model). `We prefer this decoupling` **because** it `keeps business logic readable in the workflow while letting the right messaging service do the heavy lifting.`
155
+
- [Developer Manhattan Active Documentation - Enterprise Integration: Async vs Sync](https://developer.manh.com/docs/concept-guides/enterprise-integration/)
156
+
- [Choose between Azure messaging services - Event Grid, Event Hubs, and Service Bus](https://learn.microsoft.com/en-us/azure/service-bus-messaging/compare-messaging-services)
157
+
158
+
</details>
159
+
160
+
<details>
161
+
<summary><b>API Gateway → Azure API Management (APIM)</b> (Click to expand)</summary>
162
+
163
+
- When you migrate Mule’s **API Manager/Flex Gateway**, the natural Azure equivalent is **API Management (APIM)** because `it provides full API lifecycle management, policy enforcement, and a developer portal`, so you maintain governance while modernizing for cloud-native scale.
164
+
- We recommend **APIM with self-hosted gateway** for Manhattan integrations **because** Manhattan Active runs on GCP, and placing the gateway close to Manhattan reduces latency and egress costs while keeping a single control plane in Azure. [Self-hosted gateway overview](https://learn.microsoft.com/en-us/azure/api-management/self-hosted-gateway-overview)
165
+
- APIM gives you strong **security and policy control**: `validate OAuth2/OIDC/JWT tokens, enforce mTLS, apply rate limits and quotas, and transform requests/responses` at the edge, so all Manhattan-facing calls and partner-facing APIs follow consistent governance.
166
+
- For cost and scale, APIM **v2 tiers** (Basic, Standard, Premium) include predictable request quotas and SLAs; Premium adds VNET and multi-region HA. `We recommend sizing with the Azure calculator` to avoid surprises as traffic grows. [API Management pricing tiers](https://learn.microsoft.com/en-us/azure/api-management/api-management-features)
167
+
- Why this matters for Manhattan: `Manhattan Active exposes thousands of REST APIs` for WMS, TMS, and Planning. APIM acts as a secure façade, centralizing auth and throttling, while Logic Apps handle orchestration behind it. [Manhattan Active Developer Docs](https://developer.manh.com/docs/concept-guides/enterprise-integration/)
168
+
169
+
</details>
170
+
171
+
<details>
172
+
<summary><b>DataWeave transformations → Logic Apps inline actions or Azure Functions</b> (Click to expand)</summary>
173
+
174
+
- Mule’s **DataWeave** maps become **Logic Apps inline actions** (Compose, Liquid templates, XML/JSON transforms) or **Azure Functions** for heavy transformations. `We split this way so orchestration stays clean and complex logic runs in scalable code`.
175
+
- We recommend **Liquid templates for JSON/XML** and **Functions for CPU-heavy or reusable mappings** **because** Functions can scale elastically and be tested independently, reducing workflow complexity and improving maintainability.
176
+
- [Limits and configuration reference for Azure Logic Apps](https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-limits-and-config)
177
+
- [What is Azure Functions?](https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview)
178
+
- For validation, enforce **JSON Schema/XSD** inside Logic Apps and contracts at APIM. `Failing early at the gateway saves runtime cost and improves security posture`.
179
+
- Why this matters for Manhattan: `Most flows are JSON-to-JSON between Manhattan and your ERP`, and when crossing to EDI, you’ll hand off to the Integration Account layer, keeping boundaries clean and performance predictable. [Manhattan Active Integration Concepts](https://developer.manh.com/docs/concept-guides/enterprise-integration/)
- Mule’s **EDI/Partner Manager** maps to **Logic Apps Standard + Integration Account (Premium)** because `it supports AS2, X12, EDIFACT natively, handles batching and acknowledgments, and scales without artifact limits`.
187
+
- We recommend **Integration Account Premium** **because** it is GA with **unlimited partners, agreements, schemas**, supports **VNET isolation**, and offers **Availability Zones** for enterprise resilience. [B2B enterprise integration workflows with Azure Logic Apps and Enterprise Integration Pack](https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-enterprise-integration-overview)
188
+
- For compliance, enable **B2B tracking to Azure Data Explorer (ADX)**. `This gives lossless, queryable telemetry for MDNs, 997s, and failures`, far better than raw logs, and supports Power BI dashboards for SLA reporting.
189
+
- Why this matters for Manhattan: `Manhattan Active is API-first, but carriers and suppliers still require EDI`. Logic Apps bridges JSON from Manhattan APIs to X12/EDIFACT for partners, handles AS2/SFTP transport, and manages acknowledgments, all without a separate B2B platform. [Manhattan Active Integration Guide](https://developer.manh.com/docs/concept-guides/enterprise-integration/)
190
+
191
+
</details>
192
+
193
+
194
+
### Migration Accelerators
195
+
196
+
> **Export specs**: MuleSoft APIs are often documented in **RAML/OpenAPI** → import into **APIM**.
197
+
198
+
<details>
199
+
<summary>(Click to expand)</summary>
200
+
201
+
- **Why:** Migrating APIs from MuleSoft to Azure requires preserving contracts, documentation, and governance. MuleSoft APIs are often defined in **RAML** or **OpenAPI**, which APIM natively supports for import.
202
+
- **How:**
203
+
- Export your MuleSoft API definition (RAML or OAS).
204
+
- Convert **RAML → OpenAPI** using tools like MuleSoft CLI.
205
+
- Import the OpenAPI spec into **Azure API Management**:
206
+
- In APIM, go to **APIs → Add API → OpenAPI**.
207
+
- Upload the spec or provide a URL.
208
+
- Apply **policies** (rate limiting, JWT validation, mTLS) and configure **products** for subscription management.
209
+
- **Best Practices:**
210
+
- Validate the spec for completeness (operations, response codes, examples).
211
+
- Use **versioning** in APIM to manage future changes.
212
+
- Automate import via **ARM/Bicep templates** or **APIM DevOps toolkit** for consistency across environments. [Tutorial: Import and publish your first API](https://learn.microsoft.com/en-us/azure/api-management/import-and-publish)
213
+
214
+
</details>
215
+
216
+
> **Reusable schemas**: X12/EDIFACT schemas can be reused in **Integration Account**.
217
+
218
+
<details>
219
+
<summary>(Click to expand)</summary>
220
+
221
+
- **Why:** EDI flows rely on **X12/EDIFACT schemas** for validation and transformation. Reusing these schemas avoids rework and ensures compliance with trading partner requirements.
222
+
- **How:**
223
+
- Export schemas from MuleSoft (usually stored in DataWeave or connector configs).
224
+
- Upload schemas into **Integration Account** in Azure:
225
+
- Navigate to **Integration Account → Schemas → Add**.
226
+
- Provide schema name, type (X12/EDIFACT), and upload the .xsd or .edi file.
227
+
- Associate schemas with **maps** and **agreements** for partners.
228
+
- **Best Practices:**
229
+
- Store schemas in **source control** (GitHub/Azure DevOps) for versioning.
230
+
- Use **naming conventions** for transaction sets (e.g., X12\_850\_v4010).
231
+
- Validate schema compatibility with Logic Apps built-in EDI actions.
232
+
233
+
</details>
234
+
235
+
> **Automation**: Use **Azure DevOps/GitHub Actions** for CI/CD pipelines to deploy Logic Apps/APIM.
236
+
237
+
<details>
238
+
<summary>(Click to expand)</summary>
239
+
240
+
241
+
- **Why:** Manual deployments are error-prone. CI/CD ensures consistency, traceability, and faster releases across Dev, Test, and Prod.
242
+
- **How:**
243
+
- Use **Azure DevOps** or **GitHub Actions** pipelines:
244
+
- Define Logic Apps, APIM, Integration Account in **ARM/Bicep/Terraform** templates.
- Use **APIM DevOps toolkit** to extract and deploy APIs, policies, and products.
252
+
- **Best Practices:**
253
+
- Implement **blue-green or canary deployments** for critical APIs.
254
+
- Add **automated tests** for workflows and API endpoints.
255
+
- Monitor deployments with **Azure Monitor** and set alerts for failures.
256
+
- [Overview: Automate deployment for Azure Logic Apps by using Azure Resource Manager templates](https://learn.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-resource-manager-templates-overview)
257
+
258
+
</details>
259
+
260
+
### Phased Migration
261
+
262
+
- Start with **new integrations** (Manhattan Active APIs, EDI flows).
263
+
- Gradually **retire MuleSoft flows** as you replicate them in Logic Apps.
264
+
- Use **APIM self-hosted gateway** near Manhattan Active for hybrid coexistence during transition.
0 commit comments