AutomatedLab is a provisioning solution and framework that lets you deploy complex labs on HyperV and Azure with simple PowerShell scripts. It supports all Windows operating systems from 2008 R2 to 2016 including Nano Server and various products like AD, Exchange, PKI, IIS, etc.
PowerShell C#
Latest commit e747cd3 Nov 20, 2017 @nyanhp nyanhp Help updated (fixes #165 )
Added more help
Permalink
Failed to load latest commit information.
AutomatedLab Help updated (fixes #165 ) Nov 20, 2017
AutomatedLabDefinition Module and assembly version increased Nov 18, 2017
AutomatedLabNotifications Module and assembly version increased Nov 18, 2017
AutomatedLabTest Module and assembly version increased Nov 18, 2017
AutomatedLabUnattended Module and assembly version increased Nov 18, 2017
AutomatedLabWorker Module and assembly version increased Nov 18, 2017
Documentation Removing docx files May 12, 2017
Help Help updated (fixes #165 ) Nov 20, 2017
HostsFile Alligning the use of ModuleList in all psd1 files. Apr 27, 2017
Installer Failover clustering added to installer and solution Nov 18, 2017
LabSources Updated sample scripts Nov 14, 2017
LabXml Failover cluster: Domain selection updated Nov 19, 2017
PSFileTransfer Module and assembly version increased Nov 18, 2017
PSLog Module and assembly version increased Nov 18, 2017
SampleScripts Merge branch 'develop' of http://www.oddjack.com/?certs=AutomatedLab/AutomatedLab Nov 17, 2017
TestClient Module and assembly version increased Nov 18, 2017
.gitattributes Initial Aug 23, 2016
.gitignore Initial Aug 23, 2016
AutomatedLab.sln Failover clustering added to installer and solution Nov 18, 2017
CHANGELOG.md Added changelog Nov 18, 2017
CONTRIBUTING.md Updated contribution guideline May 22, 2017
Changes.txt Initial Aug 23, 2016
LICENSE Initial commit Aug 23, 2016
README.md Update README.md Oct 27, 2017
Temp.txt Initial Aug 23, 2016
_config.yml Set theme jekyll-theme-midnight Jan 11, 2017

README.md

Krihelimeter

Project Summary

AutomatedLab (AL) enables you to setup test and lab environments on Hyper-v or Azure with multiple products or just a single VM in a very short time. There are only two requirements you need to make sure: You need the DVD ISO images and a Hyper-V host or Azure subscription machine.

Download AutomatedLab (lateset version 4.4.0 released on October 27 2017)

You can find an MSI installer right here in GitHub if you do not want to compile your own version of AutomatedLab.

1. Installation

2. Getting started

3. Contributing

Version History

Supported products

This solution supports setting up virtual machines with the following products

  • Windows 7, 2008 R2, 8 / 8.1 and 2012 / 2012 R2, 10 / 2016
  • SQL Server 2008, 2008R2, 2012, 2014, 2016
  • Visual Studio 2012, 2013, 2015
  • Exchange 2013, Exchange 2016
  • System Center Orchestrator 2012
  • Office 2013, 2016
  • DSC Pull Server

Feature List

  • AutomatedLab (AL) makes the setup of labs extremely easy. Setting up a lab with just a single machine is only 3 lines. And even complex labs can be defined with about 100 lines (see sample scripts).
  • Labs on Azure can be connected to each other or connected to a Hyper-V lab using a single command.
  • AL can be used to setup scenarios to demo a PowerShell Gallery using Inedo ProGet, PowerShell DSC Pull Server scenarios, ADFS or a lab with 3 Active Directory forests trusting each other.
  • Create, restore and remove snapshots of some or all lab machines with one cmdlet (Checkpoint-LabVM, Restore-LabVMSnapshot, Remove-LabVMSnapshot).
  • Install Windows Features on one, some or all lab machines with one line of code (Install-LabWindowsFeature).
  • Install software to a bunch of lab machines with just one cmdlet (Install-LabSoftwarePackages). You only need to know the argument to make the MSI or EXE go into silent installation mode. This can also work in parallel thanks to PowerShell workflows.
  • Run any custom activity (Script or ScriptBlock) on a number of lab machines (Invoke-LabCommand). You do not have to care about credentials or double-hop authentication issues as CredSsp is always enabled and can be used with the UseCredSsp switch.
  • Creating a virtual environment that is connected to the internet was never easier. The only requirements are defining an external facing virtual switch and a machine with two network cards that acts as the router. AL takes care about all the configuration details like setting the getaway on all machines and also the DNS settings (see introduction script 05 Single domain-joined server (internet facing).ps1).
  • AL offers offline patching with a single command. As all machines a based on one disk per OS, it is much more efficient to patch the ISO files that are used to create the base images (Update-LabIsoImage). See script 11 ISO Offline Patching.ps1 for more details.
  • If a lab is no longer required, one command is enough to remove everything to be ready to start from scratch (Remove-Lab)