feat: add Azure DevOps enterprise integration support#11667
Conversation
17058e1 to
14b9c54
Compare
f6bcc5b to
acfb349
Compare
87c19b8 to
9c09ccd
Compare
7647ce1 to
38170e5
Compare
|
Fix: Mainly to rename Azure DevOps webhook table migration (083 -> 084). New migration file took over 83 & merged to main before this one.
|
1f25ce7 to
bf7aaa8
Compare
|
Hi, just a note, I'll circle back to reviewing this next week after we (hopefully) finish with shipping OpenHands v1 to the OpenHands cloud. |
|
We've shipped v1 so I'll be QAing this soon. |
|
Updates:
Despite my best attempt, I can't make v1 work on my test environment, so I didn't test for said version. v0 works flawlessly still. Database already set to use v1, but there's a specific runtime-api & runtime pair needed? Appreciate some help on this then I can help test v1. |
This commit adds enterprise-grade Azure DevOps support with webhook-based automation and service principal authentication for multi-tenant SaaS deployments. Key changes: - Implemented webhook event processing for work items and pull requests - Added service principal authentication for automated operations - Implemented Azure DevOps manager for handling webhook events - Added work item and PR comment support with @mention detection - Created callback processor for asynchronous webhook responses - Added webhook registration and management endpoints - Implemented Azure DevOps user enrichment and token management - Added database schema for webhook storage - Fixed API response format handling for comments and field values - Removed linter suppressions for cleaner code The implementation enables: - Automated responses to work item assignments and @mentions - Pull request comment handling with inline code review support - Service principal-based API operations for scalability - Multi-organization support with webhook deduplication - Integration with Keycloak for user management - Webhook-driven conversation creation and management
|
This PR is stale because it has been open for 40 days with no activity. Remove the stale label or leave a comment, otherwise it will be closed in 10 days. |
|
This PR was closed because it had no activity for 50 days. If you feel this was closed in error, and you would like to continue the PR, please resubmit or let us know. |

End-user friendly description
This PR adds enterprise/SaaS support for Azure DevOps integration. It builds on top of /pull/11243 PR by adding SSO authentication, user identity mapping, and webhook security features required for multi-tenant SaaS deployment.
Summary
This PR extends the base Azure DevOps integration PR with enterprise-specific features.
What This PR Adds
azure_devops_id)(organization, subscriptionId, api_key)lookupAzureDevOpsServiceImplwith SaaS-specific featuresPrerequisite
Please follow the README.md in All-Hands-AI/OpenHands-Cloud/pull/238
Azure DevOps (Client side - unfortunately this can't be automated based on my research)
Create an API key. Have this ready for the next step
Create the webhook, since it is at project level, this pair needs to be created in every project. In HTTP headers paste the API key like so:
To-do
Related Issues