Skip to content

Latest commit

 

History

History
43 lines (28 loc) · 3.87 KB

getting-started.md

File metadata and controls

43 lines (28 loc) · 3.87 KB

Getting started with infrastructure-as-code

This article describes how to get started with infrastructure as code in Azure, using ARM templates and AzOps GitHub Actions.

Note: Before you start, please make sure that you have read and understood the overall design objective and scope of the reference implementation.

Target audience

The target audience for this guide DevOps / SRE role and assumes knowledge in Azure Resource Manager (ARM) / Infrastructure-as-Code (IaC), Git, and PowerShell.

Prerequisites

This table lists the technical prerequisites needed to use the Enterprise-Scale reference implementation. We have chosen to base the reference implementation on PowerShell, but if desired, it is perfectly possible to use other tools such as e.g. Azure CLI for deployment operations.

Enabling long paths on Windows

The Git clone below and AzOps GitHub Action implementation requires that you enable long paths in Windows. To enable this, execute the following command from a terminal with elevated privileges:

REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f

You will also need to execute the following command line from an elevated terminal:

git config --system core.longpaths true

Restart your computer to ensure changes take effect.

Requirement Additional info
Git >= 2.1 Latest version of git can be found here.

Run following command from command prompt to ensure your Git is correctly configured. You may be prompted for login that may require you to sign in with MFA.

git clone https://github.com/Azure/Enterprise-scale.git
Git handbook
VSCode Latest version of VSCode.

Open the directory Enterprise-scale cloned from previous step inside VSCode and run git pull command to ensure Git Credentials are setup correctly in VSCode.

Exit VSCode and delete Enterprise-scale directory as it will no longer be required.
Install
Minimum version of PowerShell: 7.0 The latest version of PowerShell including install instructions can be found here.
Confirm the version of PowerShell that you are running by typing $PSVersionTable in a PowerShell session.
Instructions
Az.Accounts >= 1.8
Az.Resources >= 2.0.1
Install-Module -Name Az.<ModuleName> -MinimumVersion <Version> -Scope AllUsers
Confirm the version of the module you have by running
Get-Module Az.<ModuleName> -ListAvailable.
Docs
GitHub Cli [optional] choco install gh Docs
Pester >= 4.10.1 Only required if you want to run pester-tests as a developer
Install-Module -Name Pester -MinimumVersion 4.10.1 -Scope AllUsers
You can confirm the version of the module you have by running
Get-Module Pester -ListAvailable.
Docs

📱 If you have Multi-factor authentication (MFA) enabled on any of your accounts, make sure that you have your token app/phone easily accessible before you start.

Next steps

Once you have the technical prerequisites in place, you can proceed to the next step, lets go back to Introduction to Enterprise-Scale "in-a-box" and deploy your Enterprise-scale Tenant.