custom/autogen-model-cmdlets/New-NmeHostPoolVmDeploymentUpdateModel.ps1
|
# ---------------------------------------------------------------------------------- # Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.8, generator: @autorest/powershell@4.0.752) # Changes may cause incorrect behavior and will be lost if the code is regenerated. # ---------------------------------------------------------------------------------- <# .Synopsis Create an in-memory object for HostPoolVmDeploymentUpdate. .Description Create an in-memory object for HostPoolVmDeploymentUpdate. .Outputs NmePowershell.Models.HostPoolVmDeploymentUpdate #> function New-NmeHostPoolVmDeploymentUpdateModel { [NmePowershell.ModelCmdletAttribute()] [OutputType('NmePowershell.Models.HostPoolVmDeploymentUpdate')] [CmdletBinding(PositionalBinding=$false)] Param( [Parameter(HelpMessage="Enforce a password prompt for users logging on to Remote Desktop Services.")] [bool] $AlwaysPromptForPassword, [Parameter(HelpMessage="Application Security Group ID to associate with session host NICs.")] [string[]] $ApplicationSecurityGroupIds, [Parameter(HelpMessage="Is host boot diagnostics enabled?.")] [bool] $BootDiagEnabled, [Parameter(HelpMessage="List storage account IDs for boot diagnostics, if custom accounts are used.")] [string[]] $BootDiagStorageAccountsIds, [Parameter(HelpMessage="On-demand Capacity Reservation Groups ids.")] [string[]] $CapacityReservationGroupsIds, [Parameter()] [NmePowershell.PSArgumentCompleterAttribute("None", "CompliancePoliciesOnly", "AllIntunePolicies")] [string] $ComplianceEnforcement, [Parameter(HelpMessage="Compliance timeout in hours. Supported values are 1-24 hours.")] [int] $ComplianceTimeout, [Parameter(HelpMessage="Is confidential disk encryption enabled?.")] [bool] $ConfidentialDiskEncryption, [Parameter(HelpMessage="Host Group resource id.")] [string] $DedicatedHostGroupId, [Parameter(HelpMessage="Host resource id.")] [string] $DedicatedHostId, [Parameter(HelpMessage="List of disk encryption set IDs for customer managed keys.")] [string[]] $DiskEncryptionSetsIds, [Parameter(HelpMessage="Enable App-V client service if host pool is assigned to App Attach packages containing App-V package.")] [bool] $EnableAppvClientService, [Parameter(HelpMessage="Enable H.265 encoding on supported VM sizes.")] [bool] $EnableHevc, [Parameter(HelpMessage="Enable time zone redirection.")] [bool] $EnableTimezoneRedirection, [Parameter(HelpMessage="Enable automatic deallocation of stopped VMs.")] [bool] $EnableVMDeallocation, [Parameter(HelpMessage="Is encryption at host enabled?.")] [bool] $EncryptionAtHost, [Parameter(HelpMessage="Entra groups timeout in minutes.")] [int] $EntraDeviceTimeoutInMinutes, [Parameter(HelpMessage="Default hostpool groups. New session hosts will be assigned to these groups by default.")] [string[]] $EntraIdGroups, [Parameter(HelpMessage="Restart VM at the end of creation.")] [bool] $ForceVMRestart, [Parameter(HelpMessage="Install App Attach certificates if any.")] [bool] $InstallCertificates, [Parameter(HelpMessage="Install GPU drivers if VM have discrete GPU card.")] [bool] $InstallGpuDrivers, [Parameter(HelpMessage="Allow integrity monitoring if Trusted launch or Confidential security type is enabled.")] [bool] $IntegrityMonitoring, [Parameter(HelpMessage="Use accelerated networking when possible.")] [bool] $IsAcceleratedNetworkingEnabled, [Parameter(HelpMessage="Allow session shadowing for non-admin users.")] [bool] $IsShadowUsersEnabled, [Parameter()] [int] $OnCreateActiveDirectoryId, [Parameter()] [bool] $OnCreateEnabled, [Parameter()] [NmePowershell.Models.IScriptedActionOption[]] $OnCreateScriptedActions, [Parameter()] [int] $OnHostCreateActiveDirectoryId, [Parameter()] [bool] $OnHostCreateEnabled, [Parameter()] [NmePowershell.Models.IScriptedActionOption[]] $OnHostCreateScriptedActions, [Parameter()] [int] $OnRemoveActiveDirectoryId, [Parameter()] [bool] $OnRemoveEnabled, [Parameter()] [NmePowershell.Models.IScriptedActionOption[]] $OnRemoveScriptedActions, [Parameter()] [int] $OnStartActiveDirectoryId, [Parameter()] [bool] $OnStartEnabled, [Parameter()] [NmePowershell.Models.IScriptedActionOption[]] $OnStartScriptedActions, [Parameter()] [int] $OnStopActiveDirectoryId, [Parameter()] [bool] $OnStopEnabled, [Parameter()] [NmePowershell.Models.IScriptedActionOption[]] $OnStopScriptedActions, [Parameter()] [NmePowershell.PSArgumentCompleterAttribute("Default", "Manual", "AutomaticByOS", "AutomaticByPlatform")] [string] $PatchOrchestration, [Parameter()] [NmePowershell.PSArgumentCompleterAttribute("SCSI", "NVMe")] [string] $PreferredDiskControllerType, [Parameter(HelpMessage="Ids of Proximity Placement Groups where newly created VM can be placed.")] [string[]] $ProximityPlacementGroupIds, [Parameter()] [NmePowershell.PSArgumentCompleterAttribute("DoNothing", "ForceEnable", "ForceDisable")] [string] $RdpShortpath, [Parameter(HelpMessage="Scripted actions configuration.")] [bool] $RunAppPolicies, [Parameter(HelpMessage="Allow secure boot if Trusted launch or Confidential security type is enabled.")] [bool] $SecureBootEnabled, [Parameter()] [NmePowershell.PSArgumentCompleterAttribute("None", "TrustedLaunch", "Confidential")] [string] $SecurityType, [Parameter(HelpMessage="Allow session shadowing for following non-admin users and groups.")] [NmePowershell.Models.IHostPoolAssignment[]] $ShadowUserAssignments, [Parameter(HelpMessage="Distribute VMs across availability zones in the azure region.")] [bool] $UseAvailabilityZones, [Parameter(HelpMessage="Place VMs on Dedicated Hosts.")] [bool] $UseDedicatedHosts, [Parameter(HelpMessage="User-assigned managed identity ARM IDs to attach to session host VMs. Null = no change. Empty list = remove all. At most one identity per tenant.")] [string[]] $UserAssignedIdentityIds, [Parameter(HelpMessage="Set windows timezone on VM.")] [string] $VMTimezone, [Parameter(HelpMessage="Allow VTpm if Trusted launch or Confidential security type is enabled.")] [bool] $VTpmEnabled, [Parameter()] [bool] $WatermarkingEnabled, [Parameter(HelpMessage="Determines the distance between the QR codes in percent.")] [int] $WatermarkingHeightFactor, [Parameter(HelpMessage="Determines the distance between the QR codes in percent.")] [int] $WatermarkingOpacity, [Parameter(HelpMessage="The size in pixels of each QR code dot.")] [int] $WatermarkingScale, [Parameter(HelpMessage="Determines the distance between the QR codes in percent.")] [int] $WatermarkingWidthFactor ) process { $Object = [NmePowershell.Models.HostPoolVmDeploymentUpdate]::New() if ($PSBoundParameters.ContainsKey('AlwaysPromptForPassword')) { $Object.AlwaysPromptForPassword = $AlwaysPromptForPassword } if ($PSBoundParameters.ContainsKey('ApplicationSecurityGroupIds')) { $Object.ApplicationSecurityGroupIds = $ApplicationSecurityGroupIds } if ($PSBoundParameters.ContainsKey('BootDiagEnabled')) { $Object.BootDiagEnabled = $BootDiagEnabled } if ($PSBoundParameters.ContainsKey('BootDiagStorageAccountsIds')) { $Object.BootDiagStorageAccountsIds = $BootDiagStorageAccountsIds } if ($PSBoundParameters.ContainsKey('CapacityReservationGroupsIds')) { $Object.CapacityReservationGroupsIds = $CapacityReservationGroupsIds } if ($PSBoundParameters.ContainsKey('ComplianceEnforcement')) { $Object.ComplianceEnforcement = $ComplianceEnforcement } if ($PSBoundParameters.ContainsKey('ComplianceTimeout')) { $Object.ComplianceTimeout = $ComplianceTimeout } if ($PSBoundParameters.ContainsKey('ConfidentialDiskEncryption')) { $Object.ConfidentialDiskEncryption = $ConfidentialDiskEncryption } if ($PSBoundParameters.ContainsKey('DedicatedHostGroupId')) { $Object.DedicatedHostGroupId = $DedicatedHostGroupId } if ($PSBoundParameters.ContainsKey('DedicatedHostId')) { $Object.DedicatedHostId = $DedicatedHostId } if ($PSBoundParameters.ContainsKey('DiskEncryptionSetsIds')) { $Object.DiskEncryptionSetsIds = $DiskEncryptionSetsIds } if ($PSBoundParameters.ContainsKey('EnableAppvClientService')) { $Object.EnableAppvClientService = $EnableAppvClientService } if ($PSBoundParameters.ContainsKey('EnableHevc')) { $Object.EnableHevc = $EnableHevc } if ($PSBoundParameters.ContainsKey('EnableTimezoneRedirection')) { $Object.EnableTimezoneRedirection = $EnableTimezoneRedirection } if ($PSBoundParameters.ContainsKey('EnableVMDeallocation')) { $Object.EnableVMDeallocation = $EnableVMDeallocation } if ($PSBoundParameters.ContainsKey('EncryptionAtHost')) { $Object.EncryptionAtHost = $EncryptionAtHost } if ($PSBoundParameters.ContainsKey('EntraDeviceTimeoutInMinutes')) { $Object.EntraDeviceTimeoutInMinutes = $EntraDeviceTimeoutInMinutes } if ($PSBoundParameters.ContainsKey('EntraIdGroups')) { $Object.EntraIdGroups = $EntraIdGroups } if ($PSBoundParameters.ContainsKey('ForceVMRestart')) { $Object.ForceVMRestart = $ForceVMRestart } if ($PSBoundParameters.ContainsKey('InstallCertificates')) { $Object.InstallCertificates = $InstallCertificates } if ($PSBoundParameters.ContainsKey('InstallGpuDrivers')) { $Object.InstallGpuDrivers = $InstallGpuDrivers } if ($PSBoundParameters.ContainsKey('IntegrityMonitoring')) { $Object.IntegrityMonitoring = $IntegrityMonitoring } if ($PSBoundParameters.ContainsKey('IsAcceleratedNetworkingEnabled')) { $Object.IsAcceleratedNetworkingEnabled = $IsAcceleratedNetworkingEnabled } if ($PSBoundParameters.ContainsKey('IsShadowUsersEnabled')) { $Object.IsShadowUsersEnabled = $IsShadowUsersEnabled } if ($PSBoundParameters.ContainsKey('OnCreateActiveDirectoryId')) { $Object.OnCreateActiveDirectoryId = $OnCreateActiveDirectoryId } if ($PSBoundParameters.ContainsKey('OnCreateEnabled')) { $Object.OnCreateEnabled = $OnCreateEnabled } if ($PSBoundParameters.ContainsKey('OnCreateScriptedActions')) { $Object.OnCreateScriptedActions = $OnCreateScriptedActions } if ($PSBoundParameters.ContainsKey('OnHostCreateActiveDirectoryId')) { $Object.OnHostCreateActiveDirectoryId = $OnHostCreateActiveDirectoryId } if ($PSBoundParameters.ContainsKey('OnHostCreateEnabled')) { $Object.OnHostCreateEnabled = $OnHostCreateEnabled } if ($PSBoundParameters.ContainsKey('OnHostCreateScriptedActions')) { $Object.OnHostCreateScriptedActions = $OnHostCreateScriptedActions } if ($PSBoundParameters.ContainsKey('OnRemoveActiveDirectoryId')) { $Object.OnRemoveActiveDirectoryId = $OnRemoveActiveDirectoryId } if ($PSBoundParameters.ContainsKey('OnRemoveEnabled')) { $Object.OnRemoveEnabled = $OnRemoveEnabled } if ($PSBoundParameters.ContainsKey('OnRemoveScriptedActions')) { $Object.OnRemoveScriptedActions = $OnRemoveScriptedActions } if ($PSBoundParameters.ContainsKey('OnStartActiveDirectoryId')) { $Object.OnStartActiveDirectoryId = $OnStartActiveDirectoryId } if ($PSBoundParameters.ContainsKey('OnStartEnabled')) { $Object.OnStartEnabled = $OnStartEnabled } if ($PSBoundParameters.ContainsKey('OnStartScriptedActions')) { $Object.OnStartScriptedActions = $OnStartScriptedActions } if ($PSBoundParameters.ContainsKey('OnStopActiveDirectoryId')) { $Object.OnStopActiveDirectoryId = $OnStopActiveDirectoryId } if ($PSBoundParameters.ContainsKey('OnStopEnabled')) { $Object.OnStopEnabled = $OnStopEnabled } if ($PSBoundParameters.ContainsKey('OnStopScriptedActions')) { $Object.OnStopScriptedActions = $OnStopScriptedActions } if ($PSBoundParameters.ContainsKey('PatchOrchestration')) { $Object.PatchOrchestration = $PatchOrchestration } if ($PSBoundParameters.ContainsKey('PreferredDiskControllerType')) { $Object.PreferredDiskControllerType = $PreferredDiskControllerType } if ($PSBoundParameters.ContainsKey('ProximityPlacementGroupIds')) { $Object.ProximityPlacementGroupIds = $ProximityPlacementGroupIds } if ($PSBoundParameters.ContainsKey('RdpShortpath')) { $Object.RdpShortpath = $RdpShortpath } if ($PSBoundParameters.ContainsKey('RunAppPolicies')) { $Object.RunAppPolicies = $RunAppPolicies } if ($PSBoundParameters.ContainsKey('SecureBootEnabled')) { $Object.SecureBootEnabled = $SecureBootEnabled } if ($PSBoundParameters.ContainsKey('SecurityType')) { $Object.SecurityType = $SecurityType } if ($PSBoundParameters.ContainsKey('ShadowUserAssignments')) { $Object.ShadowUserAssignments = $ShadowUserAssignments } if ($PSBoundParameters.ContainsKey('UseAvailabilityZones')) { $Object.UseAvailabilityZones = $UseAvailabilityZones } if ($PSBoundParameters.ContainsKey('UseDedicatedHosts')) { $Object.UseDedicatedHosts = $UseDedicatedHosts } if ($PSBoundParameters.ContainsKey('UserAssignedIdentityIds')) { $Object.UserAssignedIdentityIds = $UserAssignedIdentityIds } if ($PSBoundParameters.ContainsKey('VMTimezone')) { $Object.VMTimezone = $VMTimezone } if ($PSBoundParameters.ContainsKey('VTpmEnabled')) { $Object.VTpmEnabled = $VTpmEnabled } if ($PSBoundParameters.ContainsKey('WatermarkingEnabled')) { $Object.WatermarkingEnabled = $WatermarkingEnabled } if ($PSBoundParameters.ContainsKey('WatermarkingHeightFactor')) { $Object.WatermarkingHeightFactor = $WatermarkingHeightFactor } if ($PSBoundParameters.ContainsKey('WatermarkingOpacity')) { $Object.WatermarkingOpacity = $WatermarkingOpacity } if ($PSBoundParameters.ContainsKey('WatermarkingScale')) { $Object.WatermarkingScale = $WatermarkingScale } if ($PSBoundParameters.ContainsKey('WatermarkingWidthFactor')) { $Object.WatermarkingWidthFactor = $WatermarkingWidthFactor } return $Object } } |