Framework for Azure Resource Manager Deployments based on ARM-Templates. Made for tested Infrastructure as Code Projects. Leveraging PowerShell Core.
The module will create a PowerShell module in specified path.
It can be used to deploy Azure Resource Manager Templates.
The scaffolding is based on Plaster
, it generates tests and best practices checks for Azure Resource Manager Templates.
See Examples e.g. createBasic.ps1
# .\Examples\createBasic.ps1
$input = @{
ModuleName = 'KeyVault'
ModuleDescription = 'Function to deploy KeyVault'
Path = $Path
DefaultCommandPrefix = "xAzKV"
EMail = "[email protected]"
CompanyName = "Microsoft"
AuthorName = "Mark"
}
$Module = New-xAzModule @Input
<#
Directory: C:\temp\xAz.KeyVault
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 27.01.2019 15:51 .vscode
d----- 27.01.2019 15:51 Classes
d----- 27.01.2019 15:51 docs
d----- 27.01.2019 15:51 Localization
d----- 27.01.2019 15:51 Private
d----- 27.01.2019 15:51 Public
d----- 27.01.2019 15:51 Static
d----- 27.01.2019 15:51 Test
-a---- 27.01.2019 15:51 7670 CommonResourceHelper.psm1
-a---- 27.01.2019 15:51 13 KeyVaultSecrets.psd1
-a---- 27.01.2019 15:51 3908 xAz.KeyVault.psd1
-a---- 27.01.2019 14:27 1282 xAz.KeyVault.psm1
#>
Import-Module C:\temp\xAz.KeyVault\xAz.KeyVault.psd1
Get-Command -Module xAz.KeyVault
<#
CommandType Name Version Source
----------- ---- ------- ------
Function Get-xAzKVName 0.0.1 xAz.KeyVault
Function Get-xAzKVSecret 0.0.1 xAz.KeyVault
Function Get-xAzKVTemplate 0.0.1 xAz.KeyVault
Function New-xAzKVDeployment 0.0.1 xAz.KeyVault
#>
# Edit the functions
$Name = Get-xAzKVName -Environment p
New-xAzKVDeployment -ResourceName $Name
xAz.New Module
for clean Build additionally PSake
This is a personal repository by markwarneke. Microsoft is NOT maintaining this repository, we stick to the code of conduct
- twitter: @markwarneke
- github: markwarneke