Azure ARM templates are the recommended way for standardising and automating resource deployments to Azure. The resource manager engine that drives the current portal and is also responsible for managing your infrastructure, where everything is a resource (VMs, WebApps, CosmosDB etc). ARM templates are JSON files that describe what your infrastructure looks like and comes with some great benefits: Infrastructure as Code Idempotent Source Control Tool flexibility Tighter security and control For this post, I would like to focus a bit on security and show you how to leverage some of the built-in Azure features to improve your overall Azure …[read more]
Showing all posts tagged: 'devops'
A 12-post collection
Deployment slots have been an invaluable feature for Azure Web Apps for a long time. To find out how to create slots for Azure Web Apps, you can visit the official documentation here. So what makes deployment slots so useful? I summarize some of the benefits below but this is by no means the exhaustive list: Testing in Production - A/B Testing Hot deployments that allow deployment to production with no downtime UAT testing targeting a near live environment Easy roll out and roll back Full or incremental swapping DevOps integration with slots (VSTS deployment directly to slot) many …[read more]
Microsoft's cloud service, Azure, provides a plethora of services to choose from when it comes to running your solutions on the cloud. By now, most of us are aware of the PaaS, IaaS and SaaS variances. The image below provides a good summary, in case you're new to this. The trick with the cloud is how to choose the right service or combination of services to make your solution as flexible, scalable and performant as possible while cutting down on costs. However, if there's one thing you need to be careful about is that you should avoid the "lift and …[read more]
DevOps, micro-services, containers, Agile etc. All these terms are widely (ab)used in the developer circles and for many developers they are the norm. There's no tech conference today that doesn't have a track on at least one of these and for a good reason. They are the new and, almost, established way of working with code. Some of them have been around for a while, so they are well established. Others are just getting into the enterprise world - think of containers here. DevOps is definitely not new. If you're a developer, you've been doing DevOps for a long …[read more]
Last week I started a mini-series that focused on [Azure Functions and DevOps. The tooling is still being worked and in the interim we need a solution in order to do proper CI/CD with Azure Functions. In this post we're looking into how to deploy Azure Functions using ARM Templates only. That's correct. This is a one stop solution but requires that you include your function code inline to the ARM JSON template. This is somewhat undocumented and I had to figure out how do it with help from the Azure PG (product group). The good parts Obviously this …[read more]
This approach is by far my preferred and favourite. Ok, it's not perfect but I believe that it provides the most open source, versatile and flexible way to deploy your functions using any tool and any platform. This one does not require you to install any special tools other than the Azure CLI on your build server. In this step, rather than trying to do everything from one file, i.e. the ARM template, I decided to go with the 2 step approach: Deploy the ARM template with the Application Service and Function(s) structure Deploy the Function(s) code. …[read more]