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]
Showing all posts tagged: 'Automation'
A 12-post collection
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]
What is a service principal? Azure has a notion of a Service Principal which, in simple terms, is a service account. On Windows and Linux, this is equivalent to a service account. These accounts are frequently used to run a specific scheduled task, web application pool or even SQL Server service. In a cloud context, Service Principals are the new paradigm. They are great because they allow you to provision an account that only has enough permissions and scope to run a task within a predefined set of Azure resource. It is vital that you don’t use your own …[read more]
Hello friends. Did you hear the news? Did you read the announcement? There's a new [awesome] Azure Management Fluent API for C#. The announcement went out today and as soon as I saw it I knew I had to give it a try! But first, let's see what the team had to say about the release: One C# statement to authenticate. One statement to create a virtual machine. One statement to modify an existing virtual network, etc. No more guessing about what is required vs. optional vs. non-modifiable. And it's all true. Every single statement in that paragraph. The new …[read more]
I'm currently working on a somewhat restricted environment where we have to run SSH commands on a Windows Server. The commands are needed to configure certain settings on a Linux machine running Puppet (the orchestration tool). This is the first time I had to use this setup so, as with everything else, I had to work out how to do it - and then blog about it! For the purpose of this post, I provisioned a small Ubuntu VM on Azure in order to be able to SSH into it and prove that it's doable through PowerShell. Consider it my …[read more]
Automation is great. It's the bedrock of any successful IT department and the default solution for any task that has to be repeated more than once. I'm a big proponent of automation and, since I spend most of my time in Azure, I try to automate as many tasks as I can. Today, I'll explain how to automate your Azure login in order to allow your scripts to run without any supervision. Disclaimer: many of these tasks should be running using the Azure Automation service because of better integration and smoother on boarding. There's a ton of ready-made RunBooks in …[read more]