Skip to main content

Azure DevOps Server & On-Premise Products

This documentation explains how to set up a secure connection between the Cloud-native SQAI Suite and your self-hosted Azure DevOps Server (formerly TFS) using either Azure Relay or Azure VPN Gateway.

Updated over 2 weeks ago

⚠️ Disclaimer: SQAI Suite provides no certainty or guarantee regarding the success or stability of these networking configurations. The ultimate feasibility for your specific environment must be assessed jointly with your IT/Infrastructure Security Administrators and the SQAI Suite Technical Team before proceeding.

SQAI Suite is a Cloud-native platform. While it integrates out-of-the-box with Azure DevOps Services (Cloud), connecting to Azure DevOps Server (On-Premise) requires a secure bridge to allow our cloud application to communicate with your internal network.

Depending on the situation, we could support two primary methods for this connectivity in our Enterprise Pricing Plan, each method comes with a setup cost and monthly support fee.

1. Azure Relay

Azure Relay allows you to securely expose your Azure DevOps Server API to SQAI Suite without opening inbound firewall ports.

  • How it works:
    You install a small "Hybrid Connection" agent on-premises. This agent opens an outbound connection to Azure. SQAI Suite sends requests to the Azure Relay endpoint, which "tunnels" the request down to your local server.

  • Pros: No inbound firewall ports required; no complex VPN overhead; scoped specifically to the Azure DevOps application endpoint.

  • Cons: Requires an Azure subscription to host the Relay resource.

2. Azure VPN Gateway

This method treats your on-premises network as an extension of your Azure Virtual Network (VNet).

  • How it works: An encrypted tunnel is established between your local VPN device and an Azure VPN Gateway. Since SQAI Suite communicates within the Azure ecosystem, it can reach your server via this private tunnel.

  • Pros: High bandwidth (up to 10 Gbps); suitable if your organization already has a hybrid cloud strategy.

  • Cons: Requires an on-premises VPN device; more intrusive as it alters network-level routing.

3. Setup Requirements and Steps

The configuration requires coordination between your Azure Administrator and your SQAI Suite Tech Lead.

Step 1: Choose and Configure the Connection Path

Option A: Setting up Azure Relay (Hybrid Connections)

  1. In the Azure Portal, create an Azure Relay namespace.

  2. Create a Hybrid Connection specifically for your Azure DevOps Server URL.

  3. Install the listener (agent) on a server within your network that has access to Azure DevOps Server.

Option B: Setting up Azure VPN Gateway

  1. Deploy a Virtual Network Gateway in your Azure Tenant.

  2. Configure a Site-to-Site VPN connection to your on-premises VPN appliance.

  3. Ensure routing is configured so the SQAI Suite service can resolve your internal Azure DevOps Server address.

Step 2: Retrieve the Endpoint URL

Once the connection is established:

  • For Relay: You will receive a Relay DNS name (e.g., your-relay.servicebus.windows.net).

  • For VPN: You will likely use the internal FQDN of your server.

Step 3: Connect in SQAI Suite

In the SQAI Suite integration settings, connect as if it was a cloud connection:

4. Important Disclaimers and Dependencies

1. Security & Admin Control

Unlike Cloud-to-Cloud integrations, these methods rely heavily on your internal IT security policies. SQAI Suite cannot circumvent firewalls or security rules managed by your infrastructure team.

2. Version Compatibility

The stability of the integration depends on your version of Azure DevOps Server. We recommend running a supported version (2019 or later) to ensure API compatibility with SQAI Suite features.

3. Support Boundaries

SQAI Suite provides support for the integration interface within our platform. Technical support for the health, maintenance, and "up-time" of the Azure Relay agent or VPN Gateway must be managed by your internal IT team or via Microsoft Support.

Did this answer your question?