Giter VIP home page Giter VIP logo

Comments (13)

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

<DataVHDs> <DataVHD Exist="N" Size="50GB" Fixed="N" SupportPR="N" /> <DataVHD Exist="Y" MoveOrCopy="Copy" SourcePath=".\ToolsVHD\Tools.VHDX" DestPath="\DataVHDs" /> </DataVHDs>

Basic idea for XML under <VM> tag -- possibly be extending this as I think about it.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

So the above XML would:

  1. Remove a 50GB fixed disk if it exists (should we specify a path? Don't want to remove/delete the wrong one)
  2. Create a new data disk in the root of ?? in the folder \DataVhds that is a copy of .\ToolsVHD\Tools.vhdx (relative to the path of the configuration.xml file).

If no destpath is specified then perhaps VHD would default to being put in the Virtual Hard Disks folder in the VM folder.

Question: What is the supportPR flag?

from labbuilder.

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

Nope, actually it is supposed to be two examples for the same VM

One creating a 50 GB VHDX
The Exist tag should be more of a Does it exist already piece.
The Fixed tag is to determine if it should be a fixed or dynamically expanding disk
SupportPR is short for the -supportpersistentreservation value used to create shared VHDX files

Yes, without a path, default to the Virtual Hard Disk Path for the VM

Second example is meant to either move or copy an existing VHDX to the specified directory under the VMs main directory (Just thinking options)

From: Daniel Scott-Raynsford [mailto:[email protected]]
Sent: Wednesday, February 10, 2016 6:21 PM
To: PlagueHO/LabBuilder [email protected]
Cc: Matthew Walker [email protected]
Subject: Re: [LabBuilder] Add Support for Multiple Data disks to be specified for each VM (#9)

So the above XML would:

  1. Remove a 50GB fixed disk if it exists (should we specify a path? Don't want to remove/delete the wrong one)
  2. Create a new data disk in the root of ?? in the folder \DataVhds that is a copy of .\ToolsVHD\Tools.vhdx (relative to the path of the configuration.xml file).

If no destpath is specified then perhaps VHD would default to being put in the Virtual Hard Disks folder in the VM folder.

Question: What is the supportPR flag?


Reply to this email directly or view it on GitHubhttps://github.com//issues/9#issuecomment-182651968.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

So, to clarify:
if Exists = 'Y': Don't create the VHD - just attach it
if Exists = 'N': create the VHD with the options as specified.

I'm thinking we might not need that flag. We could use this:
To create a new 50GB Fixed VHDx with PR disabled in the D:\DataDisks\MyNewVHD.vhdx:

<DataVHD VHDPath="D:\DataDisks\MyNewVHD.vhdx" Size="50GB" Fixed="N" SupportPR="N"/>

To attach an existing VHDx that is in the D:\ToolsVHD\Tools.VHDX folder:

<DataVHD VHDPath="D:\ToolsVHD\Tools.VHDX">

To Copy (and rename) an existing Tools.vhdx found in the ToolsVHD folder to the D:\DataVHDs\SomenewTools.VHDx and attach it:

<DataVHD VHDPath="D:\DataVHDs\SomenewTools.VHDx" MoveOrCopy="Copy" SourcePath=".\ToolsVHD\Tools.VHDX" />

That way the VHDPath parameter is common to all parameter sets. This is also easier to code as there will just be 3 code paths.

Does that make sense to you and support your requirements?

from labbuilder.

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

Looks like it. I was probably just overthinking it.

From: Daniel Scott-Raynsford [mailto:[email protected]]
Sent: Wednesday, February 10, 2016 6:59 PM
To: PlagueHO/LabBuilder [email protected]
Cc: Matthew Walker [email protected]
Subject: Re: [LabBuilder] Add Support for Multiple Data disks to be specified for each VM (#9)

So, to clarify:
if Exists = 'Y': Don't create the VHD - just attach it
if Exists = 'N': create the VHD with the options as specified.

I'm thinking we might not need that flag. We could use this:
To create a new 50GB Fixed VHDx with PR disabled in the D:\DataDisks\MyNewVHD.vhdx:

To attach an existing VHDx that is in the D:\ToolsVHD\Tools.VHDX folder:

To Copy (and rename) an existing Tools.vhdx found in the ToolsVHD folder to the D:\DataVHDs\SomenewTools.VHDx and attach it:

That way the VHDPath parameter is common to all parameter sets. This is also easier to code as there will just be 3 code paths.

Does that make sense to you and support your requirements?


Reply to this email directly or view it on GitHubhttps://github.com//issues/9#issuecomment-182662507.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

Can always revisit it if we need to.

I'm mainly thinking of the VHDPath as a unique identifier that we can use to always ensure we're working with/on the correct disk.

I'll see if I can get this working later on this afternoon.

from labbuilder.

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

Sounds good.

From: Daniel Scott-Raynsford [mailto:[email protected]]
Sent: Wednesday, February 10, 2016 7:09 PM
To: PlagueHO/LabBuilder [email protected]
Cc: Matthew Walker [email protected]
Subject: Re: [LabBuilder] Add Support for Multiple Data disks to be specified for each VM (#9)

Can always revisit it if we need to.

I'm mainly thinking of the VHDPath as a unique identifier that we can use to always ensure we're working with/on the correct disk.

I'll see if I can get this working later on this afternoon.


Reply to this email directly or view it on GitHubhttps://github.com//issues/9#issuecomment-182664862.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

I'm going to remove the Fixed='N' attrib and replace it with a Type attrib e.g.

<DataVHD VHD="D:\DataDisks\MyNewDynamicVHD.vhdx" Type="Dyanmic" Size="50GB" />
<DataVHD VHD="D:\DataDisks\MyNewFixedVHD.vhdx" Type="Fixed" Size="25GB"  />
<DataVHD VHD="D:\ToolsVHD\Tools.VHDX">
<DataVHD VHD="D:\DataVHDs\SomenewTools.VHDx" MoveOrCopy="Copy" SourceVHD=".\ToolsVHD\Tools.VHDX" />
<DataVHD VHD="D:\SharedVHD\Shared.VHDX" Type="Shared" Size="100GB" SupportPR="Y">
<DataVHD VHD="D:\DataVHDs\Differencing.VHDX" Type="Differencing" ParentVHD="D:\ParentDisk\Somedisk.vhdx">

The type attrib will be one of:
Fixed
Dynamic
Shared (will always create a Fixed disk)
Differencing

This will reduce the possibility of conflicting configs (e.g. trying to create a dynamic shared VHDx).

Ok with you?

from labbuilder.

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

Shared doesn’t have to be fixed size.

From: Daniel Scott-Raynsford [mailto:[email protected]]
Sent: Wednesday, February 10, 2016 9:53 PM
To: PlagueHO/LabBuilder [email protected]
Cc: Matthew Walker [email protected]
Subject: Re: [LabBuilder] Add Support for Multiple Data disks to be specified for each VM (#9)

I'm going to remove the Fixed='N' attrib and replace it with a Type attrib e.g.

The type attrib will be one of:
Fixed
Dynamic
Shared (will always create a Fixed disk)
Differencing

This will reduce the possibility of conflicting configs (e.g. trying to create a dynamic shared VHDx).

Ok with you?


Reply to this email directly or view it on GitHubhttps://github.com//issues/9#issuecomment-182692424.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

Oh! I wonder why I thought it did? Or is it differencing that can't be a shared disk?

There goes that plan then 😦

How about:

<DataVHD VHDPath="D:\DataDisks\MyNewDynamicVHD.vhdx" Size="50GB" Type="Dyanmic" /> 
<DataVHD VHDPath="D:\DataDisks\MyNewFixedVHD.vhdx" Size="25GB" Type="Fixed" />
<DataVHD VHDPath="D:\ToolsVHD\Tools.VHDX"> <DataVHD VHDPath="D:\DataVHDs\SomenewTools.VHDx" MoveOrCopy="Copy" SourcePath=".\ToolsVHD\Tools.VHDX" />
<DataVHD VHDPath="D:\SharedVHD\Shared.VHDX" Type="Dynamic" Size="100GB" Shared="Y" SupportPR="Y">
<DataVHD VHDPath="D:\DataVHDs\Differencing.VHDX" Type="Differencing" ParentVHD="D:\ParentDisk\Somedisk.vhdx"> 

from labbuilder.

MS-MatthewWalker avatar MS-MatthewWalker commented on August 15, 2024

I don’t think they can be differencing, but fixed or dynamic I know work fine.

From: Daniel Scott-Raynsford [mailto:[email protected]]
Sent: Wednesday, February 10, 2016 10:01 PM
To: PlagueHO/LabBuilder [email protected]
Cc: Matthew Walker [email protected]
Subject: Re: [LabBuilder] Add Support for Multiple Data disks to be specified for each VM (#9)

Oh! I wonder why I thought it did? Or is it differencing that can't be a shared disk?

There goes that plan then [:frowning:]

How about:


Reply to this email directly or view it on GitHubhttps://github.com//issues/9#issuecomment-182693057.

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

A possible future enhancement to this I may make as well is the ability to automatically mount the VHD to either a letter or path. This can already be done now via DSC, though so won't add it with this release - just something to keep in mind. Especially as things like partitioning and formatting come into play as well (all which can be currently done with DSC).

from labbuilder.

PlagueHO avatar PlagueHO commented on August 15, 2024

Current task list to complete this item:

  • Update sample configuration files with structure and remove old datavhdsize attribute
  • Update Get-LabVMs so that if VHD contains a relative path then it will be set relative to Virtual Hard Disks folder.
  • Update Get-LabVMs so that DataVHDSize is no longer used in Templates.
  • Update Get-LabVMs to pull and validate structure from configuration xml.
  • Update Unit tests for Get-LabVMs
  • Update Get-LabVMTemplates and remove DataVHDSize.
  • Create new function to create/update/manage data disk VHDs (separate from Initialize-LabVMs because function is getting too large).

from labbuilder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.