- Hey, I’m Arash Jalalat, a DevOps Engineer passionate about new technologies, cloud, infrastructure, AI, security, and continuous improvement 🚀
- I share practical guides on Azure ☁️, CI/CD (Azure DevOps & GitHub Actions), Terraform 🏗️, Containerization 🐳, and AI 🤖. From application development to Infrastructure as Code, I explore innovative techniques and share real-world insights.
- 📌 I hope you find my posts helpful!
Building an MCP Server with Azure Functions: Extending GitHub Copilot in the Cloud
Introduction I’ve been experimenting with the Model Context Protocol (MCP) for a while now, and it’s changed how I think about extending AI assistants like GitHub Copilot. Then, Microsoft recently released a stable version of the new MCP trigger for Azure Functions. It made building a cloud-native, serverless MCP server incredibly straightforward. As soon as I saw it, I had an idea: what if I could use this to build a simple, cloud-based tool to save and retrieve notes directly from Copilot? ...
Ask GitHub Copilot for code review in your .NET project
In this blog post, I’ll share my experience building a .NET 8 Azure Function App that retrieves a user profile via the Microsoft Graph API. The function app is designed to run in Azure and return the user profile of the logged-in user via Microsoft Entra-ID. While the technical implementation was exciting, the interesting part of this journey was using GitHub Copilot as a code reviewer through Pull Requests in GitHub. It became generally available on April 4th. I’ll walk you through the process, share my thoughts on Copilot’s feedback, and highlight areas where it shines and where it could improve. ...
Boost your Azure Pipeline with Bicep's deployer() function
Context Last month Microsoft released its newest Bicep version v0.32.4 which includes an interesting function called deployer(). This function can retrieve the ObjectId and TenantId of the deploying Service principal. This can be very helpful in certain cases such as assigning tags to Azure resources or to assign a role to the deploying Service principal. In my experience you have strong Infrastructure as Code (IaC) setup when you combine both Bicep with Azure Pipelines for deploying resources to Azure. Let’s have a look what we can do with the new deployer() function. ...
How to summarize a Git repository using NotebookLM
Exploring NotebookLM’s Audio Overview Feature Context Recently, Google introduced an exciting new feature for NotebookLM: Audio Overview. For those unfamiliar, NotebookLM is a personal AI-powered research assistant (powered by Gemini 1.5 Pro) designed for efficient summarization and note-taking. By uploading your documents, whether PDFs, websites, or text files, NotebookLM analyzes and organizes the content. This allows you to interact with it in various ways. The Audio Overview feature, in particular, caught my attention. It essentially creates a podcast-like experience where two AI hosts discuss your research topic in real time. This conversational format offers a unique way to engage with your content, which can make complex topics more accessible and enjoyable. What’s even better? You can guide the discussion by providing specific instructions, ensuring the conversation focuses on aspects most relevant to you. ...
Building and deploying a chatbot with Azure Functions OpenAI Extension and model GPT-4o mini
Introduction In this blog post, we will explore how to integrate Azure Functions with the OpenAI extension. This integration allows you to use triggers and bindings with the powerful capabilities of OpenAI within your serverless functions. We will walk through the setup, configuration, and deployment of an Azure Functions project that uses the OpenAI extension, using Bicep templates for infrastructure as code. Prerequisites Before we begin, ensure you have the following tools and resources: ...
Azure Functions on Container Apps
Recently, I created my first video about Azure Functions on Azure Container Apps, which you can find below. I also made a GitHub repository where you can find the source code, allowing you to set up the Azure Functions on ACA yourself.
Extract text from image to AI project
In today’s digital age, extracting text from images has become a common task in various domains, from document digitization to text analysis. Optical Character Recognition (OCR) engines like Tesseract have played a significant role in making this process efficient and accessible. However, improving the accuracy and usability of OCR systems remains a challenge. In this blog post, we’ll explore (based on two examples) how to enhance text extraction from images using Tesseract in conjunction with OpenAI’s Generative AI capabilities. ...
Semantic Kernel with C# minimal API
Are you keen on exploring the fusion of Artificial Intelligence (AI) and minimal APIs in the world of C#? If so, you’re in the right place! In this article, I’ll walk you through the integration of Semantic Kernel, an open-source SDK facilitating Large Language Models (LLMs) integration, into a minimal API built using ASP.NET Core in .NET 8. By using the power of OpenAI’s GPT-3, we’ll go on a journey to create a plugin that crafts narratives based on user input. ...
Smooth Sailing with DevOps: Deploying Azure Storage Account using Terraform and Azure YAML Pipelines
Introduction Hi 👋 my fellow tech enthusiasts. As a DevOps Engineer, I often find myself navigating the complex waters of IT challenges both at work and during my free time. Today, I want to share a recent journey into the world of DevOps where we’ll be deploying an Azure Storage Account using Terraform and Azure YAML Pipelines. So, grab your virtual life vests, and let’s embark on this adventure. Why Terraform and Azure YAML Pipelines? Terraform, an Infrastructure as Code (IaC) tool, is a powerful choice for provisioning and managing cloud resources. When combined with Azure DevOps YAML Pipelines, it becomes an even more powerful force for automating deployments, ensuring consistency, and facilitating collaboration within your DevOps team. ...
Azure Workload identity federation with Azure DevOps
About 2 months ago I wrote a blog post about workload identity federation with GitHub Actions. When an application needs to access cloud based resources it often needs to think about authentication and authorization. Using workload identity federation there is no need to use any keys or secrets. For example, Google Cloud Platform and Microsoft Azure are providing this great feature. And now this feature has also been released for Azure DevOps! This means that organizations can now take advantage of this to provide an even more secure way to connect to Azure from Azure DevOps, or rather Azure Pipelines, via a Service Connection. ...