Building an Azure DevOps Copilot using .NET 8, Semantic Kernel and Azure OpenAI GPT-4o

This post demonstrates how to create an Azure DevOps Copilot that utilizes a small subset of the Azure DevOps REST API. To achieve this, we will be using Semantic Kernel along with .NET 8 and Azure OpenAI.
Read more →

Announcing dotnetramblings.com or how to build a .NET news aggregator site

Let’s check how I build my new site www.dotnetramblings.com. This site is a .NET news aggregator that updates its content every three hours. The main technologies employed to build it include Hugo, Python and Github Actions.
Read more →

Building and deploying a .NET 8 App on an ARM64 processor using Azure Pipelines and AWS ECS Fargate. Part 2: Demo

In this two-part series, I’m going to show you how to build and deploy a .NET 8 app container image that targets an ARM64 processor. In part 2, we will attempt to perform an end-to-end process. This will involve building a .NET 8 API, containerizing the app targeting an ARM64 processor using Azure Pipelines, and deploying it on AWS ECS Fargate. Furthermore, a benchmark will also be conducted to compare the performance of the application running on an ARM64 Fargate container versus an AMD64 Fargate container.
Read more →

Building and deploying a .NET 8 App on an ARM64 processor using Azure Pipelines and AWS ECS Fargate. Part 1: How to build multi-platform images

In this two-part series, I’m going to show you how to build and deploy a .NET 8 app container image that targets an ARM64 processor. In part 1, I’ll be discussing some key concepts that you should know about how to build .NET multi-platform images.
Read more →

How to update an Azure API Management API that is configured with a remote OpenApi definition using Terraform

In this post, you’ll learn how to create and update an Azure API Management API configured to fetch the OpenAPI definition from a downstream API using Terraform.
Read more →

How to push a container image to Azure Container Registry (ACR) using Terraform

In this brief post, I want to show 3 options you can use to push an application into an Azure Container Registry (ACR) using Terraform.
Read more →

Trying to automate Microsoft Entra ID App Registration process using Terraform

The purpose of this post is to test the App Registration process using the latest version of the Terraform provider for Microsoft Entra ID. To achieve this, we’re going to register multiple apps on Microsoft Entra ID and make them interact with each other using a couple of different OAuth2 authorization flows.
Read more →

Building a C# enhancing app using Azure OpenAI GPT-4 and Streamlit

This post demonstrates the simplicity of developing an app that can enhances a C# file using only GenAI’s basic skills. By utilizing Azure OpenAI GPT-4 model, the app can effortlessly add or improve XML comments, provide code explanations, suggest enhancements, and generate unit tests for any given C# file.
Read more →

Building a Q&A app capable of answering questions related to your enterprise documents using Azure OpenAI’s GPT-4, Pinecone and Streamlit.

The purpose of this post is to show you how to build a basic GPT-4 Q&A app in just a couple of hours that is capable of answering questions about your company’s internal documents. We will use Azure OpenAI, Pinecone and Streamlit to build it.
Read more →

Building a serverless API that tweets about my blog posts using Azure OpenAI and LangChain

This post is going to show you a simple way of building a serverless Python API that uses LangChain and Azure OpenAI to create tweets summarizing the content of my blog posts.
Read more →

How to automatically purge stale images from Azure Container Registry using ACR Tasks

Keeping your container registry free of stale or unwanted images is a task that often gets overlooked when beginning working with containers in the enterprise. In this post, I want to show you how you can use ACR Tasks to automate this process when working with Azure Container Registry.
Read more →

Trying out the built-in container support for the .NET SDK

A few months ago the built-in container support for the .NET SDK was announced. In this post I’ll put this feature to test, I’ll try to migrate from an application that contains a rather complex Dockerfile to a new version that has no Dockerfile and instead uses the container support feature.
Read more →

How to deploy an Azure resource using Terraform when it is not available in the AzureRM official provider

This post is going to walk you through the options available when we want to create or update a service on Azure using Terraform, but it is not available on the AzureRM Terraform provider.
Read more →

Testing Azure Private Endpoints DNS resolution over an Azure P2S VPN connection

The purpose of this post is to try out the new Azure DNS Private Resolver resource. To test it, we’re going to try to solve one of the current issues that Azure VPN has right now: when connected over an Azure P2S VPN the private DNS zone resolution does not work. This becomes quite problematic when you’re using private endpoints to secure some private resources, because there is no easy way to resolve the private endpoint DNS when connected to a P2S VPN.
Read more →

How to bootstrap Terraform and Azure DevOps to start deploying your infrastructure as code to Azure

Deploying infrastructure as code on Azure using Azure Pipelines and Terraform requires a minimal bootstrap process. This process can be done manually, but you’ll have to do it every time you want to start deploying resources into a new subscription. So, having some kind of automation seems the way to go here. And that’s exactly what I want to show in this post, how to programmatically bootstrap an Azure subscription and an Azure DevOps project to start deploying Infrastructure as Code with Terraform.
Read more →

Building an Async HTTP Api with Azure Durable Functions and Python

The async HTTP API pattern addresses the problem of coordinating the state of long-running operations with external clients. Azure Durable Functions provides built-in support for this pattern and in this post I’m going to show you how to implement it using Python.
Read more →

Testing how to use some container vulnerabilities scanners with Azure Pipelines

Vulnerability scanning allows us to review the security state of the container images and take actions to fix issues identified during the scan, resulting in more secure deployments. In this post I will be covering how you can use some of the most well-known scanners alongside with your Azure DevOps CI/CD YAML Pipelines.
Read more →

Securing a graphQL API with Azure Active Directory

In today’s post I want to talk about how you can secure a .NET graphQL API that uses HotChocolate (https://chillicream.com/) with Azure Active Directory.
Read more →

Trying to setup an Azure DevOps organization using Terraform

On today’s post I want to test the Azure DevOps Terraform provider and that’s why I’ll be trying to automate the setup of an Azure DevOps organization using it.
Read more →

Testing out the Azure Static Web Apps service. Let’s try to deploy this blog into an static web app

I been wanting to try Azure Static Web Apps for quite some time and I thought that instead of deploying some dummy static site I could use my blog as a test subject, so let’s do it!
Read more →

An opinionated approach about how to create an AWS ECS Fargate cluster and deploy apps on it using Azure DevOps Pipelines

These past couple of weeks I’ve been tinkering with AWS ECS Fargate and after losing some time tackling different approaches I thought it might be useful to write down what I ended up building, so without further ado let’s dig in.
Read more →

Answering some basic questions about registering applications on Azure Active Directory

These past years I worked with a few companies that uses Azure Active Directory to perform authentication and authorization on their line-of-business (LOB) applications and from time to time I get questions about how to register apps on AAD. Those questions are always pretty similar and most of the time the problem lies in some misconception, so I thought it might be a good idea to try to answer some of them and at the same time write them down in this post.
Read more →

Provisioning resources on AWS using AWS CDK and Azure DevOps Pipelines

In today’s post I will show you how you can deploy an AWS CDK application using Azure DevOps.
Read more →

A practical example of GitOps using Azure DevOps, Azure Container Registry, Helm, Flux and Kubernetes

GitOps is a way of implementing Continuous Deployment. The core idea of GitOps is having a Git repository that always contains declarative descriptions of the desired infrastructure, and in this post I’ll be building a practical example of GitOps using Azure.
Read more →

Trying to automate Azure Active Directory App Registration process using Terraform

Today I want to try to use Terraform to automate the app registration process in Azure Active Directory.
Read more →

Why and how you should add a healthcheck endpoint to your Wcf legacy applications

What I wanted to talk in these post is how easy is to add a healthcheck endpoint in a WCF application, and how you can use it in case you want to move the application into the Cloud in the near future.
Read more →