mirror of
https://github.com/GoodOlClint/PSProxmoxVE.git
synced 2026-07-26 07:58:14 +00:00
refactor: seal all cmdlet classes, add missing OutputType and ConfirmImpact
Sealed 105 cmdlet classes that were not already sealed — cmdlets are leaf classes and sealing enables compiler optimizations. Added [OutputType(typeof(void))] to 53 cmdlets that were missing the attribute. All 169 cmdlet files now declare OutputType. Added ConfirmImpact.High to Suspend-PveVm and Restart-PveVm to match the convention used by Stop-PveVm and Reset-PveVm. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -13,6 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Backup
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveBackupJob", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveBackupJobCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Backup
|
||||
[Cmdlet(VerbsCommon.Remove, "PveBackupJob",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveBackupJobCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -12,6 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Backup
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveBackupJob", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveBackupJobCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.CloudInit
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveCloudInitConfig")]
|
||||
[OutputType(typeof(PveVmConfig))]
|
||||
public class GetPveCloudInitConfigCmdlet : PveCmdletBase
|
||||
public sealed class GetPveCloudInitConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.CloudInit
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Invoke, "PveCloudInitRegenerate", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class InvokePveCloudInitRegenerateCmdlet : PveCmdletBase
|
||||
public sealed class InvokePveCloudInitRegenerateCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace PSProxmoxVE.Cmdlets.CloudInit
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveCloudInitConfig", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class SetPveCloudInitConfigCmdlet : PveCmdletBase
|
||||
public sealed class SetPveCloudInitConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -16,6 +16,7 @@ namespace PSProxmoxVE.Cmdlets.Connection
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommunications.Disconnect, "PveServer",
|
||||
SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.Low)]
|
||||
[OutputType(typeof(void))]
|
||||
[Alias("dpve")]
|
||||
public sealed class DisconnectPveServerCmdlet : PSCmdlet
|
||||
{
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Containers
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveContainerSnapshot")]
|
||||
[OutputType(typeof(PveSnapshot))]
|
||||
public class GetPveContainerSnapshotCmdlet : PveCmdletBase
|
||||
public sealed class GetPveContainerSnapshotCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace PSProxmoxVE.Cmdlets.Containers
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveContainerSnapshot", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class NewPveContainerSnapshotCmdlet : PveCmdletBase
|
||||
public sealed class NewPveContainerSnapshotCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Containers
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveContainerSnapshot", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class RemovePveContainerSnapshotCmdlet : PveCmdletBase
|
||||
public sealed class RemovePveContainerSnapshotCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace PSProxmoxVE.Cmdlets.Containers
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class RestorePveContainerSnapshotCmdlet : PveCmdletBase
|
||||
public sealed class RestorePveContainerSnapshotCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -14,6 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Containers
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveContainerConfig", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveContainerConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveNetwork")]
|
||||
[OutputType(typeof(PveNetwork))]
|
||||
public class GetPveNetworkCmdlet : PveCmdletBase
|
||||
public sealed class GetPveNetworkCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// The Proxmox VE node name. Accepts pipeline input from Get-PveNode (PveNode.Name).
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnController")]
|
||||
[OutputType(typeof(PveSdnController))]
|
||||
public class GetPveSdnControllerCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnControllerCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional controller identifier filter.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "Filter by controller identifier.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnDns")]
|
||||
[OutputType(typeof(PveSdnDns))]
|
||||
public class GetPveSdnDnsCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional DNS plugin identifier filter.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "Filter by DNS plugin identifier.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnIpam")]
|
||||
[OutputType(typeof(PveSdnIpam))]
|
||||
public class GetPveSdnIpamCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnIpamCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional IPAM identifier filter.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "Filter by IPAM plugin identifier.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnSubnet")]
|
||||
[OutputType(typeof(PveSdnSubnet))]
|
||||
public class GetPveSdnSubnetCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnSubnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The SDN VNet to list subnets for.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnVnet")]
|
||||
[OutputType(typeof(PveSdnVnet))]
|
||||
public class GetPveSdnVnetCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnVnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Filter VNets to a specific zone.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "The SDN zone name.")]
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSdnZone")]
|
||||
[OutputType(typeof(PveSdnZone))]
|
||||
public class GetPveSdnZoneCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSdnZoneCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional zone identifier to retrieve a specific zone.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "The SDN zone name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Invoke, "PveSdnApply", SupportsShouldProcess = true)]
|
||||
public class InvokePveSdnApplyCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class InvokePveSdnApplyCmdlet : PveCmdletBase
|
||||
{
|
||||
protected override void ProcessRecord()
|
||||
{
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveNetwork", SupportsShouldProcess = true)]
|
||||
public class NewPveNetworkCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveNetworkCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnController", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnControllerCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnControllerCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The controller identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The controller identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnDns", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnDnsCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The DNS plugin identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The DNS plugin identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnIpam", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnIpamCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnIpamCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The IPAM plugin identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The IPAM plugin identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnSubnet", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnSubnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnSubnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The SDN VNet to add the subnet to.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnVnet", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnVnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnVnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The VNet identifier (alphanumeric, up to 8 characters).</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveSdnZone", SupportsShouldProcess = true)]
|
||||
public class NewPveSdnZoneCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPveSdnZoneCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The zone identifier (alphanumeric, hyphens allowed).</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The SDN zone name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveNetwork", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveNetworkCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveNetworkCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnController", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnControllerCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnControllerCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The controller identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The controller identifier to remove.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnDns", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnDnsCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The DNS plugin identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The DNS plugin identifier to remove.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnIpam", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnIpamCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnIpamCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The IPAM plugin identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The IPAM plugin identifier to remove.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnSubnet", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnSubnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnSubnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The SDN VNet containing the subnet.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -10,7 +10,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnVnet", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnVnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnVnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The VNet identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveSdnZone", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveSdnZoneCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveSdnZoneCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The zone identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN zone name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveNetwork", SupportsShouldProcess = true)]
|
||||
public class SetPveNetworkCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveNetworkCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnController", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnControllerCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnControllerCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The controller identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN controller identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnDns", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnDnsCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The DNS plugin identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN DNS plugin identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnIpam", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnIpamCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnIpamCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The IPAM plugin identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN IPAM plugin identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnSubnet", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnSubnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnSubnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The VNet this subnet belongs to.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnVnet", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnVnetCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnVnetCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The VNet identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN VNet name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Network
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveSdnZone", SupportsShouldProcess = true)]
|
||||
public class SetPveSdnZoneCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveSdnZoneCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The zone identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The SDN zone name.")]
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveNodeConfig")]
|
||||
[OutputType(typeof(PSObject))]
|
||||
public class GetPveNodeConfigCmdlet : PveCmdletBase
|
||||
public sealed class GetPveNodeConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveNodeDns")]
|
||||
[OutputType(typeof(PSObject))]
|
||||
public class GetPveNodeDnsCmdlet : PveCmdletBase
|
||||
public sealed class GetPveNodeDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveNodeConfig", SupportsShouldProcess = true)]
|
||||
public class SetPveNodeConfigCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveNodeConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveNodeDns", SupportsShouldProcess = true)]
|
||||
public class SetPveNodeDnsCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveNodeDnsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Start, "PveNodeVms", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class StartPveNodeVmsCmdlet : PveCmdletBase
|
||||
public sealed class StartPveNodeVmsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace PSProxmoxVE.Cmdlets.Nodes
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class StopPveNodeVmsCmdlet : PveCmdletBase
|
||||
public sealed class StopPveNodeVmsCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -11,6 +11,7 @@ namespace PSProxmoxVE.Cmdlets.Pools
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PvePool", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class NewPvePoolCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Pools
|
||||
[Cmdlet(VerbsCommon.Remove, "PvePool",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePvePoolCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -12,6 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Pools
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PvePool", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPvePoolCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Snapshots
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveSnapshot")]
|
||||
[OutputType(typeof(PveSnapshot))]
|
||||
public class GetPveSnapshotCmdlet : PveCmdletBase
|
||||
public sealed class GetPveSnapshotCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
[Cmdlet(VerbsCommon.Get, "PveStorage")]
|
||||
[Alias("gpvs")]
|
||||
[OutputType(typeof(PveStorage))]
|
||||
public class GetPveStorageCmdlet : PveCmdletBase
|
||||
public sealed class GetPveStorageCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// The Proxmox VE node name. Accepts pipeline input from Get-PveNode (PveNode.Name).
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveStorageContent")]
|
||||
[OutputType(typeof(PveStorageContent))]
|
||||
public class GetPveStorageContentCmdlet : PveCmdletBase
|
||||
public sealed class GetPveStorageContentCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name that hosts the storage.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveStorageStatus")]
|
||||
[OutputType(typeof(PveStorageStatus))]
|
||||
public class GetPveStorageStatusCmdlet : PveCmdletBase
|
||||
public sealed class GetPveStorageStatusCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Invoke, "PveStorageDownload", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class InvokePveStorageDownloadCmdlet : PveCmdletBase
|
||||
public sealed class InvokePveStorageDownloadCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node that will perform the download.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveStorageDisk", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(string))]
|
||||
public class NewPveStorageDiskCmdlet : PveCmdletBase
|
||||
public sealed class NewPveStorageDiskCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -13,7 +13,8 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
[Cmdlet(VerbsCommon.Remove, "PveStorage",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveStorageCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveStorageCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The storage identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The storage pool name.")]
|
||||
|
||||
@@ -13,7 +13,8 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
[Cmdlet(VerbsCommon.Remove, "PveStorageContent",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveStorageContentCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveStorageContentCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommunications.Send, "PveFile", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class SendPveFileCmdlet : PveCmdletBase
|
||||
public sealed class SendPveFileCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node to upload to.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -11,6 +11,7 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveStorage", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveStorageCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The storage identifier to update.</summary>
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Storage
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveStorageContent", SupportsShouldProcess = true)]
|
||||
public class SetPveStorageContentCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveStorageContentCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Tasks
|
||||
[Cmdlet(VerbsCommon.Get, "PveTask")]
|
||||
[Alias("gpt")]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class GetPveTaskCmdlet : PveCmdletBase
|
||||
public sealed class GetPveTaskCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The node on which the task ran.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Tasks
|
||||
[Cmdlet(VerbsLifecycle.Stop, "PveTask",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class StopPveTaskCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace PSProxmoxVE.Cmdlets.Tasks
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Wait, "PveTask")]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class WaitPveTaskCmdlet : PveCmdletBase
|
||||
public sealed class WaitPveTaskCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The node on which the task is running.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Templates
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveTemplate")]
|
||||
[OutputType(typeof(PveVm))]
|
||||
public class GetPveTemplateCmdlet : PveCmdletBase
|
||||
public sealed class GetPveTemplateCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name. When omitted, queries all nodes in the cluster.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Templates
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveTemplate", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class NewPveTemplateCmdlet : PveCmdletBase
|
||||
public sealed class NewPveTemplateCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Templates
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveVmFromTemplate", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class NewPveVmFromTemplateCmdlet : PveCmdletBase
|
||||
public sealed class NewPveVmFromTemplateCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The node where the source template resides. Alias: Node.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The node where the template resides.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Templates
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public class RemovePveTemplateCmdlet : PveCmdletBase
|
||||
public sealed class RemovePveTemplateCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The PVE node name.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveApiToken")]
|
||||
[OutputType(typeof(PveApiToken))]
|
||||
public class GetPveApiTokenCmdlet : PveCmdletBase
|
||||
public sealed class GetPveApiTokenCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// The user ID whose tokens to list, in "username@realm" format (e.g., "admin@pam").
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveDomain")]
|
||||
[OutputType(typeof(PveDomain))]
|
||||
public class GetPveDomainCmdlet : PveCmdletBase
|
||||
public sealed class GetPveDomainCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional realm name to filter by.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "Optional realm name to filter results.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveGroup")]
|
||||
[OutputType(typeof(PveGroup))]
|
||||
public class GetPveGroupCmdlet : PveCmdletBase
|
||||
public sealed class GetPveGroupCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional group ID to filter by.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "Optional group ID to filter results.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PvePermission")]
|
||||
[OutputType(typeof(PvePermission))]
|
||||
public class GetPvePermissionCmdlet : PveCmdletBase
|
||||
public sealed class GetPvePermissionCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Filter results to a specific resource path (e.g., "/", "/vms/100").</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "Filter by resource path (e.g. /, /vms/100).")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveRole")]
|
||||
[OutputType(typeof(PveRole))]
|
||||
public class GetPveRoleCmdlet : PveCmdletBase
|
||||
public sealed class GetPveRoleCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>Optional role identifier to retrieve a specific role.</summary>
|
||||
[Parameter(Mandatory = false, Position = 0, HelpMessage = "The role identifier.")]
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Get, "PveUser")]
|
||||
[OutputType(typeof(PveUser))]
|
||||
public class GetPveUserCmdlet : PveCmdletBase
|
||||
public sealed class GetPveUserCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Filter results to a specific user ID or pattern (e.g., "admin@pam", "*@pve").
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveApiToken", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveApiToken))]
|
||||
public class NewPveApiTokenCmdlet : PveCmdletBase
|
||||
public sealed class NewPveApiTokenCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// The user ID to create the token for, in "username@realm" format (e.g., "admin@pam").
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveDomain", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveDomain))]
|
||||
public class NewPveDomainCmdlet : PveCmdletBase
|
||||
public sealed class NewPveDomainCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The realm identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The realm identifier.")]
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveGroup", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveGroup))]
|
||||
public class NewPveGroupCmdlet : PveCmdletBase
|
||||
public sealed class NewPveGroupCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The group identifier.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The group identifier.")]
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveRole", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveRole))]
|
||||
public class NewPveRoleCmdlet : PveCmdletBase
|
||||
public sealed class NewPveRoleCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The role identifier/name.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The role identifier.")]
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.New, "PveUser", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(PveUser))]
|
||||
public class NewPveUserCmdlet : PveCmdletBase
|
||||
public sealed class NewPveUserCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The user identifier in "user@realm" format (e.g., "jdoe@pve").</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The user ID in user@realm format.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveApiToken", SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveApiTokenCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveApiTokenCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
/// The user ID that owns the token, in "username@realm" format (e.g., "admin@pam").
|
||||
|
||||
@@ -13,7 +13,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
[Cmdlet(VerbsCommon.Remove, "PveDomain",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveDomainCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveDomainCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The realm identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The realm identifier to remove.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
[Cmdlet(VerbsCommon.Remove, "PveGroup",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveGroupCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveGroupCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The group identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The group identifier to remove.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveRole", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveRoleCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveRoleCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The role identifier to remove.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The role identifier.")]
|
||||
|
||||
@@ -10,7 +10,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Remove, "PveUser", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
public class RemovePveUserCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveUserCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The user identifier to remove (e.g., "jdoe@pve").</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The user ID in user@realm format.")]
|
||||
|
||||
@@ -12,6 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveApiToken", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveApiTokenCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The user ID that owns the token (e.g. 'user@realm').</summary>
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveDomain", SupportsShouldProcess = true)]
|
||||
public class SetPveDomainCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveDomainCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The realm identifier to update.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The realm identifier.")]
|
||||
|
||||
@@ -11,7 +11,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveGroup", SupportsShouldProcess = true)]
|
||||
public class SetPveGroupCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveGroupCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The group identifier to update.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The group identifier.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PvePassword", SupportsShouldProcess = true)]
|
||||
public class SetPvePasswordCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPvePasswordCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The user identifier in "user@realm" format.</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The user ID in user@realm format.")]
|
||||
|
||||
@@ -12,7 +12,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PvePermission", SupportsShouldProcess = true)]
|
||||
public class SetPvePermissionCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPvePermissionCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The resource path this ACL applies to (e.g., "/", "/vms/100").</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, HelpMessage = "The resource path (e.g. /, /vms/100).")]
|
||||
|
||||
@@ -10,6 +10,7 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveRole", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveRoleCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The role identifier to update.</summary>
|
||||
|
||||
@@ -13,7 +13,8 @@ namespace PSProxmoxVE.Cmdlets.Users
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveUser", SupportsShouldProcess = true)]
|
||||
public class SetPveUserCmdlet : PveCmdletBase
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveUserCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The user identifier to update (e.g., "jdoe@pve").</summary>
|
||||
[Parameter(Mandatory = true, Position = 0, ValueFromPipelineByPropertyName = true, HelpMessage = "The user ID in user@realm format.")]
|
||||
|
||||
@@ -12,6 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Invoke, "PveVmGuestFsTrim", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class InvokePveVmGuestFsTrimCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
[Cmdlet(VerbsCommon.Remove, "PveVmDisk",
|
||||
SupportsShouldProcess = true,
|
||||
ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class RemovePveVmDiskCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
/// before the operation is considered failed. Use -Wait to block until both tasks complete.
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Restart, "PveVm", SupportsShouldProcess = true)]
|
||||
[Cmdlet(VerbsLifecycle.Restart, "PveVm", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public sealed class RestartPveVmCmdlet : PveCmdletBase
|
||||
{
|
||||
|
||||
@@ -14,6 +14,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommon.Set, "PveVmConfig", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class SetPveVmConfigCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
/// Use -Wait to block until the suspend task completes.
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsLifecycle.Suspend, "PveVm", SupportsShouldProcess = true)]
|
||||
[Cmdlet(VerbsLifecycle.Suspend, "PveVm", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)]
|
||||
[OutputType(typeof(PveTask))]
|
||||
public sealed class SuspendPveVmCmdlet : PveCmdletBase
|
||||
{
|
||||
|
||||
@@ -11,6 +11,7 @@ namespace PSProxmoxVE.Cmdlets.Vms
|
||||
/// </para>
|
||||
/// </summary>
|
||||
[Cmdlet(VerbsCommunications.Write, "PveVmGuestFile", SupportsShouldProcess = true)]
|
||||
[OutputType(typeof(void))]
|
||||
public sealed class WritePveVmGuestFileCmdlet : PveCmdletBase
|
||||
{
|
||||
/// <summary>The Proxmox VE node name.</summary>
|
||||
|
||||
Reference in New Issue
Block a user