Skip to content

Commit

Permalink
Move documentation to the HyperVDsc GitHub Wiki (#201)
Browse files Browse the repository at this point in the history
  • Loading branch information
johlju authored Jun 12, 2022
1 parent 0de4197 commit 6d1e087
Show file tree
Hide file tree
Showing 16 changed files with 101 additions and 591 deletions.
7 changes: 3 additions & 4 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,9 @@
- [ ] Added an entry to the change log under the Unreleased section of the file CHANGELOG.md.
Entry should say what was changed and how that affects users (if applicable), and
reference the issue being resolved (if applicable).
- [ ] Resource documentation added/updated in README.md.
- [ ] Resource parameter descriptions added/updated in README.md, schema.mof and comment-based
help.
- [ ] Comment-based help added/updated.
- [ ] Resource documentation updated in the resource's README.md.
- [ ] Resource parameter descriptions updated in schema.mof.
- [ ] Comment-based help updated, including parameter descriptions.
- [ ] Localization strings added/updated in all localization files as appropriate.
- [ ] Examples appropriately added/updated.
- [ ] Unit tests added/updated. See [DSC Community Testing Guidelines](https://dsccommunity.org/guidelines/testing-guidelines).
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ For older change log history see the [historic changelog](HISTORIC_CHANGELOG.md)
- Updated DSCResources, Examples, Modules and Tests for new naming.
- Updated README.md from _xHyper-V_ to _HyperVDsc
- Renamed default branch to `main` - Fixes [Issue #198](https://github.com/dsccommunity/HyperVDsc/issues/198).
- Moved documentation to the HyperVDsc GitHub Wiki.

## [3.18.0] - 2022-06-04

Expand Down
487 changes: 0 additions & 487 deletions README.md

Large diffs are not rendered by default.

21 changes: 10 additions & 11 deletions source/DSCResources/DSC_VHD/DSC_Vhd.schema.mof
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
[ClassVersion("1.0.0"), FriendlyName("Vhd")]
class DSC_Vhd : OMI_BaseResource
{
[Key, Description("Name of the VHD File")] String Name;
[Key, Description("Folder where the VHD will be created")] String Path;
[Write, Description("Parent VHD file path, for differencing disk")] String ParentPath;
[Write, Description("Maximum size of Vhd to be created")] Uint64 MaximumSizeBytes;
[Write, Description("Virtual disk format - Vhd or Vhdx"), ValueMap{"Vhd","Vhdx"}, Values{"Vhd","Vhdx"}] String Generation;
[Write, Description("Should the VHD be created or deleted"), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Read, Description("Virtual Disk Identifier")] String ID;
[Write, Description("Type of Vhd - Dynamic, Fixed, Differencing"), ValueMap{"Dynamic","Fixed","Differencing"}, Values{"Dynamic","Fixed","Differencing"}] String Type;
[Read, Description("Current size of the VHD")] Uint64 FileSizeBytes;
[Read, Description("Is the VHD attached to a VM or not")] Boolean IsAttached;
[Key, Description("The desired VHD file name.")] String Name;
[Key, Description("he desired Path where the VHD will be created.")] String Path;
[Write, Description("Parent VHD file path, for differencing disk.")] String ParentPath;
[Write, Description("Maximum size of VHD to be created.")] Uint64 MaximumSizeBytes;
[Write, Description("Virtual disk format. The default value is `Vhd`."), ValueMap{"Vhd","Vhdx"}, Values{"Vhd","Vhdx"}] String Generation;
[Write, Description("Specifies if the virtual disk should be present (if not it will be created) or absent (if present it will be removed). Default value is `Present`."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Read, Description("Returns the virtual disk identifier.")] String ID;
[Write, Description("The type of virtual disk. The default value is `Dynamic`."), ValueMap{"Dynamic","Fixed","Differencing"}, Values{"Dynamic","Fixed","Differencing"}] String Type;
[Read, Description("Returns the current size of the virtual disk.")] Uint64 FileSizeBytes;
[Read, Description("Returns if the virtual disk is attached to a VM.")] Boolean IsAttached;
};

Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@ class DSC_VMDvdDrive : OMI_BaseResource
[Key, Description("Specifies the number of the controller to which the DVD drive is to be added.")] Uint32 ControllerNumber;
[Key, Description("Specifies the number of the location on the controller at which the DVD drive is to be added.")] Uint32 ControllerLocation;
[Write, Description("Specifies the full path to the virtual hard disk file or physical hard disk volume for the added DVD drive.")] String Path;
[Write, Description("Specifies if the DVD Drive should exist or not."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Write, Description("Specifies if the DVD Drive should exist or not. The default value is `Present`."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
};
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
class DSC_VMHardDiskDrive : OMI_BaseResource
{
[Key, Description("Specifies the name of the virtual machine whose hard disk drive is to be manipulated.")] String VMName;
[Key, Description("Specifies the full path to the location of the VHD that represents the hard disk drive.")] String Path;
[Write, Description("Specifies the controller type - IDE/SCSI where the disk is attached. If not specified, it defaults to SCSI."), ValueMap{"IDE","SCSI"}, Values{"IDE","SCSI"}] String ControllerType;
[Write, Description("Specifies the number of the controller where the disk is attached. If not specified, it defaults to 0."), ValueMap{"0","1","2","3"}, Values{"0","1","2","3"}] Uint32 ControllerNumber;
[Write, Description("Specifies the number of the location on the controller where the disk is attached. If not specified, it defaults to 0.")] Uint32 ControllerLocation;
[Write, Description("Specifies if the hard disk drive must be present or absent. If not specified, it defaults to Present."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Key, Description("Specifies the full path of the VHD file to be manipulated.")] String Path;
[Write, Description("Specifies the type of controller (IDE/SCSI) to which the hard disk drive is to be set. If not specified, it defaults to `SCSI`."), ValueMap{"IDE","SCSI"}, Values{"IDE","SCSI"}] String ControllerType;
[Write, Description("Specifies the number of the controller to which the hard disk drive is to be set. For IDE the possible values are `0` or `1`, for SCSI the possible values are `0`, `1`, `2`, or `3`. If not specified, it defaults to `0`."), ValueMap{"0","1","2","3"}, Values{"0","1","2","3"}] Uint32 ControllerNumber;
[Write, Description("Specifies the number of the location on the controller at which the hard disk drive is to be set. Possible values for IDE are `0` or `1`, and for SCSI the possible values are between `0` to `63`. If not specified, it defaults to `0`.")] Uint32 ControllerLocation;
[Write, Description("Specifies if the hard disk drive must be present (exist) or absent (not exist). If not specified, it defaults to `Present`."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
};
4 changes: 2 additions & 2 deletions source/DSCResources/DSC_VMHardDiskDrive/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

Manages VHD(X)s attached to a Hyper-V virtual machine.

When ControllerNumber or ControllerLocation is not provided, the same logic
as Set-VMHardDiskDrive cmdlet is used.
When parameter `ControllerNumber` or `ControllerLocation` is not provided,
the same logic as `Set-VMHardDiskDrive` command is used.

## Requirements

Expand Down
12 changes: 6 additions & 6 deletions source/DSCResources/DSC_VMHost/DSC_VMHost.schema.mof
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ class DSC_VMHost : OMI_BaseResource
[Key, Description("Specifies the resource is a single instance, the value must be 'Yes'."), ValueMap{"Yes"}, Values{"Yes"}] String IsSingleInstance;
[Write, Description("Indicates whether users can use enhanced mode when they connect to virtual machines on this server by using Virtual Machine Connection.")] Boolean EnableEnhancedSessionMode;
[Write, Description("Specifies the default value of the World Wide Node Name on the Hyper-V host.")] String FibreChannelWwnn;
[Write, Description("Specifies the maximum value that can be used to generate World Wide Port Names on the Hyper-V host.")] String FibreChannelWwpnMaximum;
[Write, Description("Specifies the minimum value that can be used to generate the World Wide Port Names on the Hyper-V host.")] String FibreChannelWwpnMinimum;
[Write, Description("Specifies the maximum MAC address using a valid hexadecimal value.")] String MacAddressMaximum;
[Write, Description("Specifies the minimum MAC address using a valid hexadecimal value.")] String MacAddressMinimum;
[Write, Description("Specifies the maximum value that can be used to generate the World Wide Port Names on the Hyper-V host. Use with the FibreChannelWwpnMinimum parameter to establish a range of WWPNs that the specified Hyper-V host can assign to virtual Fibre Channel adapters.")] String FibreChannelWwpnMaximum;
[Write, Description("Specifies the minimum value that can be used to generate the World Wide Port Names on the Hyper-V host. Use with the FibreChannelWwpnMaximum parameter to establish a range of WWPNs that the specified Hyper-V host can assign to virtual Fibre Channel adapters.")] String FibreChannelWwpnMinimum;
[Write, Description("Specifies the maximum MAC address using a valid hexadecimal value. Use with the MacAddressMinimum parameter to establish a range of MAC addresses that the specified Hyper-V host can assign to virtual machines configured to receive dynamic MAC addresses.")] String MacAddressMaximum;
[Write, Description("Specifies the minimum MAC address using a valid hexadecimal value. Use with the MacAddressMaximum parameter to establish a range of MAC addresses that the specified Hyper-V host can assign to virtual machines configured to receive dynamic MAC addresses.")] String MacAddressMinimum;
[Write, Description("Specifies the maximum number of storage migrations that can be performed at the same time on the Hyper-V host.")] Uint32 MaximumStorageMigrations;
[Write, Description("Specifies the maximum number of live migrations that can be performed at the same time on the Hyper-V host.")] Uint32 MaximumVirtualMachineMigrations;
[Write, Description("Specifies whether virtual machines on the Hyper-V host can use resources from more than one NUMA node.")] Boolean NumaSpanningEnabled;
[Write, Description("Specifies how often the Hyper-V host saves the data that tracks resource usage. The range is a minimum of 60 minutes to a maximum of 1440 (24 hours).")] Uint32 ResourceMeteringSaveIntervalMinute;
[Write, Description("Specifies how networks are selected for incoming live migration traffic.")] Boolean UseAnyNetworkForMigration;
[Write, Description("Specifies how often the Hyper-V host saves the data that tracks resource usage. The range is a minimum of 60 minutes to a maximum of 1440 minutes (24 hours).")] Uint32 ResourceMeteringSaveIntervalMinute;
[Write, Description("Specifies how networks are selected for incoming live migration traffic. If set to `$true`, any available network on the host can be used for this traffic. If set to `$false`, incoming live migration traffic is transmitted only on the networks specified in the MigrationNetworks property of the host.")] Boolean UseAnyNetworkForMigration;
[Write, Description("Specifies the default folder to store virtual hard disks on the Hyper-V host.")] String VirtualHardDiskPath;
[Write, Description("Specifies the type of authentication to be used for live migrations. The acceptable values for this parameter are 'Kerberos' and 'CredSSP'."), ValueMap{"CredSSP","Kerberos"}, Values{"CredSSP","Kerberos"}] String VirtualMachineMigrationAuthenticationType;
[Write, Description("Specifies the performance option to use for live migration. The acceptable values for this parameter are 'TCPIP', 'Compression' and 'SMB'."), ValueMap{"TCPIP","Compression","SMB"}, Values{"TCPIP","Compression","SMB"}] String VirtualMachineMigrationPerformanceOption;
Expand Down
46 changes: 23 additions & 23 deletions source/DSCResources/DSC_VMHyperV/DSC_VMHyperV.schema.mof
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
[ClassVersion("1.0.0"), FriendlyName("VMHyperV")]
class DSC_VMHyperV : OMI_BaseResource
{
[Key, Description("Name of the VM")] String Name;
[Required, Description("VHD associated with the VM")] String VhdPath;
[Write, Description("Virtual switch(es) associated with the VM")] String SwitchName[];
[Key, Description("The desired name of the VM.")] String Name;
[Required, Description("The desired VHD associated with the VM.")] String VhdPath;
[Write, Description("Virtual switch(es) associated with the VM. Multiple NICs can now be assigned.")] String SwitchName[];
[Write, Description("State of the VM."), ValueMap{"Running","Paused","Off"}, Values{"Running","Paused","Off"}] String State;
[Write, Description("Folder where the VM data will be stored")] String Path;
[Write, Description("Virtual machine generation")] Uint32 Generation;
[Write, Description("Startup RAM for the VM.")] Uint64 StartupMemory;
[Write, Description("Minimum RAM for the VM. This enables dynamic memory.")] Uint64 MinimumMemory;
[Write, Description("Maximum RAM for the VM. This enable dynamic memory.")] Uint64 MaximumMemory;
[Write, Description("MAC address(es) of the VM NICs.")] String MACAddress[];
[Write, Description("Processor count for the VM")] Uint32 ProcessorCount;
[Write, Description("Waits for VM to get valid IP address.")] Boolean WaitForIP;
[Write, Description("If specified, shutdowns and restarts the VM as needed for property changes")] Boolean RestartIfNeeded;
[Write, Description("Should the VM be created or deleted"), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Write, Description("Folder where the VM data will be stored.")] String Path;
[Write, Description("Virtual machine's generation. Generation 2 virtual machines **only** support VHDX files. The default value is `1`.")] Uint32 Generation;
[Write, Description("Startup RAM for the VM. If neither MinimumMemory nor MaximumMemory is specified, dynamic memory will be disabled.")] Uint64 StartupMemory;
[Write, Description("Minimum RAM for the VM. Setting this property enables dynamic memory, with the exception; If MinimumMemory, MaximumMemory and StartupMemory is equal, dynamic memory will be disabled.")] Uint64 MinimumMemory;
[Write, Description("Maximum RAM for the VM. Setting this property enables dynamic memory, with the exception; If MinimumMemory, MaximumMemory and StartupMemory is equal, dynamic memory will be disabled.")] Uint64 MaximumMemory;
[Write, Description("MAC address(es) of the VM NICs. Multiple MAC addresses can now be assigned.")] String MACAddress[];
[Write, Description("Processor count for the VM.")] Uint32 ProcessorCount;
[Write, Description("If specified, waits for the VM to get valid IP address.")] Boolean WaitForIP;
[Write, Description("If specified, will shutdown and restart the VM as needed for property changes.")] Boolean RestartIfNeeded;
[Write, Description("Specifies if the VM should be Present (created) or Absent (removed). The default value is `Present`."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Write, Description("Notes about the VM.")] String Notes;
[Write, Description("Enable secure boot for Generation 2 VMs.")] Boolean SecureBoot;
[Write, Description("Enable Guest Service Interface for the VM.")] Boolean EnableGuestService;
[Write, Description("Specifies if Secure Boot should be enabled for Generation 2 virtual machines. **Only supports generation 2 virtual machines**. Default value is `$true`.")] Boolean SecureBoot;
[Write, Description("Enable Guest Service Interface for the VM. The default value is `$false`.")] Boolean EnableGuestService;
[Write, Description("Enable AutomaticCheckpoints for the VM.")] Boolean AutomaticCheckpointsEnabled;
[Read, Description("VM unique ID")] String ID;
[Read, Description("Status of the VM")] String Status;
[Read, Description("CPU Usage of the VM")] Uint32 CPUUsage;
[Read, Description("Memory assigned to the VM")] Uint64 MemoryAssigned;
[Read, Description("Uptime of the VM")] String Uptime;
[Read, Description("Creation time of the VM")] DateTime CreationTime;
[Read, Description("Does VM has dynamic memory enabled")] Boolean HasDynamicMemory;
[Read, Description("Network adapters' IP addresses of the VM")] String NetworkAdapters[];
[Read, Description("Returns the unique ID for the VM.")] String ID;
[Read, Description("Returns the current status of the VM.")] String Status;
[Read, Description("Returns the current CPU usage of the VM.")] Uint32 CPUUsage;
[Read, Description("Returns the current memory assigned to the VM.")] Uint64 MemoryAssigned;
[Read, Description("Returns the uptime of the VM.")] String Uptime;
[Read, Description("Returns the creation time of the VM.")] DateTime CreationTime;
[Read, Description("Returns `$true` if the VM has dynamic memory enabled.")] Boolean HasDynamicMemory;
[Read, Description("Returns the IP addresses of the virtual machine's network adapters.")] String NetworkAdapters[];
};
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@

[ClassVersion("2.0.0.0")]
Class NetworkSettings
{
[Write] string IpAddress;
[Write] string Subnet;
[Write] string DefaultGateway;
[Write] string DnsServer;
[Write, Description("IpAddress to give the network adapter. Only used if not Dhcp. Required if not Dhcp.")] string IpAddress;
[Write, Description("Subnet to give the network adapter. Only used if not Dhcp. Required if not Dhcp.")] string Subnet;
[Write, Description("DefaultGateway to give the network adapter. Only used if not Dhcp.")] string DefaultGateway;
[Write, Description("DNS server to give the network adapter. Only used if not Dhcp.")] string DnsServer;
};

[ClassVersion("2.0.0.0"), FriendlyName("VMNetworkAdapter")]
class DSC_VMNetworkAdapter : OMI_BaseResource
{
[Key] String Id;
[Required] String Name;
[Required] String SwitchName;
[Required] String VMName;
[Write] String MacAddress;
[Write, EmbeddedInstance("NetworkSettings")] String NetworkSetting;
[Write] String VlanId;
[Write, ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Read] Boolean DynamicMacAddress;
[Key, Description("Unique string for identifying the resource instance.")] String Id;
[Required, Description("Name of the network adapter as it appears either in the management OS or attached to a VM.")] String Name;
[Required, Description("Virtual Switch name to connect to.")] String SwitchName;
[Required, Description("Name of the VM to attach to. If you want to attach new VM Network adapter to the management OS, set this property to 'ManagementOS'.")] String VMName;
[Write, Description("Use this to specify a Static MAC Address. If this parameter is not specified, dynamic MAC Address will be set.")] String MacAddress;
[Write, Description("Network Settings of the network adapter. If this parameter is not supplied, DHCP will be used."), EmbeddedInstance("NetworkSettings")] String NetworkSetting;
[Write, Description("Use this to specify a Vlan id on the Network Adapter.")] String VlanId;
[Write, Description("Ensures that the VM Network Adapter is Present or Absent. The default value is `Present`."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
[Read, Description("Returns `$true` if the network adapter uses a dynamic MAC address.")] Boolean DynamicMacAddress;
};
2 changes: 1 addition & 1 deletion source/DSCResources/DSC_VMNetworkAdapter/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Description

Manages VM net adapters attached to a Hyper-V virtual machine or the
Manages VM network adapters attached to a Hyper-V virtual machine or the
management OS.

## Requirements
Expand Down
Loading

0 comments on commit 6d1e087

Please sign in to comment.