Gem Version Build Status security Test Coverage Code Climate

Fog Azure Resource Manager

This document describes how to get started with Fog using Microsoft Azure as a cloud resource management services provider.


  • Fog-azure-rm supports Ruby version 2.0.0 or later


Add this line to your application's Gemfile:

gem 'fog-azure-rm'

And then execute:

$ bundle

Or install it yourself as:

$ gem install fog-azure-rm


You can use this gem against the Microsoft Azure Resource Manager Services in the cloud. Of course, to use the Microsoft Azure Resource Manager Services in the cloud, you need to first create a Microsoft Azure account.

  • Set 'LOCATION' constant based on the Azure cloud you are using in config.rb file. By default it will be 'eastus'.


The next step to use this gem, is authentication and permissioning. It is important to get familiar with this concept. For a reference on setting up a service principal from the command line see Authenticating a service principal with Azure Resource Manager or Unattended Authentication. For a more robust explanation of authentication in Azure, see Developer’s guide to auth with Azure Resource Manager API.

After creating the service principal, you should have three pieces of information, a client id (GUID), client secret (string) and tenant id (GUID).


Fog-AzureRM for compute includes implementation of Virtual Machines and Availability Sets. Readme for the usage of Compute module.


Fog-AzureRM for resources includes implementation of Resource Groups. Readme for the usage of Resources module.


Fog-AzureRM for dns includes implementation of Record sets and Zones. Readme for the usage of DNS module.


Fog-AzureRM for network includes implementation of Network Interfaces, Public IPs, Subnets and Virtual Networks. Readme for the usage of Network module.


Fog-AzureRM for storage includes implementation of Storage Accounts. Readme for the usage of Storage module.

Traffic Manager

Fog-AzureRM for Traffic Manager includes implementation of Traffic Manager Profile and Traffic Manager End-points. Readme for the usage of Traffic Manager module.


Fog-AzureRM for SQL includes implementation of SQL Server, SQL Databases and Data Warehouse. Readme for the usage of Azure SQL module.

Supported Services

Use following command for the complete list of services, Fog provides for Azure Resource Manager.



See in this repository.


The gem is available as open source under the terms of the MIT License.