Automating Azure Disk Encryption with PowerShell

While studying for the 70-533 exam I decided to take a deep dive in to the Disk encryption feature provided by Azure. Azure Disk Encryption uses BitLocker for Windows or DM-Crypt for Linux enabling users to encrypt OS and data disks of Azure Virtual Machines.

It turns out that it’s not just as simple as flicking a switch to get encryption up and running. The service is tied in with Azure Active Directory and Key Vault too. After manually running through the set up a few times I decided to put together a proof of concept script based on client-secret authentication. It’s worth noting that certificate-based authentication is also supported.

Continue reading

Announcing PowervRA v2.0.0!

Today, we are pleased to announce the release of PowervRA v2.0.0!

One of the biggest changes in this release is support for PowerShell Core. I’ve got to tip my hat to the PowerShell team and the community members that have contributed for doing a sterling job so far. Considering the project is only in its alpha phase at the moment it’s it pretty good shape!

In the following post I’m going to cover PowerShell Core support, some interesting news about Docker and try to give a bit of context around our module restructure. For a full list of changes, check out the changelog.

Continue reading

Programatically exporting vRO packages to source

I’ve been meaning to get this post done for ages but kept forgetting. Ten points to Tim Hynes for reminding me get on with it.

So at the moment the vRO REST API doesn’t support exporting packages to a folder. However there are a few ways to programatically achieve this. One way is to use maven and the maven-o11n-package-plugin and the second, which is the one i’ll be covering in this post, is to use vco-cli.

According to the inbuilt help, vco-cli is a

Command line tool, that provides basic vCO package import and export operations. As source or target it can have either .package file, or directory.

More information about the functionality provided by the tool can be found in this exported help document.

Continue reading

PowervRA v1.5.0 – Improved support for the content-mangaement-service API

With the release of PowervRA v1.5.0 we now have richer support for the content-management-service API. We’ve included some new functionality for viewing content and adjusted the naming scheme of some existing functions.

The content-management-service set now includes:

  • Get-vRAContent
  • Get-vRAContentData
  • Get-vRAContentType
  • Get-vRAPackage
  • New-vRAPackage
  • Remove-vRAPackage
  • Export-vRAPackage
  • Test-vRAPackage

Creating and exporting packages

New-vRAPackage now supports the addition multiple content types to a package. In the following example we use Get-vRAContent to return all property groups and composite blueprints. We then create a new package called Package01 that contains our content and export it to the local file system with Export-vRAPackage.

$ContentIds = Get-vRAContent | ? {($_.ContentTypeId -eq "property-group") -or ($_.ContentTypeId -eq "composite-blueprint")} | Select-Object -ExpandProperty Id

New-vRAPackage -Name Package01 -ContentId $ContentIds

Export-vRAPackage -Name Package01 -Path C:\MyPackages

Note: This is not a breaking change, so the old functions still exist but are marked as deprecated and will be removed in a future release.