Skip to content

Azure DevOps On-Premises Support - #9014

Open
Tugrulhankars wants to merge 2 commits into
apache:mainfrom
Tugrulhankars:main
Open

Azure DevOps On-Premises Support#9014
Tugrulhankars wants to merge 2 commits into
apache:mainfrom
Tugrulhankars:main

Conversation

@Tugrulhankars

Copy link
Copy Markdown

Summary

This PR introduces full support for Azure DevOps On-Premises (Server) in the azuredevops_go plugin, allowing enterprise users with self-hosted Azure DevOps instances to ingest DevOps data and compute DORA metrics.

Key Changes:

  1. Connection & Auth Model (backend/plugins/azuredevops_go/models/connection.go):
    • Added Endpoint and Username fields to support custom On-Premises base URLs and HTTP Basic Authentication.
    • Updated base URL normalization to handle custom domains/IPs with subpaths (e.g. http://<IP>/DefaultCollection).
  2. Database Migration (backend/plugins/azuredevops_go/models/migrationscripts/):
    • Added migration script 20260726_add_username_to_azuredevops.go to add username and endpoint columns to tool_azuredevops_go_connections.
  3. GitExtractor IIS NTLM Auth Fix (backend/plugins/gitextractor/parser/clone_gitcli.go):
    • Injected -c http.extraHeader="Authorization: Basic <base64>" during git clone execution. This transmits the Basic Auth header on the initial request, bypassing IIS 401 NTLM challenges on Azure DevOps Server when authenticating via PATs.
    • Abstracted DiffLine model to remove non-CGO libgit2 build dependencies on Windows environments.
  4. Config-UI (config-ui/src/plugins/register/azure/config.tsx & utils/request.ts):
    • Exposed Endpoint and Username fields in the Azure DevOps Go connection form.
    • Fixed false-positive login redirects when remote scope connection tests return HTTP 401.

Does this close any open issues?

Closes 8985

Screenshots

Include any relevant screenshots here.

Other Information

  • Backward Compatibility: 100% backward compatible with existing Azure DevOps Cloud (dev.azure.com) connections.
  • Tested: Tested and verified with live Azure DevOps Server (On-Premises) instance for data collection and Grafana DORA metric calculation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant