microsoft / microsoft/GitHub-Copilot-for-Azure
[Documentation] Align MS Learn Azure Functions docs with Copilot skill recipes
- Dominant language
- Python
- Stars
- 250
- Forks
- 204
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 67
Description
# Overview
This issue tracks documentation gaps between our Azure Functions trigger/binding skill recipes and the corresponding Microsoft Learn documentation. Our recipes include production-ready patterns (UAMI authentication, health checks, error handling) that would benefit the broader developer community if added to the official docs.
## Background
During PR #934, we identified that our skill recipes contain patterns not present in MS Learn:
- **User-Assigned Managed Identity (UAMI) app settings** - passwordless authentication configuration
- **Health check endpoints** - production monitoring patterns
- **Batch processing patterns** - dual trigger+output binding examples
- **Error handling** - multi-level try/catch patterns
## Action Items
Since MicrosoftDocs/azure-docs has GitHub Issues disabled, we need to submit PRs directly. Here's the checklist:
### Critical (UAMI Patterns)
- [ ] **Event Hubs Trigger** - [functions-bindings-event-hubs-trigger.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-bindings-event-hubs-trigger.md)
- Add: `EventHubConnection__fullyQualifiedNamespace`, `__credential`, `__clientId`
- Add: Batch processing with `cardinality=MANY`
- [ ] **Service Bus Trigger** - [functions-bindings-service-bus-trigger.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-bindings-service-bus-trigger.md)
- Add: `ServiceBusConnection__fullyQualifiedNamespace`, `__credential`, `__clientId`
- Add: Message metadata access example
- [ ] **Cosmos DB Trigger** - [functions-bindings-cosmosdb-v2-trigger.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-bindings-cosmosdb-v2-trigger.md)
- Add: `COSMOS_CONNECTION__accountEndpoint`, `__credential`, `__clientId`
- Add: `create_lease_container_if_not_exists` example
- [ ] **Blob Trigger (EventGrid)** - [functions-event-grid-blob-trigger.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-event-grid-blob-trigger.md)
- Add: `STORAGE__blobServiceUri`, `__credential`, `__clientId`
- Add: Idempotency check pattern
- [ ] **SQL Trigger** - [functions-bindings-azure-sql-trigger.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-bindings-azure-sql-trigger.md)
- Add: Model class deserialization example
- Add: Error handling pattern
### Nice-to-Have
- [ ] **Timer Trigger** - [functions-bindings-timer.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/functions-bindings-timer.md)
- Add: Health endpoint showing schedule
- Add: `timer.past_due` check example
- [ ] **Durable Functions** - [durable-functions-orchestrations.md](https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/durable/durable-functions-orchestrations.md)
- Enhanced fan-out/fan-in patterns
### Not Applicable
- **MCP Recipe** - No Learn equivalent exists (MCP is an emerging AI standard)
## Example UAMI Configuration
The following pattern should be documented across all trigger bindings:
```json
{
"__fullyQualifiedNamespace": ".servicebus.windows.net",
"__credential": "managedidentity",
"__clientId": ""
}
```
Or for Cosmos DB:
```json
{
"__accountEndpoint": "https://.documents.azure.com:443/",
"__credential": "managedidentity",
"__clientId": ""
}
```
## Related PRs
- #934 - Introduced the composable recipe architecture with these patterns
- PRs to be filed against MicrosoftDocs/azure-docs (see checklist above)
## Labels
/label documentation
/label azure-functions
Contributor guide
Assessment
This issue has not been assessed yet.