Azure DevOps (ADO) teams keep asking for a repeatable way to land on GitHub Enterprise Cloud without babysitting manual Git mirrors. The good news: GitHub’s import surface now covers one-off REST-based imports, the GitHub Enterprise Importer (GEI) GraphQL APIs, and automation-friendly tooling such as the gh ado2gh extension. Below is a field-tested playbook that blends those APIs,… Continue reading Migrating Azure DevOps repositories to GitHub Enterprise with the GitHub import APIs
Tag: Automation
Synapse deployments with Workload Identity from Azure Pipeline
The official Azure Synapse Analytics deployment extension for Azure Pipelines still ships without Workload Identity Federation (WIF) support, and there is no public ETA for when that capability will land. Rather than wait, I pulled down the same codebase Microsoft uses and produced a like-for-like variant that lights up WIF so anyone who is blocked… Continue reading Synapse deployments with Workload Identity from Azure Pipeline
Building Backstage AI Chat Plugin with Azure AI Foundry Agents
This post shows how to add an AI assistant plugin to Backstage that lets internal developers chat with their own domain data using Azure AI Foundry Agents. We cover agent concepts, minimal API usage, plugin structure (frontend + lightweight backend proxy), security (secrets & identity), and deployment guidance. 1. Why an AI Chat Plugin in… Continue reading Building Backstage AI Chat Plugin with Azure AI Foundry Agents
Backstage on Azure Container Apps with Microsoft Entra ID (Azure AD) Authentication
End-to-end guide: containerizing Backstage, provisioning Azure resources (with Bicep & CLI), enabling Microsoft Entra (formerly Azure AD) sign-in, managing secrets, scaling, observing, troubleshooting, and cleaning up — all aligned with current Azure best practices (managed identities, least privilege, and no hard‑coded secrets). Why Backstage + Azure Container Apps Backstage centralizes your internal developer portal (catalog,… Continue reading Backstage on Azure Container Apps with Microsoft Entra ID (Azure AD) Authentication
Securely Trigger GitHub Workflows from Azure Logic Apps Using GitHub App Authentication
In this tutorial, we'll explore how to trigger GitHub Actions workflows from Azure Logic Apps without relying on Personal Access Tokens (PATs). Instead, we'll utilize GitHub App authentication, which offers enhanced security and scalability for automated workflows. 🧩 Prerequisites Before we begin, ensure you have the following: An Azure Logic App (Standard). A GitHub App… Continue reading Securely Trigger GitHub Workflows from Azure Logic Apps Using GitHub App Authentication
Multi-Tenant Identity Federation: Accessing Multiple Entra ID Tenants with Managed Identity
Introduction Recently, I had the opportunity to help a customer solve a complex challenge involving multi-tenant identity federation. They needed to securely access resources across different Azure Active Directory (now Entra ID) tenants without managing secrets or certificates. The solution involved using managed identity with federated credentials to perform token exchange between tenants—a powerful but… Continue reading Multi-Tenant Identity Federation: Accessing Multiple Entra ID Tenants with Managed Identity
Blue-Green and Canary Releases with Zero-Downtime for Azure Functions Flex Consumption with APIM
This solution demonstrates the power of combining multiple Azure services to create sophisticated deployment patterns. As Azure Functions Flex Consumption matures, this approach provides a solid foundation that can be easily adapted when native deployment slots become available. The Challenge: Deployment Slots Without Slots Azure Functions on the Consumption plan has long provided deployment slots,… Continue reading Blue-Green and Canary Releases with Zero-Downtime for Azure Functions Flex Consumption with APIM
Building a GitHub Copilot Extension with GitHub Apps – Part 1
This is a first part of a series of posts where I am writing my learning building a GitHub Copilot extension, RAG, using your own model etc. - Second part- Third part Lately, I’ve been working with GitHub Copilot Extensions—powerful integrations that enhance Copilot Chat by connecting it to external tools, services, and custom workflows.… Continue reading Building a GitHub Copilot Extension with GitHub Apps – Part 1
Enhancing Azure DevOps with an AI-Powered Backlog Copilot
In the fast-paced world of software development, managing a product backlog effectively can be a challenge. Product owners, scrum masters, and developers often spend valuable time refining user stories, generating tasks, and organizing features. What if we could leverage the power of AI to automate these processes and make backlog management more efficient? Note: The… Continue reading Enhancing Azure DevOps with an AI-Powered Backlog Copilot
Azure Pipeline Task for Microsoft Teams Channel Messages via Graph API
Background Sometimes, you want to send a message to a Microsoft Teams channel from an Azure Pipeline. It is trivial using the Microsoft Teams connectors - that gives you an endpoint to post the message. However, Office 365 Connectors (Including the Teams connectors) are retiring/retied. Therefore, if you want to publish a message to a… Continue reading Azure Pipeline Task for Microsoft Teams Channel Messages via Graph API