Skip to content

Try The Alpha

  • PowerShell 7.6 or later
  • powershell-yaml 0.4.12
  • a local clone of the repository
Terminal window
Install-PSResource powershell-yaml -Version 0.4.12 -Repository PSGallery
Import-Module ./src/AzureDataLabToolkit/AzureDataLabToolkit.psd1

The minimal example selects the fixed secure SQL VM alpha profile: Trusted Launch, Secure Boot, vTPM, encryption at host, a system-assigned managed identity, private VM networking, Key Vault, and Azure Bastion Basic.

Terminal window
Test-AzureDataLabConfiguration ./examples/sqlvm-minimal.yaml
$plan = New-AzureDataLabPlan ./examples/sqlvm-minimal.yaml
$plan.approval.blockingFindingIds
$plan.approval.requiredAcknowledgementIds

The default plan is intentionally blocked until authenticated WhatIf resolves an immutable marketplace image version and an approved secure workflow supplies the referenced VM administrator secret.

An existing customer-managed-key disk encryption set can be selected with -DiskEncryptionSetResourceId. The plan treats it as reused, wires it into the OS and SQL data disks, and requires live verification of region, key, and identity compatibility.

Terminal window
Export-AzureDataLabPlan $plan -Format Json
Export-AzureDataLabPlan $plan -Format Markdown -Path ./sqlvm-plan.md
Export-AzureDataLabPlan $plan -Format Html -Path ./sqlvm-plan.html

Files are not overwritten unless -Force is explicit. HTML is standalone and contains no script.

Terminal window
$plan = New-AzureDataLabPlan `
./examples/sqlvm-minimal.yaml `
-GeneratePassword

-ShowGeneratedPassword is a second, independent opt-in. It is accepted only with -GeneratePassword and creates a high-severity, plan-hash-bound acknowledgement requirement because shell output can remain in scrollback, transcripts, screenshots, and captured logs.

Terminal window
$plan = New-AzureDataLabPlan ./examples/sqlvm-backup-share.yaml

This plans Azure Files with SMB OAuth, private endpoint and DNS, VM managed identity authorization, and drive-mount preparation. It also selects the manual SQL VM backup-restore solution pack and its exact dbatools catalog dependency. Catalog integrity is unresolved, so deployment remains blocked. The plan also carries a dedicated blocker until acquisition, integrity verification, installation, credential refresh, and probing for Microsoft’s AzFilesSmbMIClient are implemented. Local mount and restore script rendering has no dependency on future Azure or guest operations; staging is modeled as a separate action. No file is uploaded, no drive is mounted, and no database is restored.

Authenticated -WhatIf, cost estimation, PowerShell deployment, guest operations, probes, state, and teardown are later delivery segments. See Project Status and Testing Strategy for the boundary between current code and committed design.