WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Resources
    • Nested Virtualization
  • VMware Nostalgia
  • Apple
You are here: Home / Automation / Enhancements to VMware Cloud Foundation (VCF) & vSphere Automated Lab Deployment Scripts

Enhancements to VMware Cloud Foundation (VCF) & vSphere Automated Lab Deployment Scripts

03.03.2025 by William Lam // 2 Comments

Simplicity is something I try to strive for when creating automation, whether that is for myself or for our customers. When I develop a script, I try to keep everything within a single file, so that it is easy to share and consume. As a script increases in functionality, it may be useful to break out some of its functions, typically libraries or modules.

I was recently debugging an issue with my popular automated lab deployment script for VMware Cloud Foundation (VCF) and while looking through the script that the user had been using, I found numerous variables that were commented out and replaced with their own values, which looked like they had different configuration and environments where they were using this single script.

It then hit me, why have I not considered externalizing all the variables that the script relied on, such that a user could easily supply different configuration options without needing to edit the primary deployment script!? 😅

This was clearly the solution that I should have been considered once the script grew in popularity but due to my goal of keeping the script "simple", I had not thought about this until I saw someone else version of the script ... which is funny as I have also found myself making copies of the script for use in different infrastructure environments 🤣

The VCF Automated Lab Deployment Script now accepts new -EnvConfigFile parameter which simply points to ps1 file that contains all the variables used by the deployment script. The script continues to function as previously, but rather than editing the script every time there is an environment or BOM change, you can simply create or edit this external configuration file.

Here is a screenshot of what that now looks like for deploying VCF Management Domain:

In addition, the supplemental VCF Workload Domain script has also been enhanced to support the same -EnvConfigFile parameter which you can see in the screenshot below:

I have also tested this with the latest VCF 5.2.1.1 release and have also resolved vLCM based issue that had been reported earlier.

I have also updated my other popular vSphere 8.x Automated Lab Deployment Script to also accept the new -EnvConfigFile parameter which simply points to ps1 file that contains all the variables used by the deployment script. You can refer to the Github repo for updated change and example variable file.

More from my site

  • Finding vCenter Cloud Gateway Deployments in your environment
  • Programmatically accessing the Broadcom Compatibility Guide (BCG)
  • Automating counting cores & TiBs for new VMware vSphere Foundation (VVF) and VMware Cloud Foundation (VCF) SKUs
  • Frequently asked scenarios about Subscription & Entitlement for vSphere+, vSAN+ and VCF+
  • Frequently asked scenarios about Global Inventory for vSphere+, vSAN+ and VCF+

Categories // Automation, VMware Cloud Foundation, VMware vSphere Foundation, VSAN Tags // VMware Cloud Foundation, VSAN, vSphere

Comments

  1. *protectedDavid Vincent says

    03/04/2025 at 4:07 pm

    I'd love to squeeze this onto a HP Z440 workstation with 256GB of ram.. what corners can be cut to support that install scenario?

    Reply
  2. *protectedCharles Windom says

    05/13/2025 at 3:31 pm

    Hey Will,
    In your script, you have the section;

    This section describes the location of the files required for deployment.
    $NestedESXiApplianceOVA = "/data/images/Nested_ESXi8.0u3c_Appliance_Template_v1.ova"
    $CloudBuilderOVA = "/data/images/VMware-Cloud-Builder-5.2.1.1-24397777_OVF10.ova"

    If I have the deployment files (ESXi & Cloud Builder) in C:\images\ do I change the location to C:\images or C:/images in the script?

    Reply

Thanks for the comment!Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • VMware Flings is now available in Free Downloads of Broadcom Support Portal (BSP) 05/19/2025
  • VMUG Connect 2025 - Minimal VMware Cloud Foundation (VCF) 5.x in a Box  05/15/2025
  • Programmatically accessing the Broadcom Compatibility Guide (BCG) 05/06/2025
  • Quick Tip - Validating Broadcom Download Token  05/01/2025
  • Supported chipsets for the USB Network Native Driver for ESXi Fling 04/23/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...