HyperShell
HyperShell is a module developed by SoftIron that integrates with PowerShell, allowing the user to consume the HyperCloud API and execute calls to the cluster.
Prerequisites
Before installing HyperShell, ensure you have PowerShell 5.1 or later installed on your system. You can check your PowerShell version by running $PSVersionTable.PSVersion in a PowerShell window.
Installing HyperShell
HyperShell is available through the official Microsoft PowerShell Gallery, which makes installation straightforward using PowerShell's built-in package management.
Installation Steps
To install HyperShell, open a PowerShell window with administrator privileges and run the following command:
Install-Module -Name HyperShell -Scope CurrentUser
If you want to install the module for all users on the system, use:
Install-Module -Name HyperShell -Scope AllUsers
Note that installing with
AllUsersscope requires administrator privileges. During installation, you may be prompted to trust the PowerShell Gallery repository. TypeYand press Enter to proceed with the installation.
Verifying Installation
After the installation completes, you can verify that HyperShell is installed correctly by running:
Get-Module -Name HyperShell -ListAvailable
This will display the installed version and location of the module.
Updating HyperShell
To update HyperShell to the latest version, run:
Update-Module -Name HyperShell
Troubleshooting
If you encounter issues during installation, ensure that your execution policy allows running scripts. You can check your current execution policy with Get-ExecutionPolicy and adjust it if necessary using Set-ExecutionPolicy with the desired configuration for your environment.
HyperShell Functions
Add-CloudUserGroupMembership
Source File: cloud-user.ps1
Synopsis: Adds a user to a secondary group on the Cloud Server.
Description: Adds a user to a secondary group. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| User | Int32 | True | - | - | - |
Example(s)
-
** Add user 12 to group 104**
Clear-CloudNetworkAddressRange
Source File: cloud-network.ps1
Synopsis: Frees all addresses in an address range.
Description: Releases all IP addresses in a specific address range.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| RangeID | Int32 | True | - | - | - |
Example(s)
-
Release all addresses from network 5 in range 0
Connect-CloudServer
Source File: Connect-Cloudserver.ps1
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Credential | PSCredential | True | - | - | - |
| IgnoreInvalidCertificate | SwitchParameter | False | - | - | - |
| Port | Int32 | False | - | - | 443 |
| Server | String | True | - | - | - |
Convert-FromBase64
Source File: extra.ps1
Synopsis: Converts a Base64 encoded string back to plain text or saves to file.
Description: Decodes a Base64 encoded string back to its original format. Can output as a string or save binary content to a file.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Base64String | String | True | ByValue | - | - |
| Encoding | String | False | - | UTF8, ASCII, Unicode, UTF32, UTF7 | 'UTF8' |
| OutFile | String | False | - | - | - |
Example(s)
-
Decode a Base64 string
-
Decode from pipeline
-
Decode and save to file
-
Decode with different encoding
-
Round-trip example
Convert-ToBase64
Source File: extra.ps1
Synopsis: Converts a string or file to Base64 encoding.
Description: Encodes a string or file content to Base64 format. Useful for encoding credentials, file contents, or other data that needs to be transmitted as text.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Encoding | String | False | - | UTF8, ASCII, Unicode, UTF32, UTF7 | 'UTF8' |
| Path | String | True | - | - | - |
| String | String | True | ByValue | - | - |
Example(s)
-
Encode a simple string
-
Encode credentials
-
Encode from pipeline
-
Encode a file
-
Encode with different encoding
Copy-CloudDocument
Source File: cloud-document.ps1
Synopsis: Clone a document in the Cloud Server.
Description: Creates a clone document. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
-
Clone the document, defining the name for the clone
Copy-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Clone a network in the Cloud Server.
Description: Creates a clone network. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
-
Clone the network and do not clone the associated image
Copy-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Clone a network in the Cloud Server.
Description: Creates a clone network. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
-
Copy a network template
Copy-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Clone a security group in the Cloud Server.
Description: Clones a security group. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
-
Clone the security group with ID 5
Copy-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Clone a template in the Cloud Server.
Description: Clones a template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| cloneDisk | SwitchParameter | False | - | - | - |
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
-
Clone the template and do not clone the associated image
-
Clone the template and clone the associated image
Disable-CloudImage
Source File: cloud-image.ps1
Synopsis: Disables an image from the Cloud Server.
Description: Disables an image. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Disable an image with confirmation prompt (default behavior):
-
Disable image without confirmation prompt:
Disable-CloudImagePersistence
Source File: cloud-image.ps1
Synopsis: Sets an image to non-persistent on the Cloud Server.
Description: Sets an image to persistent. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Disable image persistence with confirmation prompt (default behavior):
-
Disable image persistence without confirmation prompt:
Disable-CloudUser
Source File: cloud-user.ps1
Synopsis: Disables a user from the Cloud Server.
Description: Disables a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Disable user with confirmation prompt (default behavior):
-
Disable user without confirmation prompt:
Disable-CloudUserRGW
Source File: cloud-user.ps1
Synopsis: Disables RGW access for a user on the Cloud Server.
Description: Disables RGW access for a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Disable RGW attributes for user 30
-
Disable RGW attributes for user 30 without confirmation
-
Disable RGW attributes for a piped-through user without confirmation
Disconnect-CloudServer
Source File: Connect-Cloudserver.ps1
Synopsis: Disconnects from the Cloud Server and clears sensitive data.
Description: Clears the connection object, auth token, and session data from memory.
CmdletBinding: Yes
Example(s)
-
Disconnect
Enable-CloudDatastore
Source File: cloud-datastore.ps1
Synopsis: Enables a datastore on the Cloud Server.
Description: Enables the specified datastore. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
-
Enable a specific datastore
Enable-CloudImage
Source File: cloud-image.ps1
Synopsis: Enables an image from the Cloud Server.
Description: Enables an image. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Enable image with confirmation prompt (default behavior):
-
Enable image without confirmation prompt:
Enable-CloudImagePersistence
Source File: cloud-image.ps1
Synopsis: Sets an image to persistent on the Cloud Server.
Description: Sets an image to persistent. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Enable image persistence with confirmation prompt (default behavior):
-
Enable image persistence without confirmation prompt:
Enable-CloudMarket
Source File: cloud-market.ps1
Synopsis: Enable a market in the Cloud Server.
Description: Enable a market. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
-
Enable a market
Enable-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Enable a market app in the Cloud Server.
Description: Enable a market app. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
-
Enable a market app
Enable-CloudUser
Source File: cloud-user.ps1
Synopsis: Enables a user from the Cloud Server.
Description: Enables a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Enable a user with a confirmation prompt (default behavior):
-
Enable a user without a confirmation prompt:
Enable-CloudUserRGW
Source File: cloud-user.ps1
Synopsis: Enables RGW access for a user on the Cloud Server.
Description: Enables RGW access for a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
-
Enable RGW attributes for user 30
-
Enable RGW attributes for user 30 without confirmation
-
Enable RGW attributes for a piped-through user without confirmation
Enable-CloudZone
Source File: cloud-zone.ps1
Synopsis: Enable a zone in the Cloud Server.
Description: Enables a zone. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
-
Enable cloud zone with the ID 5
Get-CloudACL
Source File: cloud-acl.ps1
Synopsis: Gets acls from the Cloud Server.
Description: Retrieves a list of acls. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
Example(s)
-
Get all ACLs
-
Get an ACL with a specific ID
Get-CloudCluster
Source File: cloud-host.ps1
Synopsis: Gets Clusters from the Cloud Server.
Description: Retrieves a list of Clusters. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
-
Get all clusters
-
Get a specific cluster by ID
-
Get clusters that match the specified name string
Get-CloudCompute
Source File: cloud-host.ps1
Synopsis: Gets compute-only from the Cloud Server. Try Get-CloudHost to return all hosts
Description: Retrieves a list of computes. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
-
Get all compute hosts
-
Get a specific compute host by ID
-
Get compute hosts that match the specified name string
Get-CloudComputeFailoverCapacity
Source File: extra.ps1
Synopsis: Analyzes cluster compute capacity for N-X redundancy (multiple host failure scenario).
Description: Calculates whether the cluster can sustain the failure of its largest host(s) per architecture type (x86_64, aarch64, etc.). Shows current usage vs remaining capacity if the biggest host(s) in each architecture group fail.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Detailed | SwitchParameter | False | - | - | - |
| FailedHosts | Int32 | False | - | - | 1 |
| Graph | SwitchParameter | False | - | - | - |
Example(s)
-
Get the failover capacity for each cluster
1. Get the failover capacity for each cluster and display it graphicallypowershell Get-CloudFailoverCapacity -Graph -
Test N-2 redundancy (can survive 2 host failures) and display it graphically
-
Test N-3 redundancy (can survive 3 host failures) and display detailed information
Get-CloudDatacenter
Source File: cloud-datacenter.ps1
Synopsis: Gets Datacenters from the Cloud Server.
Description: Retrieves a list of Datacenters. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all datacenters
Example 2 - Get a specific datacenter by ID
Example 3 - Get datacenters that match the specified name string
Get-CloudDatastore
Source File: cloud-datastore.ps1
Synopsis: Gets Datastores from the Cloud Server.
Description: Retrieves a list of Datastores. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get all datastores
Example 2 - Get a specific datastore
Example 3 - Get the usage of all datastores and graph them
Example 4 - Get the usage of a datastore by name and graph it
Example 5 - Get the usage of all datastores in TB and graph them
Get-CloudDocument
Source File: cloud-document.ps1
Synopsis: Gets documents from the Cloud Server.
Description: Retrieves a list of documents. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all documents
Example 2 - Get a document by ID
Example 3 - Get a document by name
Get-CloudGroup
Source File: cloud-group.ps1
Synopsis: Gets groups from the Cloud Server.
Description: Retrieves a list of groups. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all groups
Example 2 - Get a group by ID
Example 3 - Get groups that match a specific name string
Get-CloudGroupQuota
Source File: cloud-group.ps1
Synopsis: Gets the default group quota from the Cloud Server.
Description: Retrieves the quota for the default group. Automatically handles token refresh.
Example(s)
Example 1 - Get the quota for the default group
Get-CloudHook
Source File: cloud-hook.ps1
Synopsis: Gets hooks from the Cloud Server.
Description: Retrieves a list of hooks. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all hooks
Example 2 - Get a hook by ID
Example 3 - Get a hook by name
Get-CloudHookLogs
Source File: cloud-hook.ps1
Synopsis: Gets hook logs from the Cloud Server.
Description: Retrieves hook logs for a specific hook. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| HookID | Int32 | True | - | - | - |
| MaxDate | DateTime |
True | - | - | - |
| MinDate | DateTime |
True | - | - | - |
Example(s)
Example 1 - Get logs for a hook with a date range
Example 2 - Get logs for a hook for the past 7 days
Example 3 - Get logs for a hook for the past 24 hours
Get-CloudHost
Source File: cloud-host.ps1
Synopsis: Gets hosts from the Cloud Server.
Description: Retrieves a list of hosts. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all hosts
Example 2 - Get a host by specifying an ID
Example 3 - Get hosts that match the specified name string
Get-CloudHostMonitoring
Source File: cloud-host.ps1
Synopsis: Gets host metrics from the Cloud Server.
Description: Retrieves host metrics. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ExportCSV | String | False | - | - | - |
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| GroupByHost | SwitchParameter | False | - | - | - |
| ID | Int32 | False | - | - | - |
| Seconds | Int32 | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get host metrics for all hosts
Example 2 - Get host metrics for a specific host
Example 3 - Get host metrics for a specific period of time
Example 4 - Get host metrics for all hosts for a specific period of time and graph them
Example 5 - Get host metrics for all hosts for a specific period of time, average the metrics out per-host, and graph them
Example 6 - Get host metrics for a specific host for a specific period of time and graph them
Example 7 - Get all most metrics for the past 5 minutes and export them to CSV
Example 8 - Get most metrics for a certain host, for the past hour and export them to CSV
Get-CloudHostPerformance
Source File: cloud-host.ps1
Synopsis: Gets and displays host performance metrics from the Cloud Server.
Description: Retrieves host performance metrics with optional graphical display. Shows CPU and memory utilization with visual percentage graphs. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| GroupByHost | SwitchParameter | False | - | - | - |
| ID | Int32 | False | - | - | - |
| Seconds | Int32 | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get host performance
Example 2 - Get host performance displayed graphically
Example 3 - Get host performance displayed graphically for a specific host
Example 4 - Get host performance displayed graphically for the a specified time period only
Example 5 - Get host performance displayed graphically and average the per-host values out over the time period
Example 6 - Get host performance displayed graphically and change the display units
Get-CloudImage
Source File: cloud-image.ps1
Synopsis: Gets images from the Cloud Server.
Description: Retrieves a list of images. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all cloud images
Example 2 - Get the cloud image with the name "web-server-01"
Example 3 - Get the cloud image with the ID 561
Get-CloudImageSnapshot
Source File: cloud-image.ps1
Synopsis: Gets snapshots for Cloud images.
Description: Retrieves all snapshots for one or more images. Shows snapshot details including date, size, parent relationships, and active status.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ImageID | Int32 | False | ByValue, ByPropertyName | - | - |
| SnapshotID | Int32 | False | - | - | - |
Example(s)
Example 1 - Get all snapshots for image 50
Example 2 - Get a specific snapshot
Example 3 - Get snapshots for all images
Example 4 - Get snapshots from pipeline
Example 5 - Get snapshots with formatted date
Get-CloudInstanceShowback
Source File: cloud-instance.ps1
Synopsis: Retrieves instance showback data for a specified time period.
Description: Returns a list of instances showback information. All parameters are optional. If no date range is specified, returns data for all available periods. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| EndMonth | Int32 | False | - | - | - |
| EndYear | Int32 | False | - | - | - |
| ExportCsv | String | False | - | - | - |
| Filter | String | False | - | - | - |
| StartMonth | Int32 | False | - | - | - |
| StartYear | Int32 | False | - | - | - |
Example(s)
Example 1 - Get all showback data
Example 2 - Get showback data for October 2025
Example 3 - Export showback data to CSV
Get-CloudInstanceShowback -StartMonth 10 -EndMonth 12 -StartYear 2025 -EndYear 2025 -ExportCsv "C:\Reports\showback-Q4-2025.csv"
Example 4 - Get showback data for Q4 2025 with filter and export to CSV
Get-CloudInstanceShowback -StartMonth 10 -EndMonth 12 -StartYear 2025 -EndYear 2025 -Filter "user=admin" -ExportCsv ".\admin-showback.csv"
Example 5 - Get showback data for specific year only
Get-CloudMarket
Source File: cloud-market.ps1
Synopsis: Gets markets from the Cloud Server.
Description: Retrieves a list of markets. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all markets
Example 2 - Get market by ID
Example 3 - Get market by name
Get-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Gets market apps from the Cloud Server.
Description: Retrieves a list of market apps. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all market apps
Example 2 - Get market app by app ID
Example 3 - Get market apps by app name
Get-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Gets networks from the Cloud Server.
Description: Retrieves a list of networks. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all networks
Example 2 - Get network by ID
Example 3 - Get network by name
Get-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Gets network templates from the Cloud Server.
Description: Retrieves a list of network templates. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Nullable1 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all network templates
Example 2 - Get network template by ID
Example 3 - Get network template by name
Get-CloudRouter
Source File: cloud-router.ps1
Synopsis: Gets routers from the Cloud Server.
Description: Retrieves a list of routers. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all virtual routers
Example 2 - Get virtual routers matching a name string
Example 3 - Get a virtual router by ID
Get-CloudRouterTemplate
Source File: cloud-router.ps1
Synopsis: Gets template from the Cloud Server.
Description: Retrieves a list of templates. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all virtual router templates
Example 2 - Get virtual router templates matching a name string
Get-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Returns security groups from the Cloud Server.
Description: Retrieves a list of security groups. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - List all security groups
Example 2 - List security groups matching a name string
Example 3 - Get a specific security group by ID
Get-CloudSystemConfig
Source File: cloud-system.ps1
Synopsis: Retrieves the config from the Cloud Server.
Description: Retrieves a the full cloud config. Automatically handles token refresh.
Example(s)
Example 1 - Retrieve the full configuration
Get-CloudSystemVersion
Source File: cloud-system.ps1
Synopsis: Retrieves the version from the Cloud Server.
Description: Retrieves the current cloud version. Automatically handles token refresh.
Example(s)
Example 1 - Return the current version
Get-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Gets template from the Cloud Server.
Description: Retrieves a list of templates. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - List all templates
Example 2 - List templates matching a name string
Get-CloudTenant
Source File: extra.ps1
Synopsis: Gets information about a tenant's resources.
Description: Retrieves and displays all resources associated with a tenant, including groups, users, networks, and ACLs.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| IncludeACLs | SwitchParameter | False | - | - | - |
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Get tenants matching a name string
Example 2 - Get tenants matching a specific name string and also return the associated ACLs
Get-CloudUser
Source File: cloud-user.ps1
Synopsis: Gets users from the Cloud Server.
Description: Retrieves a list of users. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all users
Example 2 - Get users matching a specific name string
Example 3 - Get a specific user by ID
Get-CloudUserQuota
Source File: cloud-user.ps1
Synopsis: Gets default user quota from the Cloud Server.
Description: Retrieves the default user quota. Automatically handles token refresh.
Example(s)
Example 1 - Get the default user quota
Get-CloudVM
Source File: cloud-instance.ps1
Synopsis: Gets virtual machines from the Cloud Server.
Description: Retrieves a list of virtual machines. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all VMs
Example 2 - Get a VM by name
Example 3 - Get a VM by ID
Get-CloudVMAccounting
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine accounting data from the Cloud Server.
Description: Retrieves a list of virtual machines. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| MaxDate | DateTime |
False | - | - | - |
| MinDate | DateTime |
False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Get-CloudVMDisk
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine's disk info from the Cloud Server.
Description: Retrieves a list of the virtual machine's disks. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskId | Int32 | False | - | - | - |
| Id | Int32 | True | ByValue, ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Get-CloudVMDiskSnapshot
Source File: cloud-instance.ps1
Synopsis: Gets a flattened list of disk snapshots for a VM.
Description: Retrieves all disk snapshots for a specified VM and flattens the output to make it easier to see which disks have which snapshots. Automatically converts Unix timestamps to readable dates.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| VMID | Int32 | True | ByValue, ByPropertyName | - | - |
Example(s)
Example 1 - Get all snapshots for VM 77
Example 2 - Get snapshots and display as table
Example 3 - Get snapshots for specific disk
Example 4 - Export to CSV
Get-CloudVMGroup
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine groups from the Cloud Server.
Description: Retrieves a list of virtual machine groups. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all VM groups
Example 2 - Get VM group by name
Example 3 - Get VM group by ID
Get-CloudVMMonitoring
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine monitoring data from the Cloud Server.
Description: Retrieves virtual machine monitoring data. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Avg | SwitchParameter | False | - | - | - |
| ExportCSV | String | False | - | - | - |
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| ID | Int32 | True | - | - | - |
| Max | SwitchParameter | False | - | - | - |
| Min | SwitchParameter | False | - | - | - |
| Seconds | Int32 | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Example 4
Example 5
Example 6
Example 7
Get-CloudVMMonitoring2
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine monitoring data from the Cloud Server.
Description: Retrieves virtual machine monitoring data. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ExportCSV | String | False | - | - | - |
| ID | Int32 | True | - | - | - |
Example(s)
Example 1
Example 2
Get-CloudVMNIC
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine's NIC info from the Cloud Server.
Description: Retrieves a list of the virtual machine's NICs. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Id | Int32 | True | ByValue, ByPropertyName | - | - |
| NicId | Int32 | False | - | - | - |
Example(s)
Example 1
Example 2
Get-CloudVMRecommendation
Source File: extra.ps1
Synopsis: Analyzes VM performance metrics and recommends optimal CPU and memory sizing.
Description: This function retrieves VM configuration and monitoring data, analyzes utilization patterns, and provides rightsizing recommendations based on actual usage with appropriate headroom.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPUHeadroomPercent | Int32 | False | - | - | 20 |
| CPUTargetUtilization | Int32 | False | - | - | 70 |
| MemoryHeadroomPercent | Int32 | False | - | - | 15 |
| MemoryTargetUtilization | Int32 | False | - | - | 80 |
| MinimumCPU | Int32 | False | - | - | 1 |
| MinimumMemoryMB | Int32 | False | - | - | 1024 |
| MonitoringPeriodHours | Int32 | False | - | - | 24 |
| UsePercentiles | SwitchParameter | False | - | - | $true |
| VMId | Int32 | True | ByValue | - | - |
Example(s)
Example 1 - Analyzes VM 83 and provides sizing recommendations using default thresholds.
Example 2 - Analyzes VM 83 using 95th percentile values with a 60% target CPU utilization.
Example 3 - Analyzes VM 83 using 72 hours of monitoring data.
Get-CloudVMRecommendations
Source File: extra.ps1
Synopsis: Analyzes multiple VMs and provides sizing recommendations with summary totals.
Description: Retrieves all VMs (or filtered VMs) and analyzes their performance metrics to provide rightsizing recommendations. Displays summary of total CPU and memory changes across all VMs.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPUHeadroomPercent | Int32 | False | - | - | 20 |
| CPUTargetUtilization | Int32 | False | - | - | 70 |
| ExportCSV | String | False | - | - | - |
| MemoryHeadroomPercent | Int32 | False | - | - | 15 |
| MemoryTargetUtilization | Int32 | False | - | - | 80 |
| MonitoringPeriodHours | Int32 | False | - | - | 24 |
| ShowOnlyChanges | SwitchParameter | False | - | - | - |
| UsePercentiles | SwitchParameter | False | - | - | $true |
| VMIds | Int32[] | False | - | - | - |
Example(s)
Example 1 - Analyzes all VMs with default settings.
Example 2 - Analyzes all VMs using 95th percentile and shows only VMs that need changes.
Example 3 - Analyzes specific VMs and exports results to CSV.
Example 4 - Analyzes all VMs with 72 hours of data and 60% CPU target.
Get-CloudVMSchedule
Source File: cloud-instance.ps1
Synopsis: Gets scheduled actions for a Cloud VM instance.
Description: Retrieves all scheduled actions configured for a VM, including one-time and recurring schedules.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
| ScheduleID | Int32 | False | - | - | - |
Example(s)
Example 1 - Get all schedules for VM 77
Example 2 - Get a specific schedule
Example 3 - Get schedules from pipeline
Example 4 - Get schedules and format as table
Get-CloudVMSnapshot
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine's snapshots from the Cloud Server.
Description: Retrieves and parses the VM template details. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Id | Int32 | True | ByValue, ByPropertyName | - | - |
| SnapshotId | Int32 | False | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Get-CloudVMTemplateDetail
Source File: cloud-instance.ps1
Synopsis: Gets virtual machine template details from the Cloud Server.
Description: Retrieves and parses the VM template details. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Id | Int32 | True | ByValue, ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Get-CloudZone
Source File: cloud-zone.ps1
Synopsis: Gets zones from the Cloud Server.
Description: Retrieves a list of zones. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all cloud zones
Example 2 - Get zone by ID
Example 3 - Get zones matching a specific name string
Get-CloudZoneRaft
Source File: cloud-zone.ps1
Synopsis: Gets zone rafts from the Cloud Server.
Description: Retrieves a list of zone rafts. Automatically handles token refresh.
Example(s)
Example 1 - Get all zone rafts
Get-MetalCapacity
Source File: metal.ps1
Synopsis: Gets metal capacity from the Cloud Server.
Description: Retrieves the metal Capacity. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| B | SwitchParameter | False | - | - | - |
| EB | SwitchParameter | False | - | - | - |
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| KB | SwitchParameter | False | - | - | - |
| MB | SwitchParameter | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get the capacity of the hosts
Example 2 - Get the capacity of the hosts and display what is used graphically
Example 3 - Get the capacity of the hosts in GB and display what is used graphically
Example 4 - Get the capacity of the hosts in TB
Get-MetalHost
Source File: metal.ps1
Synopsis: Gets metal hosts from the Cloud Server.
Description: Retrieves a list of metal hosts. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get all hosts
Example 2 - Get a host by ID
Example 3 - Get a host by name
Get-MetalLicense
Source File: metal.ps1
Synopsis: Gets metal license from the Cloud Server.
Description: Retrieves the metal license. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Get the current license status
Get-MetalStorage
Source File: metal.ps1
Synopsis: Gets metal storage (Ceph) information from the Cloud Server.
Description: Retrieves metal storage cluster status including health, capacity, OSDs, and PGs. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GB | SwitchParameter | False | - | - | - |
| Graph | SwitchParameter | False | - | - | - |
| ShowFlags | SwitchParameter | False | - | - | - |
| TB | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get storage information
Example 2 - Get storage information and display it graphically
Example 3 - Get storage flags currently applied
Example 4 - Get storage flags currently applied and show stats graphically
Example 5 - Get storage information in TB and display stats graphically
Get-SoftIronVersion
Source File: cloud-system.ps1
Synopsis: Retrieves the version from the Cloud Server.
Description: Retrieves the current cloud version. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Adventure | SwitchParameter | False | - | - | - |
| Logo | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Get the product and release version
Example 2 - ???
Invoke-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Commit security group changes to associated VMs on the Cloud server.
Description: Commit security group changes to associated VMs. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Clone the security group with ID 5 and prompt for confirmation
Example 2 - Clone the security group with ID 5 and bypass confirmation
Invoke-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Instantiates a virtual machine from a template on the Cloud Server.
Description: Instantiates a virtual machine from a template. Prompts for custom inputs if required. Allows overriding CPU, memory, and disk size. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPU | Decimal | False | - | - | - |
| DiskCopy | Boolean | False | - | - | $false |
| DiskSize | Int32 | False | - | - | - |
| Hold | Boolean | False | - | - | $false |
| ID | Int32 | True | - | - | - |
| JSON | String | False | - | - | - |
| Memory | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
| VCPU | Int32 | False | - | - | - |
Example(s)
Example 1 - Create an instance from a template
Example 2 - Create an instance from a template with specific, parameterized overrides
Example 3 - Create an instance from a template with an override configuration from a JSON file
Invoke-CloudTemplate -ID 31 -JSON "C:\configs\myvm.json"
Example JSON contents:
{
"NAME": "MyNewVM",
"CPU": "0.3",
"VCPU": 4,
"MEMORY": 4096,
"DISK": {
"SIZE": "20480"
},
"NIC": {
"METHOD": "DHCP",
"NETWORK": "Dev",
"SECURITY_GROUPS": "0,100"
},
"GRAPHICS": {
"LISTEN": "0.0.0.0",
"TYPE": "VNC",
"RANDOM_PASSWD": "NO"
}
}
Invoke-CloudVMRecommendation
Source File: extra.ps1
Synopsis: Applies VM sizing recommendations to resize a VM's CPU and memory.
Description: Takes recommendations from Get-CloudVMRecommendation and applies them to the VM. Supports dry-run mode, selective application (CPU only, memory only), and confirmation prompts. When downsizing, the VM will be stopped (with confirmation), resized, then restarted.
CmdletBinding: Yes | SupportsShouldProcess: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPU | SwitchParameter | False | - | - | - |
| Force | SwitchParameter | False | - | - | - |
| Memory | SwitchParameter | False | - | - | - |
| MonitoringPeriodHours | Int32 | False | - | - | 24 |
| NoRestart | SwitchParameter | False | - | - | - |
| Recommendation | PSObject |
True | ByValue | - | - |
| UsePercentiles | SwitchParameter | False | - | - | - |
| VMId | Int32 | True | - | - | - |
Example(s)
Example 1 - Gets recommendations for VM 83 and applies them after confirmation.
Example 2 - Gets recommendations first, then applies them.
$rec = Get-CloudVMRecommendation -VMId 83 -UsePercentiles
Invoke-CloudVMRecommendation -Recommendation $rec
Example 3
Example 4 - Shows what would change without making actual changes.
Example 5 - Applies changes but keeps the VM stopped (won't auto-restart after downsizing).
Lock-CloudDocument
Source File: cloud-document.ps1
Synopsis: Lock a document in the Cloud Server.
Description: Lock a document. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a document by restricting administrative operations on it
Example 2 - Test locking a document at a specific level
Lock-CloudHook
Source File: cloud-hook.ps1
Synopsis: Lock a hook in the Cloud Server.
Description: Lock a hook. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a hook to restrict administrative operations
Example 2 - Test locking a hook
Lock-CloudImage
Source File: cloud-image.ps1
Synopsis: Lock an image in the Cloud Server.
Description: Lock an image. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock the image 5 to the level ADMIN
Example 2 - Shows the results of a test application of lock level USE on image 5
Lock-CloudInstance
Source File: cloud-instance.ps1
Synopsis: Lock an instance in the Cloud Server.
Description: Lock an instance. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1
Example 2
Lock-CloudInstanceGroup
Source File: cloud-instance.ps1
Synopsis: Lock an instance group in the Cloud Server.
Description: Lock an instance group. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1
Example 2
Lock-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Lock a market app in the Cloud Server.
Description: Lock a market app. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | False | - | USE, MANAGE, ADMIN, ALL | "USE" |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a market app
Example 2 - Test locking an app
Lock-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Lock a virtual network in the Cloud Server.
Description: Lock a virtual network. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a cloud network to admin operations
Example 2 - Test locking a cloud network to use operations
Example 3 - Lock a cloud network using a pipeline input
Lock-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Lock a virtual network template in the Cloud Server.
Description: Lock a virtual network template. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a cloud network template to admin operations
Example 2 - Test locking a cloud network template to use operations
Example 3 - Lock a network template using a pipeline input
Lock-CloudRouter
Source File: cloud-router.ps1
Synopsis: Lock a virtual router in the Cloud Server.
Description: Lock a virtual router. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a virtual router
Example 2 - Test locking a virtual router
Lock-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Lock a virtual template in the Cloud Server.
Description: Lock a virtual template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Level | String | True | - | USE, MANAGE, ADMIN, ALL | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Lock a template
Example 2 - Test locking a template
Merge-CloudImageSnapshot
Source File: cloud-image.ps1
Synopsis: Flattens (merges) an image snapshot.
Description: Flattens a snapshot into the base image, consolidating the snapshot data. This operation merges the snapshot's changes into the parent image.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ImageID | Int32 | True | ByPropertyName | - | - |
| SnapshotID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Flatten snapshot 0 of image 50
Example 2 - Flatten without confirmation
Move-CloudVM
Source File: cloud-instance.ps1
Synopsis: Moves/migrates a VM to a different host in the Cloud Server.
Description: Migrates a VM to a different host. Supports both live and offline migration. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DestinationHostID | Int32 | True | - | - | - |
| EnforceCapacity | Boolean | False | - | - | $true |
| ID | Int32 | True | ByPropertyName | - | - |
| Live | Boolean | False | - | - | $true |
Example(s)
Example 1
Example 2
Example 3
Example 4
Move-CloudVM2
Source File: cloud-instance.ps1
Synopsis: Moves/migrates a VM to a different host in the Cloud Server.
Description: Migrates a VM to a different host. Supports both live and offline migration. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DestinationHostID | Int32 | True | - | - | - |
| EnforceCapacity | Boolean | False | - | - | $true |
| ID | Int32 | True | ByPropertyName | - | - |
| Live | Boolean | False | - | - | $true |
Example(s)
Example 1
Example 2
Example 3
Example 4
Move-CloudVM3
Source File: cloud-instance.ps1
Synopsis: Moves/migrates a VM to a different host in the Cloud Server.
Description: Migrates a VM to a different host. Supports both live and offline migration. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DestinationHostID | Int32 | True | - | - | - |
| EnforceCapacity | Boolean | False | - | - | $true |
| Force | SwitchParameter | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| Live | SwitchParameter | False | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Example 4
Example 5
Move-CloudVM4
Source File: cloud-instance.ps1
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DatastoreID | Int32 | False | - | - | -1 |
| DestinationHostID | Int32 | True | - | - | - |
| EnforceCapacity | Boolean | False | - | - | $true |
| Force | SwitchParameter | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| Live | SwitchParameter | False | - | - | - |
New-CloudACL
Source File: cloud-acl.ps1
Synopsis: Creates a new ACL rule in the Cloud Server.
Description: Creates an ACL rule with automatic encoding. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| AllUsers | SwitchParameter | True | - | - | - |
| AllZones | SwitchParameter | True | - | - | - |
| GroupID | Int32 | True | - | - | - |
| ResourceGroupID | Int32 | False | - | - | -1 |
| ResourceID | Int32 | False | - | - | -1 |
| ResourceType | String[] | True | - | VM, HOST, NET, IMAGE, USER, TEMPLATE, GROUP, DATASTORE, CLUSTER, DOCUMENT, ZONE, SECGROUP, VDC, VROUTER, MARKETPLACE, MARKETPLACEAPP, VMGROUP, VNTEMPLATE, BACKUPJOB | - |
| Rights | String[] | True | - | USE, MANAGE, ADMIN, CREATE | - |
| UserID | Int32 | True | - | - | - |
| ZoneID | Int32 | True | - | - | - |
Example(s)
Example 1 - Give user #4 read-only access to all HOSTs in all zones
Example 2 - Give group @1 manage access to all VMs, Images, and Templates in zone 0
Example 3 - Give user #4 admin access to specific VM #10
New-CloudBlankDisk
Source File: cloud-image.ps1
Synopsis: Creates a new generic datablock image on the Cloud Server.
Description: Creates a new blank disk image. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DatastoreID | Int32 | True | - | - | 100 |
| Name | String | True | - | - | - |
| Size | Int32 | True | - | - | 1024 |
Example(s)
Example 1 - Creates a new blank disk image named "BlankDisk" of default size 1024MB on default datastore 100
Example 2 - Creates a 10GB/10240MB disk image named "Data-Disk-01" on datastore 2
New-CloudDocument
Source File: cloud-document.ps1
Synopsis: Creates a new document in the Cloud Server.
Description: Creates a document object in OpenNebula. Documents are generic objects that can store arbitrary data in their template.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Template | String | True | - | - | - |
| Type | Int32 | False | - | - | 0 |
Example(s)
Example 1 - Create a generic document with this template:
$template = "NAME=`"MyDocument`"`nDESCRIPTION=`"Test document`"`nCUSTOM_DATA=`"Some value`""
New-CloudDocument -Template $template -Type 0
Example 2 - Create a file based on the config saved into a Powershell variable
$template = @"
NAME="config.json"
DESCRIPTION="Configuration file"
TYPE="file"
"@
New-CloudDocument -Template $template -Type 1
New-CloudGroup
Source File: cloud-group.ps1
Synopsis: Creates a group on the Cloud Server.
Description: Creates a new cloud group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Name | String | True | - | - | - |
Example(s)
Example 1 - Create a new group
New-CloudGroupAdmin
Source File: cloud-group.ps1
Synopsis: Defines an admin in a group on the Cloud Server.
Description: Defines an admin in a group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| User | Int32 | True | - | - | - |
Example(s)
Example 1 - Define a user a group admin
New-CloudHook
Source File: cloud-hook.ps1
Synopsis: Creates a new hook in the Cloud Server.
Description: Creates a hook that triggers on specific OpenNebula events. Hooks can execute commands, scripts, or send notifications when specific API calls are made or resource states change. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Low
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Template | String | True | ByValue | - | - |
Example(s)
Example 1 - Create an API Hook: Log when VMs are created
$template = @"
NAME="vm-creation-logger"
TYPE="api"
COMMAND="/usr/bin/logger"
ARGUMENTS="VM Created - ID: `$ID"
CALL="one.vm.allocate"
"@
New-CloudHook -Template $template
Example 2 - Create a n API Hook: Send email notification when VM is deleted
$template = @"
NAME="vm-deletion-alert"
TYPE="api"
COMMAND="/usr/local/bin/send-alert.sh"
ARGUMENTS="`$TEMPLATE"
CALL="one.vm.delete"
"@
New-CloudHook -Template $template
Example 3 - Create a State Hook: Execute script when VM goes to RUNNING state
$template = @"
NAME="vm-running-webhook"
TYPE="state"
COMMAND="/usr/local/bin/vm-started.sh"
ARGUMENTS="`$ID `$TEMPLATE"
ON="RUNNING"
RESOURCE="VM"
"@
New-CloudHook -Template $template
Example 4 - Create a State Hook: Trigger on VM failure states
$template = @"
NAME="vm-failure-alert"
TYPE="state"
COMMAND="/usr/local/bin/alert-admin.sh"
ARGUMENTS="VM `$ID failed - `$PREV_STATE to `$CUR_STATE"
ON="FAILED"
RESOURCE="VM"
"@
New-CloudHook -Template $template
Example 5 - Create an API Hook: Monitor host operations
$template = @"
NAME="host-monitor"
TYPE="api"
COMMAND="/var/lib/one/hooks/host-change.py"
ARGUMENTS="`$ID `$TEMPLATE"
CALL="one.host.update"
"@
New-CloudHook -Template $template
Example 6 - Create a State Hook: Network monitoring
$template = @"
NAME="network-state-monitor"
TYPE="state"
COMMAND="/usr/local/bin/network-alert.sh"
ARGUMENTS="`$ID"
ON="ERROR"
RESOURCE="VNET"
REMOTE="no"
"@
New-CloudHook -Template $template
Example 7 - Create an API Hook: Image creation tracking with multiple arguments
$template = @"
NAME="image-creation-tracker"
TYPE="api"
COMMAND="/opt/monitoring/track-image.py"
ARGUMENTS="--image-id `$ID --timestamp `$(date +%s) --user `$UNAME"
CALL="one.image.allocate"
"@
New-CloudHook -Template $template
New-CloudImage
Source File: cloud-image.ps1
Synopsis: Creates a new image on the Cloud Server.
Description: Creates a new image of various types (OS disk, ISO, or data block). Can create blank images or upload from a file path.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DatastoreID | Int32 | False | - | - | 100 |
| Description | String | False | - | - | - |
| DevPrefix | String | False | - | - | - |
| Driver | String | False | - | raw, qcow2, vmdk | 'raw' |
| Name | String | True | - | - | - |
| Path | String | False | - | - | - |
| Persistent | SwitchParameter | False | - | - | - |
| Size | Int32 | False | - | - | - |
| Type | String | True | - | OS, CDROM, Datablock | - |
Example(s)
Example 1 - Create a blank data disk
Example 2 - Upload an ISO
Example 3 - Upload an OS disk
New-CloudImage -Name "Windows Server 2022" -Type OS -Path "/path/to/disk.qcow2" -Driver qcow2 -Description "Windows Server base image"
Example 4 - Create a persistent image
Example 5 - Upload a QCOW2 from a URL
New-CloudImage -Name "Ubuntu-2204-Cloud" -Type OS -Path "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img" -Driver qcow2 -Description "Ubuntu 22.04 Cloud"
New-CloudInstanceShowback
Source File: cloud-instance.ps1
Synopsis: Retrieves instance showback data for a specified time period.
Description: Generates showback (cost/usage) data for instances within a specified date range. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| EndMonth | Int32 | True | - | - | - |
| EndYear | Int32 | True | - | - | - |
| StartMonth | Int32 | True | - | - | - |
| StartYear | Int32 | True | - | - | - |
Example(s)
Example 1 - Get showback data for October 2025
Example 2 - Get showback data for Q4 2025 (October through December)
Example 3 - Get showback data across year boundary
Example 4 - Get full year showback data
New-CloudMarket
Source File: cloud-market.ps1
Synopsis: Creates a new cloud market on the Cloud Server.
Description: Creates a new cloud market. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Description | String | False | - | - | - |
| Endpoint | String | True | - | - | - |
| Name | String | True | - | - | - |
| S3Bucket | String | False | - | - | - |
| S3Key | String | False | - | - | - |
| S3Region | String | False | - | - | - |
| S3Secret | String | False | - | - | - |
| Type | String | True | - | - | - |
Example(s)
Example 1 - Create a new market backed by SoftIron's community marketplace. Requires credentials
New-CloudMarket -Name "NewMarket" -Type static -Endpoint "https://USERNAME:PASSWORD@marketplace.softiron.cloud/community/metadata/
Example 2 - Create a new market backed by an existing S3 bucket
New-CloudMarket -Name "S3-Market" -Type s3 -Description "S3-Market" -S3Key IS3ykrgDMA3mKZMIh943i -S3Secret Qk3ykKUw8xp2uvXcbiLp5N3ykmgUJfBpywt23wpvw -Endpoint "https://s3.storage.local" -S3Region "US-EAST" -S3Bucket "marketplace"
New-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Allocates a new marketplace app on the Cloud Server.
Description: Creates a new marketplace app in a specified market. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| AdditionalParams | Hashtable | False | - | - | - |
| Description | String | False | - | - | - |
| Format | String | False | - | - | - |
| MarketId | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
| OriginId | String | False | - | - | - |
| Publisher | String | False | - | - | - |
| Type | String | True | - | - | - |
| Version | String | False | - | - | - |
Example(s)
Example 1 - Create a new marketplace app for an image
New-CloudMarketApp -MarketId 5 -Name "Ubuntu-22.04" -Type "IMAGE" -OriginId 42 -Description "Ubuntu 22.04 LTS Server" -Publisher "Canonical" -Version "22.04" -Format "qcow2"
Example 2 - Create a marketplace app with additional custom parameters
$additionalParams = @{
"SIZE" = "10240"
"MD5" = "a1b2c3d4e5f6"
}
New-CloudMarketApp -MarketId 5 -Name "CustomApp" -Type "IMAGE" -OriginId 10 -AdditionalParams $additionalParams
New-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Creates a new virtual network on the Cloud Server.
Description: Creates a new virtual network using a template string or by specifying a cluster ID and template configuration.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Bridge | String | False | - | - | - |
| BridgeType | String | False | - | - | - |
| ClusterID | Int32 | True | - | - | - |
| Description | String | False | - | - | - |
| DNS | String | False | - | - | - |
| Gateway | String | False | - | - | - |
| Name | String | True | - | - | - |
| NetworkAddress | String | False | - | - | - |
| NetworkMask | String | False | - | - | - |
| PassThru | SwitchParameter | False | - | - | - |
| TemplateText | String | True | - | - | - |
| VNMad | String | False | - | - | - |
Example(s)
Example 1 - Create a network
New-CloudNetwork -ClusterID 0 -TemplateText @"
NAME = "Production Network"
BRIDGE = br0
BRIDGE_TYPE = linux
VN_MAD = fw
GATEWAY = 192.168.1.1
NETWORK_MASK = 255.255.255.0
VLAN_ID = 100
VLAN = YES
DNS = "8.8.8.8 8.8.4.4"
"@
Example 2 - Create a network using individual parameters
New-CloudNetwork -ClusterID 0 -Name "Dev Network" -Bridge "virbr0" -BridgeType "linux" -VNMad "fw" -Gateway "10.0.0.1" -NetworkMask "255.255.255.0"
Example 3 - Create and return the network object
New-CloudNetworkAddressRange
Source File: cloud-network.ps1
Synopsis: Adds an address range to a virtual network.
Description: Creates a new address range in an existing virtual network.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Add a new address range to the network
$template = @"
AR = [
TYPE = "IP4",
IP = "192.168.1.100",
SIZE = "50"
]
"@
New-CloudNetworkAddressRange -NetworkID 5 -Template $template
New-CloudNetworkFromTemplate
Source File: cloud-network.ps1
Synopsis: Creates a new virtual network from a template.
Description: Instantiates a virtual network from an existing network template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Extra | String | False | - | - | - |
| Name | String | True | - | - | - |
| TemplateID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Create a network from template 3
Example 2 - Create with extra parameters to override template settings
$extra = @"
VN_MAD = "802.1Q"
VLAN_ID = "200"
BRIDGE = "onebr.200"
"@
New-CloudNetworkFromTemplate -TemplateID 3 -Name "custom-network" -Extra $extra
Example 3 - Override just the VLAN_ID to avoid conflicts
Example 4 - From pipeline
New-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Creates a new virtual network template in the Cloud Server.
Description: Creates a virtual network template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Bridge | String | True | - | - | - |
| Description | String | False | - | - | - |
| DNS | String | False | - | - | - |
| Gateway | String | False | - | - | - |
| Name | String | True | - | - | - |
| NetworkAddress | String | True | - | - | - |
| NetworkMask | String | True | - | - | - |
| Template | String | True | - | - | - |
| VnMad | String | True | - | bridge, vxlan, ovswitch, ebtables, fw, 802.1Q, vlan | - |
Example(s)
Example 1 - Create a new network template with individual flags
New-CloudNetworkTemplate -Name "office-network" -VnMad "bridge" -Bridge "br0" -NetworkAddress "192.168.1.0" -NetworkMask "255.255.255.0"
Example 2 - Create a new network template with individual flags
New-CloudNetworkTemplate -Name "dmz-network" -VnMad "bridge" -Bridge "br1" -NetworkAddress "10.0.0.0" -NetworkMask "255.255.255.0" -Gateway "10.0.0.1" -DNS "8.8.8.8"
Example 3 - Create a new network template with a template variable
$template = @"
name = "custom-network"
vn_mad = "bridge"
bridge = "br0"
network_address = "172.16.0.0"
network_mask = "255.255.0.0"
gateway = "172.16.0.1"
dns = "8.8.8.8 8.8.4.4"
description = "Custom network template"
"@
New-CloudNetworkTemplate -Template $template
New-CloudRouter
Source File: cloud-router.ps1
Synopsis: Creates a new virtual router in the Cloud Server.
Description: Creates a virtual router. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| KeepalivedID | Int32 | True | - | - | - |
| KeepalivedPassword | String | True | - | - | - |
| Name | String | True | - | - | - |
| Template | String | True | - | - | - |
| TemplateID | Int32 | True | - | - | - |
Example(s)
Example 1 - Create a new virtual router with individual parameters
New-CloudRouter -Name "gateway-router" -TemplateID 5 -KeepalivedPassword "secure123" -KeepalivedID 100
Example 2 - Create a new virtual router with a single template variable
$template = @"
NAME="test-router"
TEMPLATE_ID=5
KEEPALIVED_PASSWORD="mypassword"
KEEPALIVED_ID=100
"@
New-CloudRouter -Template $template
New-CloudRouterFromTemplate
Source File: cloud-router.ps1
Synopsis: Instantiates a virtual router from a template.
Description: Creates a new virtual router instance from an existing router template.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Extra | String | False | - | - | - |
| Instances | Int32 | False | - | - | 1 |
| Name | String | True | - | - | - |
| Pending | Boolean | False | - | - | $false |
| RouterID | Int32 | True | ByPropertyName | - | - |
| TemplateID | Int32 | True | - | - | - |
Example(s)
Example 1 - Basic router instantiation
Example 2 - Create multiple router instances
Example 3 - With custom template and extra parameters
Example 4 - Create in pending state for later activation
New-CloudRouterNIC
Source File: cloud-router.ps1
Synopsis: Adds a NIC to a virtual router.
Description: Attaches a new network interface to an existing virtual router.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| IP | String | False | - | - | - |
| Model | String | False | - | - | "virtio" |
| NetworkID | Int32 | False | - | - | - |
| NetworkName | String | False | - | - | - |
| RouterID | Int32 | True | ByPropertyName | - | - |
| Template | String | False | - | - | - |
Example(s)
Example 1 - Add NIC using network ID
Example 2 - Add NIC with specific IP
Example 3 - Add NIC by network name
Example 4 - Add NIC with custom model
New-CloudRouterNIC2
Source File: cloud-router.ps1
Synopsis: Adds a NIC to a virtual router.
Description: Attaches a new network interface to an existing virtual router.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| IP | String | False | - | - | - |
| NetworkID | Int32 | True | - | - | - |
| NetworkName | String | False | - | - | - |
| RouterID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Add NIC using template
Example 2 - Add NIC using parameters
Example 3 - Add NIC with specific IP
Example 4 - Add NIC by network name
New-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Creates a new security group on the Cloud Server.
Description: Creates a new security group with specified name, description, and rules. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Description | String | False | - | - | - |
| Name | String | True | - | - | - |
| Rules | Array |
False | - | - | - |
Example(s)
Example 1 - Create basic security group
Example 2 - Create security group with HTTP and HTTPS rules
$rules = @(
@{ Protocol = "ALL"; RuleType = "OUTBOUND" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "80:80" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "443:443" }
)
New-CloudSecurityGroup -Name "WebServer-SG" -Description "Web server access" -Rules $rules
Example 3 - Create security group allowing SSH from specific subnet
$rules = @(
@{ Protocol = "ALL"; RuleType = "OUTBOUND" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "22:22"; IP = "10.0.0.0"; Size = "24" }
)
New-CloudSecurityGroup -Name "SSH-Admin-SG" -Description "SSH access from admin subnet" -Rules $rules
Example 4 - Create security group with ICMP ping allowed
$rules = @(
@{ Protocol = "ALL"; RuleType = "OUTBOUND" }
@{ Protocol = "ICMP"; RuleType = "INBOUND"; IcmpType = "8" }
)
New-CloudSecurityGroup -Name "Monitoring-SG" -Description "Allow ping for monitoring" -Rules $rules
Example 5 - Create security group with multiple port ranges
$rules = @(
@{ Protocol = "ALL"; RuleType = "OUTBOUND" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "80:80" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "443:443" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "8080:8090" }
)
New-CloudSecurityGroup -Name "AppServer-SG" -Rules $rules
New-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Creates a new VM template on the Cloud Server.
Description: Creates a new VM template using an existing image. Supports customization of CPU, memory, network, and other VM settings.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CDROMID | Int32 | False | - | - | - |
| CPU | Double | False | - | - | 1 |
| Description | String | False | - | - | - |
| EnableCloudInit | Boolean | False | - | - | $true |
| EnableVNC | Boolean | False | - | - | $true |
| ImageID | Int32 | True | - | - | - |
| Logo | String | False | - | - | - |
| Memory | Int32 | False | - | - | 4096 |
| Name | String | True | - | - | - |
| NetworkID | Int32 | False | - | - | - |
| NetworkName | String | False | - | - | - |
| SecurityGroupIDs | String | False | - | - | - |
| SSHPublicKey | String | False | - | - | - |
| VCPU | Int32 | False | - | - | 2 |
Example(s)
Example 1 - Basic Ubuntu template
Example 2 - Template with networking without allowing VNC
New-CloudTemplate -Name "Web-Server-Template" -ImageID 57 -NetworkID 2 -SecurityGroupIDs "0,100" -EnableVNC:$false
Example 3 - Template with CDROM
Example 4 - Template with SSH key
$sshKey = Get-Content ~/.ssh/id_rsa.pub -Raw
New-CloudTemplate -Name "Dev-Server" -ImageID 57 -NetworkID 2 -SSHPublicKey $sshKey
New-CloudTenant
Source File: extra.ps1
Synopsis: Creates a complete tenant setup with groups, admin user, network, and ACLs.
Description: Orchestrates the creation of a new cloud tenant including: - Admin group (
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| AdminPassword | String | True | - | - | - |
| ClusterID | Int32 | True | - | - | - |
| NetworkConfig | Hashtable | False | - | - | - |
| PassThru | SwitchParameter | False | - | - | - |
| SkipNetwork | SwitchParameter | False | - | - | - |
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Create a new tenant
Example 2 - Create tenant with custom network config (OpenNebula template format)
$networkConfig = @{
BRIDGE = "br0"
BRIDGE_TYPE = "linux"
VN_MAD = "fw"
GATEWAY = "192.168.10.1"
NETWORK_MASK = "255.255.255.0"
DNS = "8.8.8.8 8.8.4.4"
VLAN = "NO"
}
New-CloudTenant -TenantName "Contoso" -AdminPassword "P@ssw0rd" -ClusterID 0 -NetworkConfig $networkConfig -PassThru
Example 3 - Create tenant with a specific VLAN and network
$networkConfig = @{
BRIDGE = "br0"
VLAN_ID = "100"
GATEWAY = "10.100.0.1"
NETWORK_MASK = "255.255.0.0"
}
New-CloudTenant -TenantName "VlanTenant" -AdminPassword "P@ssw0rd" -ClusterID 0 -NetworkConfig $networkConfig
Example 4 - Create a new tenant without a network
New-CloudTenantNetwork
Source File: extra.ps1
Synopsis: Adds an additional network to an existing tenant.
Description: Creates a new network for an existing tenant with proper naming convention and optional ACL configuration.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ClusterID | Int32 | True | - | - | - |
| ConfigureACLs | SwitchParameter | False | - | - | - |
| NetworkConfig | Hashtable | False | - | - | - |
| NetworkNumber | Int32 | False | - | - | - |
| PassThru | SwitchParameter | False | - | - | - |
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Create a new tenant network
Example 2 - Create network with VLAN="NO" to avoid storage network conflict
$networkConfig = @{
BRIDGE = "br1"
GATEWAY = "192.168.20.1"
NETWORK_MASK = "255.255.255.0"
VLAN = "NO"
}
New-CloudTenantNetwork -TenantName "Acme" -NetworkNumber 2 -ClusterID 0 -NetworkConfig $networkConfig -ConfigureACLs
Example 3 - Create network with specific VLAN
$networkConfig = @{
BRIDGE = "br0"
VLAN_ID = "200"
}
New-CloudTenantNetwork -TenantName "Acme" -ClusterID 0 -NetworkConfig $networkConfig
Example 4
New-CloudTenantUser
Source File: extra.ps1
Synopsis: Adds a new user to an existing tenant.
Description: Creates a new user and adds them to the specified tenant's users group. Optionally can add them to the admin group as well.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| MakeAdmin | SwitchParameter | False | - | - | - |
| PassThru | SwitchParameter | False | - | - | - |
| Password | String | True | - | - | - |
| TenantName | String | True | - | - | - |
| Username | String | True | - | - | - |
Example(s)
Example 1 - Create a new tenant user
Example 2 - Create a new tenant admin user
Example 3 - Create a new tenant user, saving the results to a variable for passthrough to another function
New-CloudUser
Source File: cloud-user.ps1
Synopsis: Creates a user on the Cloud Server.
Description: Creates a new cloud user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| AuthDriver | String | False | - | - | - |
| GroupIDs | Int32[] | False | - | - | - |
| Password | String | True | - | - | - |
| Username | String | True | - | - | - |
Example(s)
Example 1 - Create a basic user with just username and password
Example 2 - Create a user and add them to specific groups
Example 3 - Create a user with a specific authentication driver
Example 4 - Create a user with all options
New-CloudUserLoginToken
Source File: cloud-user.ps1
Synopsis: Creates a new user login token on the Cloud Server.
Description: Creates a new login token for a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Duration | Int32 | True | - | - | - |
| GroupID | Int32 | True | - | - | - |
| Token | String | False | - | - | - |
| Username | String | True | - | - | - |
Example(s)
Example 1 - Generate a new token for jsmith valid for 5 minutes
Example 2 - Create a specific token for jsmith, valid for 24 hours
New-CloudUserLoginToken -username jsmith -duration 86400 -GroupID 1 -token ff1c8f3753d842c8355f3f1672ae7720804585a73c537745a92b7c7ce9772f12
New-CloudVM
Source File: cloud-instance.ps1
Synopsis: Instantiates a virtual machine on the Cloud Server.
Description: Instantiates a virtual machine. Prompts for custom inputs if required. Allows overriding CPU, memory, and disk size. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPU | Decimal | False | - | - | - |
| DiskCopy | Boolean | False | - | - | $false |
| DiskSize | Int32 | False | - | - | - |
| Hold | Boolean | False | - | - | $false |
| ID | Int32 | False | - | - | - |
| JSON | String | False | - | - | - |
| Memory | Int32 | False | - | - | - |
| Name | String | False | - | - | - |
| StartScript | String | False | - | - | - |
| VCPU | Int32 | False | - | - | - |
Example(s)
Example 1 - Creates a new VM based on a template
Example 2 - Creates a new VM based on a template with certain changes
Example 3 - Creates a new VM with a startup script
Example 4 - Creates a new instance from template 31 with a JSON
Example 5 - Creates a new VM from JSON with a startup script
New-CloudVM -ID 31 -JSON "C:\configs\myvm.json" -StartScript "C:\scripts\bootstrap.ps1"
Example JSON contents:
{
"NAME": "MyNewVM",
"CPU": "0.3",
"VCPU": 4,
"MEMORY": 4096,
"DISK": {
"SIZE": "20480"
},
"NIC": {
"METHOD": "DHCP",
"NETWORK": "Dev",
"SECURITY_GROUPS": "0,100"
},
"GRAPHICS": {
"LISTEN": "0.0.0.0",
"TYPE": "VNC",
"RANDOM_PASSWD": "NO"
}
}
New-CloudVMDisk
Source File: cloud-instance.ps1
Synopsis: Attaches a new disk to a Cloud VM instance.
Description: Attaches a new disk to a VM instance. Supports hot-plugging to running VMs if the hypervisor supports it. You can attach an existing image, create a blank disk, or attach an image with a custom size (size on instantiate).
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Cache | String | False | - | - | - |
| DevPrefix | String | False | - | - | - |
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
| ImageID | Int32 | False | - | - | - |
| Persistent | Boolean | False | - | - | $false |
| ReadOnly | Boolean | False | - | - | $false |
| Size | Int32 | False | - | - | - |
| Target | String | False | - | - | - |
| Type | String | False | - | - | - |
Example(s)
Example 1 - Attach an existing image as a disk (supports hot-plug)
Example 2 - Create a new blank disk (10GB)
Example 3 - Attach an image with custom size (size on instantiate)
Example 4 - Attach an image with specific device prefix
Example 5 - Create a persistent disk
Example 6 - Attach a read-only disk
New-CloudVMDiskImage
Source File: cloud-instance.ps1
Synopsis: Saves a VM disk as a new image.
Description: Creates a new image from an existing VM disk. This is useful for creating backups, templates, or snapshots of VM disks. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | ByPropertyName | - | - |
| ImageType | String | False | - | - | "OS" |
| InstanceID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
| Snapshot | Int32 | False | - | - | - |
Example(s)
Example 1 - Save disk 0 from VM 79 as a new image
Example 2 - Save a data disk as a DATABLOCK image
Example 3 - Save from a specific snapshot
Example 4 - Save from pipeline
Get-CloudVMDisk -ID 79 | Where-Object { $_.disk_id -eq 0 } |
New-CloudVMDiskImage -Name "Boot-Disk-Backup"
New-CloudVMDiskSnapshot
Source File: cloud-instance.ps1
Synopsis: Creates a snapshot of a VM's disk on the Cloud Server.
Description: Creates a snapshot of a VM's disk . Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Description | String | True | - | - | - |
| DiskID | Int32 | True | - | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Creates a snapshot of disk 2 on VM 77 with description "snapshot-2"
New-CloudVMNIC
Source File: cloud-instance.ps1
Synopsis: Attaches a new network interface to a Cloud VM instance.
Description: Attaches a new NIC to a VM instance. Supports hot-plugging to running VMs if the hypervisor supports it.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
| IP | String | False | - | - | - |
| MAC | String | False | - | - | - |
| Model | String | False | - | - | "virtio" |
| NetworkID | Int32 | False | - | - | - |
| NetworkName | String | False | - | - | - |
| SecurityGroupIDs | String | False | - | - | - |
Example(s)
Example 1 - Attach to a network by ID
Example 2 - Attach to a network by name with security groups
Example 3 - Attach with specific IP address
Example 4 - Attach with specific model and MAC
Example 5 - Attach without confirmation
New-CloudVMNICSecurityGroup
Source File: cloud-instance.ps1
Synopsis: Attaches a new network security group to an interface to a Cloud VM instance.
Description: Attaches a new network security group.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
| NICID | Int32 | True | - | - | - |
| SGID | Int32 | True | - | - | - |
Example(s)
Example 1 - Attach to a network by ID
New-CloudVMSchedule
Source File: cloud-instance.ps1
Synopsis: Adds a scheduled action to a Cloud VM instance.
Description: Creates a new scheduled action for a VM. Schedules can perform actions like poweroff, resume, snapshot, terminate, etc. at specified times.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Action | String | True | - | poweroff, poweroff-hard, resume, reboot, reboot-hard, snapshot, snapshot-revert, snapshot-delete, terminate, terminate-hard, undeploy, undeploy-hard | - |
| Args | String | False | - | - | - |
| Days | String | False | - | - | - |
| EndType | String | False | - | NONE, TIMES, DATE | "NONE" |
| EndValue | String | False | - | - | - |
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
| Repeat | Int32 | False | - | - | 0 |
| Time | String | True | - | - | - |
Example(s)
Example 1 - Power off VM in 1 minute (60 seconds)
Example 2 - Power off VM in 5 minutes
Example 3 - Daily reboot at specific time (using epoch timestamp)
$tomorrow3AM = [DateTimeOffset]::Parse("2024-12-01 03:00:00").ToUnixTimeSeconds()
New-CloudVMSchedule -ID 80 -Action "reboot" -Time "$tomorrow3AM" -Repeat 86400
Example 4 - Weekly snapshot (run in 1 hour, then repeat weekly)
Example 5 - Power off in 2 hours, repeat 5 times with 1 hour interval
New-CloudVMSchedule -ID 80 -Action "poweroff" -Time "+7200" -Repeat 3600 -EndType "TIMES" -EndValue 5
New-CloudVMSnapshot
Source File: cloud-instance.ps1
Synopsis: Creates a new snapshot of an instance in the Cloud Server.
Description: Creates a snapshot of an instance. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1
New-CloudVMVNCProxy
Source File: cloud-instance.ps1
Synopsis: Creates a VNC proxy for a VM in the Cloud Server.
Description: Creates a VNC proxy for a VM. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Zone | Int32 | False | - | - | 0 |
Example(s)
Example 1
New-CloudZone
Source File: cloud-zone.ps1
Synopsis: Creates a new zone on the Cloud Server.
Description: Creates a new zone with specified name and endpoint configuration.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Endpoint | String | False | - | - | - |
| Name | String | True | - | - | - |
| Template | String | False | - | - | - |
Example(s)
Example 1 - Create basic zone
Example 2 - Create zone with custom template
$template = @"
ENDPOINT = http://prod-host:2633/RPC2
PROVISION_DRIVER = ec2
"@
New-CloudZone -Name "AWS-Zone" -Template $template
New-MetalDatastore
Source File: metal.ps1
Synopsis: Creates a new datastore on the Cloud Server.
Description: Creates a new datastore. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Name | String | True | - | - | - |
| Protection | String | True | - | - | - |
Example(s)
Example 1 - Creates a new datastore named "3REP-Datastore" that is triple-replicated
Redo-CloudHook
Source File: cloud-hook.ps1
Synopsis: Attempt to retry a hook in the Cloud Server.
Description: Retries a hook. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Time | Int32 | True | - | - | - |
Example(s)
Example 1 - Retries hook 5 in 10 seconds
Remove-CloudACL
Source File: cloud-acl.ps1
Synopsis: Removes an ACL rule from the Cloud Server.
Description: Deletes an ACL rule by ID. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove an ACL with a specific ID
Example 2 - Remove an ACL with a specific ID and bypass the confirmation prompt
Example 3 - Remove multiple ACLs
Example 4 - Remove ACLs matching a pattern
Get-CloudACL | Where-Object { $_.string -like "*@102*" } | ForEach-Object { Remove-CloudACL -ID $_.id }
Remove-CloudDocument
Source File: cloud-document.ps1
Synopsis: Removes a document from the Cloud Server.
Description: Removes a document. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove a document with confirmation prompt (default behavior)
Remove-CloudDocument -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Document" on target "Document ID 3 (MyDocument)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove a document without confirmation prompt
Remove-CloudGroup
Source File: cloud-group.ps1
Synopsis: Removes a group from the Cloud Server.
Description: Removes a group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove group with confirmation prompt (default behavior):
Remove-CloudGroup -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Group" on target "Group ID 3 (MyGroup)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove group without confirmation prompt:
Remove-CloudGroupAdmin
Source File: cloud-group.ps1
Synopsis: Removes a group admin from the Cloud Server.
Description: Removes a group admin. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| User | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove group admin with confirmation prompt (default behavior):
Remove-CloudGroupAdmin -ID 3 -User 12
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Group Admin" on target "Group ID 3 (MyGroup)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove group admin without confirmation prompt:
Remove-CloudHook
Source File: cloud-hook.ps1
Synopsis: Removes a hook from the Cloud Server.
Description: Removes a hook. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove hook with confirmation prompt (default behavior):
Remove-CloudHook -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Hook" on target "Hook ID 3 (MyHook)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove hook without confirmation prompt:
Remove-CloudImage
Source File: cloud-image.ps1
Synopsis: Removes an image from the Cloud Server.
Description: Removes an image. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove image with confirmation prompt (default behavior):
Remove-CloudImage -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Image" on target "Image ID 3 (MyImage)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove image without confirmation prompt:
Remove-CloudImageSnapshot
Source File: cloud-image.ps1
Synopsis: Deletes a snapshot from a Cloud image.
Description: Removes a specific snapshot from an image. This action cannot be undone.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ImageID | Int32 | True | ByPropertyName | - | - |
| SnapshotID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Delete snapshot 0 from image 50
Example 2 - Delete without confirmation
Remove-CloudMarket
Source File: cloud-market.ps1
Synopsis: Removes a market from the Cloud Server.
Description: Deletes a Market by ID. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove a market and prompt for confirmation
Example 2 - Remove a market and bypass the confirmation prompt
Remove-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Removes a market app from the Cloud Server.
Description: Removes a market app. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove market app with confirmation prompt (default behavior):
Remove-CloudMarketApp -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Market App" on target "App ID 3 (MyApp)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove image without confirmation prompt:
Remove-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Removes a network from the Cloud Server.
Description: Removes a network. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove network with confirmation prompt (default behavior):
Remove-CloudNetwork -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Network" on target "Network ID 3 (MyNetwork)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove network without confirmation prompt:
Remove-CloudNetworkAddressRange
Source File: cloud-network.ps1
Synopsis: Removes an address range from a virtual network.
Description: Deletes an address range from a network.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
RangeID |
Int32 | True | - | - | - |
Example(s)
Example 1 - Remove range 0 from network 5
Remove-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Removes a network template from the Cloud Server.
Description: Removes a network template. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove network template with confirmation prompt (default behavior):
Remove-CloudNetworkTemplate -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Network Template" on target "Network Template ID 3 (MyNetworkTemplate)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove network without confirmation prompt:
Remove-CloudRouter
Source File: cloud-router.ps1
Synopsis: Delete a router from the Cloud Server.
Description: Deletes the specified router. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove a virtual router
Example 2 - Remove a virtual router, bypassing the confirmation prompt
Example 3 - Preview deletion without actually removing
Remove-CloudRouterNIC
Source File: cloud-router.ps1
Synopsis: Removes a NIC from a virtual router.
Description: Detaches a network interface from a virtual router.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NICID | Int32 | True | - | - | - |
| RouterID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove NIC 0 from router 5
Example 2 - Remove without confirmation
Remove-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Removes a security group from the Cloud Server.
Description: Removes a security group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove security group with confirmation prompt (default behavior):
Remove-CloudSecurityGroup -ID 5
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Security Group" on target "Security group 5".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove security group without confirmation prompt:
Remove-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Removes a template from the Cloud Server.
Description: Removes a template. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove template with confirmation prompt (default behavior):
Remove-CloudTemplate -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Template" on target "Template ID 3 (MyTemplate)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove template without confirmation prompt:
Remove-CloudTenant
Source File: extra.ps1
Synopsis: Removes a tenant and all its resources.
Description: Removes all tenant resources in the correct order: 1. Networks 2. Users 3. Groups 4. ACLs (automatically cleaned up when groups are deleted)
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Force | SwitchParameter | False | - | - | - |
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Remove a tenant by name
Example 2 - Remove a tenant by name, bypassing confirmation prompt
Example 3 - Simulate the removal of a tenant
Remove-CloudUser
Source File: cloud-user.ps1
Synopsis: Removes a user from the Cloud Server.
Description: Removes a user. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove user with confirmation prompt (default behavior):
Remove-CloudUser -ID 3
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove User" on target "User ID 3 (MyUser)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove user without confirmation prompt:
Remove-CloudUserGroupMembership
Source File: cloud-user.ps1
Synopsis: Removes a user from a group on the Cloud Server.
Description: Removes a user from a group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| User | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove user from group with confirmation prompt (default behavior):
Remove-CloudUserGroupMembership -ID 102 -User 12
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove User" on target "User ID 3 (MyUser)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove user without confirmation prompt:
Remove-CloudVM
Source File: cloud-instance.ps1
Synopsis: Delete a VM from the Cloud Server.
Description: Deletes the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Example 3 - Preview deletion without actually removing
Remove-CloudVMDisk
Source File: cloud-instance.ps1
Synopsis: Removes a VM's disk from the Cloud Server.
Description: Removes a VM's disk. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | - | - | - |
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Remove VM's disk with confirmation prompt (default behavior):
Remove-CloudVMDisk -ID 5 -DiskID 1
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove VM Disk" on target "VM $ID Disk $DiskID".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove a VM's disk without confirmation prompt:
Remove-CloudVMDiskSnapshot
Source File: cloud-instance.ps1
Synopsis: Removes a VM's disk snapshot from the Cloud Server.
Description: Removes a VM's disk snapshot. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | ByPropertyName | - | - |
| SnapshotID | Int32 | True | ByPropertyName | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Remove specific snapshot
Example 2 - Remove snapshot from pipeline
Example 3 - Remove all snapshots for a VM (with confirmation for each)
Example 4 - Remove snapshot without confirmation prompt
Remove-CloudVMNIC
Source File: cloud-instance.ps1
Synopsis: Removes a VM's NIC from the Cloud Server.
Description: Removes a VM's NIC. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| NICID | Int32 | True | - | - | - |
Example(s)
Example 1 - Remove VM's NIC with confirmation prompt (default behavior):
Remove-CloudVMNIC -ID 5 -NICID 1
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove VM NIC" on target "VM $ID NIC $NICID".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove a VM's NIC without confirmation prompt:
Remove-CloudVMNICSecurityGroup
Source File: cloud-instance.ps1
Synopsis: Removes a security group from a VM on the Cloud Server.
Description: Removes a security group from a VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| NICID | Int32 | True | - | - | - |
Example(s)
Example 1 - Remove security groups from NIC 0 on VM 77 with confirmation prompt (default behavior):
Remove-CloudVMSecurityGroup -ID 77 -NIC 0
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Security Group 5" on target "VM 77".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2 - Remove security groups from NIC 0 on VM 77 without confirmation prompt:
Remove-CloudVMSchedule
Source File: cloud-instance.ps1
Synopsis: Removes a scheduled action from a Cloud VM instance.
Description: Deletes a scheduled action from a VM.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| ScheduleID | Int32 | True | - | - | - |
Example(s)
Example 1 - Remove schedule 0 from VM 80
Example 2 - Remove without confirmation
Remove-CloudVMSnapshot
Source File: cloud-instance.ps1
Synopsis: Removes a VM snapshot from the Cloud Server.
Description: Removes a VM snapshot. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Snapshot_ID | Int32 | True | ByPropertyName | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Remove snapshot with confirmation prompt (default behavior):
Remove-CloudVMSnapshot -VMID 3 -SnapshotID 1
Confirm
Are you sure you want to perform this action?
Performing the operation "Remove Snapshot" on target "Image ID 3 (MyImage)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2
Remove snapshot with confirmation prompt (default behavior) passing through the VM ID and snapshot ID:
Get-CloudVMSnapshot -VMID 3 -SnapshotID 1 | Remove-CloudVMSnapshot
Example 3
Remove snapshot without confirmation prompt:
Remove-CloudVMSnapshot -VMID 3 -SnapshotID 1 -Confirm:$false
Remove-CloudZone
Source File: cloud-zone.ps1
Synopsis: Deletes a zone from the Cloud Server.
Description: Permanently deletes a zone. This operation cannot be undone and will prompt for confirmation unless -Confirm:$false is specified.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByValue, ByPropertyName | - | - |
Example(s)
Example 1 - Delete a zone (will prompt for confirmation)
Example 2 - Delete without confirmation
Example 3 - Delete multiple zones
Remove-MetalDatastore
Source File: metal.ps1
Synopsis: Removes a datastore from the Cloud Server.
Description: Deletes a datastore by name. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Name | String | True | - | - | - |
Example(s)
Example 1 - Remove a datastore and prompt for confirmation
Example 2 - Remove a datastore and bypass the confirmation prompt
Rename-CloudDocument
Source File: cloud-document.ps1
Synopsis: Rename a document in the Cloud Server.
Description: Renames a document. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a document
Rename-CloudHook
Source File: cloud-hook.ps1
Synopsis: Rename a hook in the Cloud Server.
Description: Renames a hook. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a hook
Rename-CloudImage
Source File: cloud-image.ps1
Synopsis: Rename an image in the Cloud Server.
Description: Renames an image. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename cloud image with the ID 5 to "new-name"
Rename-CloudMarket
Source File: cloud-market.ps1
Synopsis: Rename a market in the Cloud Server.
Description: Rename a market. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a market app
Rename-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Rename a market app in the Cloud Server.
Description: Rename a market app. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a market app
Rename-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Rename a virtual network in the Cloud Server.
Description: Renames a virtual network. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a cloud network
Rename-CloudRouter
Source File: cloud-router.ps1
Synopsis: Rename a virtual router in the Cloud Server.
Description: Renames a virtual router. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a cloud router
Rename-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Renames a security group on Cloud Server.
Description: Renames a security group. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a security group
Rename-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Rename a virtual template in the Cloud Server.
Description: Renames a virtual template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename a template
Rename-CloudVMDiskSnapshot
Source File: cloud-instance.ps1
Synopsis: Renames a VM's disk snapshot from the Cloud Server.
Description: Renames a VM's disk snapshot. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | ByPropertyName | - | - |
| Name | String | True | - | - | - |
| SnapshotID | Int32 | True | ByPropertyName | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Rename specific snapshot
Example 2 - Rename snapshot from pipeline
Rename-CloudVMDiskSnapshot -VMID 77 | Where-Object SnapshotID -eq 1 | Rename-CloudVMDiskSnapshot -Name "New-snapshot"
Example 3 - Rename all snapshots for a VM (with confirmation and prompt for name name for each)
Example 4 - Rename snapshot without confirmation prompt
Rename-CloudZone
Source File: cloud-zone.ps1
Synopsis: Rename a zone in the Cloud Server.
Description: Renames a zone. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Name | String | True | - | - | - |
Example(s)
Example 1 - Rename cloud zone with the ID 5 to "new-name"
Rename-MetalDatastore
Source File: metal.ps1
Synopsis: Rename a datastore on the Cloud Server.
Description: Renames a datatore. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Name | String | True | - | - | - |
| NewName | String | True | - | - | - |
Example(s)
Example 1 - Rename datastore "OldName" to "new-name"
Repair-CloudTenantACLs
Source File: extra.ps1
Synopsis: Removes bad ACLs and recreates correct ones for a tenant.
Description: Deletes all existing ACLs for a tenant and recreates them correctly with proper group-owned resource selectors.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Repair the ACLs for TENANT1
Resize-CloudVM
Source File: cloud-instance.ps1
Synopsis: Resizes a cloud VM instance by changing its CPU, VCPU, and/or memory allocation.
Description: Changes the capacity of a running or stopped VM instance. Allows modification of CPU allocation, virtual CPU count, and memory size.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CPU | Decimal | False | - | - | - |
| EnforceCapacity | Boolean | False | - | - | $true |
| ID | Int32 | True | ByPropertyName | - | - |
| Memory | Int32 | False | - | - | - |
| VCPU | Int32 | False | - | - | - |
Example(s)
Example 1
Example 2
Resize-CloudVM -ID 68 -CPU 0.5 -VCPU 2 -Memory 6144
Resizes VM 68 with specific CPU allocation, 2 vCPUs, and 6GB memory
Example 3
Resize-CloudVM -ID 68 -Memory 4096 -EnforceCapacity $false
Resizes VM 68 memory to 4GB without enforcing capacity constraints
Resolve-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Recover a Network from the Cloud Server.
Description: Recover the specified Network. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Recover a network
Example 2 - Recover a network without a confirmation prompt
Example 3 - Simulate the recovery of a network
Resolve-CloudVM
Source File: cloud-instance.ps1
Synopsis: Recover a VM from the Cloud Server.
Description: Recover the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Example 3
Restart-CloudVM
Source File: cloud-instance.ps1
Synopsis: Restarts a VM from the Cloud Server.
Description: Restarts the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Force | SwitchParameter | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Example 3
Example 4
Restore-CloudImageSnapshot
Source File: cloud-image.ps1
Synopsis: Reverts an image to a previous snapshot.
Description: Reverts the image to the state captured in the specified snapshot. This will discard any changes made after the snapshot was taken.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ImageID | Int32 | True | ByPropertyName | - | - |
| SnapshotID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Revert image 50 to snapshot 0
Example 2 - Revert without confirmation
Restore-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Recovers a virtual network.
Description: Recovers a network from an error state.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Recover network 5
Restore-CloudVMDiskSnapshot
Source File: cloud-instance.ps1
Synopsis: Restores a VM's disk snapshot from the Cloud Server.
Description: Restores a VM's disk snapshot. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | ByPropertyName | - | - |
| SnapshotID | Int32 | True | - | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1 - Restore specific snapshot
Example 2 - Restore snapshot from pipeline
Example 3 - Restore all snapshots for a VM (with confirmation for each)
Example 4 - Restore snapshot without confirmation prompt
Restore-CloudVMSnapshot
Source File: cloud-instance.ps1
Synopsis: Reverts a VM snapshot from the Cloud Server.
Description: Reverts a VM snapshot. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Snapshot_ID | Int32 | True | ByPropertyName | - | - |
| VMID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Revert snapshot with confirmation prompt (default behavior):
Restore-CloudVMSnapshot -VMID 3 -SnapshotID 1
Confirm
Are you sure you want to perform this action?
Performing the operation "Revert Snapshot" on target "Image ID 3 (MyImage)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Example 2
Revert snapshot with confirmation prompt (default behavior) passing through the VM ID and snapshot ID:
Get-CloudVMSnapshot -VMID 3 -SnapshotID 1 | Restore-CloudVMSnapshot
Example 3
Revert snapshot without confirmation prompt:
Restore-CloudVMSnapshot -VMID 3 -SnapshotID 1 -Confirm:$false
Resume-CloudNetworkLease
Source File: cloud-network.ps1
Synopsis: Releases held leases on a virtual network.
Description: Releases reserved leases a network from hold state, making it available for use.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Release a range of IPs on network 5
$template = @"
LEASES = [ IP = "192.168.1.100" ]
LEASES = [ IP = "192.168.1.101" ]
LEASES = [ IP = "192.168.1.102" ]
"@
Resume-CloudNetworkLease -NetworkID 5 -Template $template
Save-CloudNetworkAddresses
Source File: cloud-network.ps1
Synopsis: Reserves addresses in a virtual network.
Description: Creates a reservation of network addresses.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Reserve a range of IPs on cloud network 5
$template = 'SIZE = "10" NAME = "Reserved-IPs"'
Save-CloudNetworkAddresses -NetworkID 5 -Name "SystemReserved" -Template $template
Set-CloudTenantResourceOwnership
Source File: extra.ps1
Synopsis: Changes ownership of tenant resources to the tenant admin user and group.
Description: Updates the ownership of networks, VMs, images, and templates to be owned by the tenant's admin user and admin group. This ensures ACLs work correctly.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ResourceType | String | False | - | Network, VM, Image, Template, All | 'All' |
| TenantName | String | True | - | - | - |
Example(s)
Example 1 - Update the required permissions for all tenant-owned resources
Example 2 - Update the required permissions for tenant-owned network resources
Example 3 - After creating a tenant, fix ownership
New-CloudTenant -TenantName "Acme" -AdminPassword "P@ss" -ClusterID 0
Set-CloudTenantResourceOwnership -TenantName "Acme"
Start-CloudVM
Source File: cloud-instance.ps1
Synopsis: Starts a VM from the Cloud Server.
Description: Starts the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Recover | SwitchParameter | False | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Stop-CloudVM
Source File: cloud-instance.ps1
Synopsis: Stops a VM from the Cloud Server.
Description: Stops the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Undeploy | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Stop VM 561
Example 2 - Power off the VM without confirmation
Example 3 - Simulates what would happen if you stop it
Example 4 - Stop and undeploy the VM
Suspend-CloudNetworkLease
Source File: cloud-network.ps1
Synopsis: Holds a virtual network lease as used.
Description: Marks specific IP addresses in a network as used/held, preventing them from being automatically assigned to new VMs.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Hold a specific IP address
$template = 'LEASES = [ IP = "192.168.1.50" ]'
Suspend-CloudNetwork -NetworkID 5 -Template $template
Example 2 - Hold a range of IPs
$template = @"
LEASES = [ IP = "192.168.1.100" ]
LEASES = [ IP = "192.168.1.101" ]
LEASES = [ IP = "192.168.1.102" ]
"@
Suspend-CloudNetworkLease -NetworkID 5 -Template $template
Example 3 - Hold by MAC address
$template = 'LEASES = [ MAC = "02:00:c0:a8:01:32" ]'
Suspend-CloudNetworkLease -NetworkID 5 -Template $template
Unlock-CloudDocument
Source File: cloud-document.ps1
Synopsis: Unlock a document in the Cloud Server.
Description: Unlock a document. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock a document
Unlock-CloudHook
Source File: cloud-hook.ps1
Synopsis: Unlock a hook in the Cloud Server.
Description: Unlock a hook. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock a hook
Unlock-CloudImage
Source File: cloud-image.ps1
Synopsis: Unlock an image in the Cloud Server.
Description: Unlock an image. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock image 5
Unlock-CloudInstance
Source File: cloud-instance.ps1
Synopsis: Unlock an instance in the Cloud Server.
Description: Unlock an instance. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1
Unlock-CloudInstanceGroup
Source File: cloud-instance.ps1
Synopsis: Unlock an instance group in the Cloud Server.
Description: Unlock an instance group. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1
Unlock-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Unlock a market app in the Cloud Server.
Description: Unlock a market app Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock cloud market app #5
Unlock-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Unlock a virtual network in the Cloud Server.
Description: Unlock a virtual network. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Unlock a cloud network
Example 2 - Unlock a cloud network using a pipeline input
Unlock-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Unlock a virtual network template in the Cloud Server.
Description: Unlock a virtual network template. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Test | SwitchParameter | False | - | - | - |
Example(s)
Example 1 - Unlock a network template
Example 2 - Unlock a network template using a pipeline input
Unlock-CloudRouter
Source File: cloud-router.ps1
Synopsis: Unlock a virtual router in the Cloud Server.
Description: Unlock a virtual router. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock a virtual router
Unlock-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Unlock a virtual template in the Cloud Server.
Description: Unlock a virtual template. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
Example(s)
Example 1 - Unlock a template
Update-CloudDocument
Source File: cloud-document.ps1
Synopsis: Updates a document on the Cloud Server.
Description: Creates a document object in OpenNebula. Documents are generic objects that can store arbitrary data in their template.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | String | True | - | - | - |
| Merge | SwitchParameter | False | - | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Update a document from a parameterized variable
$template = "NAME=`"MyDocument`"`nDESCRIPTION=`"Test document`"`nCUSTOM_DATA=`"Some value`""
Update-CloudDocument -ID 8 -Template $template
Example 2 - Update a document from a JSON array
$template = @"
NAME="config.json"
DESCRIPTION="Configuration file"
TYPE="file"
"@
Update-CloudDocument -ID 8 -Template $template
Update-CloudDocumentOwner
Source File: cloud-document.ps1
Synopsis: Updates the ownership of a document in the Cloud Server.
Description: Changes the user ad/or group ownership of a document. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Update a document's owner
Example 2 - Update a document's owner and group ownership
Example 3 - Update a document's owner and bypass confirmation prompt
Update-CloudDocumentPermissions
Source File: cloud-document.ps1
Synopsis: Updates the permissions of a document in the Cloud Server.
Description: Changes the permission of a document. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the document
Example 2 - Deny group admin permission to the document
Example 3 - Set multiple permissions at once
Update-CloudGroup
Source File: cloud-group.ps1
Synopsis: Updates a group on the Cloud Server.
Description: Updates a group's template. You can choose to merge with the existing template or replace it entirely. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Merge | SwitchParameter | False | - | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Update a group with a JSON variable, overwriting the current configuration
$template = @"
FIREEDGE = [
DEFAULT_VIEW = admin,
GROUP_ADMIN_DEFAULT_VIEW = admin
]
OPENNEBULA = [
DEFAULT_IMAGE_PERSISTENT = YES
]
"@
Update-CloudGroup -ID 102 -Template $template
Example 2 - Update a group, merging the new configuration with the existing values
Update-CloudGroupQuota
Source File: cloud-group.ps1
Synopsis: Updates the default group quota limits on the Cloud Server.
Description: Updates quota limits for the default group. You can update instance quotas, datastore quotas, and network quotas. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DatastoreQuota | Hashtable | False | - | - | - |
| InstanceQuota | Hashtable | False | - | - | - |
| NetworkQuota | Hashtable | False | - | - | - |
Example(s)
Example 1 - Update a group's quota
Update-CloudGroupQuota -InstanceQuota @{
cpu = 100
memory = 204800
running_cpu = 50
running_memory = 102400
running_instances = 10
system_disk_size = 1000000
instances = 20
}
Example 2 - Update only specific quota values
Update-CloudHook
Source File: cloud-hook.ps1
Synopsis: Updates a hook in the Cloud Server.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Low
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Merge | SwitchParameter | False | - | - | - |
| Template | String | True | ByValue | - | - |
Example(s)
Example 1 - Update a hook replacing the entire hook configuration (default behavior)
$template = @"
NAME="new-hook-name"
TYPE="api"
COMMAND="/usr/bin/logger"
ARGUMENTS="Test"
CALL="one.vm.allocate"
"@
Update-CloudHook -ID 17 -Template $template
Example 2 - Update a book merging the new configuration with the existing configuration
Update-CloudImage
Source File: cloud-image.ps1
Synopsis: Updates an image on the Cloud Server.
Description: Updates an image's template. You can choose to merge with the existing template or replace it entirely. Merge is enabled by default. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: Medium
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Merge | Boolean | False | - | - | $true |
| Template | String | True | ByValue | - | - |
Example(s)
Example 1 - Update image description (merge with existing)
$template = 'DESCRIPTION="Updated description for this image"'
Update-CloudImage -ID 123 -Template $template
Example 2 - Make an image persistent
Example 3 - Replace entire image template
$template = @"
NAME="Ubuntu-2204-Updated"
DESCRIPTION="Ubuntu 22.04 LTS Server"
TYPE="OS"
PERSISTENT="NO"
"@
Update-CloudImage -ID 123 -Template $template -Merge:$false
Example 4 - Update multiple attributes
$template = @"
DESCRIPTION="Production Web Server Image"
PERSISTENT="YES"
DEV_PREFIX="sd"
"@
Update-CloudImage -ID 456 -Template $template
Example 5 - Change image driver
Update-CloudImageOwner
Source File: cloud-image.ps1
Synopsis: Updates the ownership of an image in the Cloud Server.
Description: Changes the user and/or group ownership of an image. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Change the ownership of image 5 to user 2
Example 2 - Change the ownership of image 5 to user 2 and group 100
Example 3 - Change the ownership of image 5 to user 2 without confirmation
Update-CloudImagePermissions
Source File: cloud-image.ps1
Synopsis: Updates the permissions of an image in the Cloud Server.
Description: Changes the permission of an image. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the image
Example 2 - Deny group admin permission to the image
Example 3 - Set multiple permissions at once
Update-CloudImageType
Source File: cloud-image.ps1
Synopsis: Updates an image type on the Cloud Server.
Description: Updates an image type.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| Type | String | True | ByValue | - | - |
Example(s)
Example 1 - Change an image to the OS type
Example 2 - Change an image to the CDROM type
Example 3 - Change an image to the DATABLOCK type
Example 4 - Change an image to the CONTEXT type
Update-CloudInstanceConfig
Source File: cloud-instance.ps1
Synopsis: Updates the configuration of a cloud instance.
Description: Sends a PATCH request to update the instance configuration (CPU, memory, etc.). Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ConfigData | Hashtable | True | - | - | - |
| ID | Int32 | True | - | - | - |
Example(s)
Example 1
$configData = @{
cpu = 1.0
vcpu = 4
memory = 8192
}
Update-CloudInstanceConfig -ID 68 -ConfigData $configData
Example 2 - Update just CPU
Update-CloudInstanceGroupOwner
Source File: cloud-instance.ps1
Synopsis: Updates the ownership of an instance group in the Cloud Server.
Description: Changes the user and/or group ownership of an instance group. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Update-CloudInstanceGroupPermissions
Source File: cloud-instance.ps1
Synopsis: Updates the permissions of an instance group in the Cloud Server.
Description: Changes the permission of an instance group. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the instance
Example 2 - Deny group admin permission to the instance
Example 3 - Set multiple permissions at once
Update-CloudInstanceName
Source File: cloud-instance.ps1
Synopsis: Updates the nameof a cloud instance.
Description: Sends a PATCH request to update the instance name. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| NewName | String | True | - | - | - |
Example(s)
Example 1
Update-CloudInstanceOwner
Source File: cloud-instance.ps1
Synopsis: Updates the ownership of an instance in the Cloud Server.
Description: Changes the user and/or group ownership of an instance. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1
Example 2
Example 3
Update-CloudInstancePermissions
Source File: cloud-instance.ps1
Synopsis: Updates the permissions of an instance in the Cloud Server.
Description: Changes the permission of an instance. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the instance
Example 2 - Deny group admin permission to the instance
Example 3 - Set multiple permissions at once
Update-CloudInstanceTemplate
Source File: cloud-instance.ps1
Synopsis: Updates the template contents of a cloud instance.
Description: Sends a PATCH request to update the user template contents of an instance. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| TemplateData | Hashtable | True | - | - | - |
Example(s)
Example 1
$templateData = @{
merge = $true
template = "CPU=1.0`nMEMORY=8192"
}
Update-CloudInstanceTemplate -ID 123 -TemplateData $templateData
Example 2
$templateData = @{
merge = $false
template = "CPU=1.0"
}
Update-CloudInstanceTemplate -ID 561 -TemplateData $templateData
Update-CloudMarket
Source File: cloud-market.ps1
Synopsis: Updates an existing cloud market on the Cloud Server.
Description: Updates an existing cloud market configuration. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Description | String | False | - | - | - |
| Endpoint | String | False | - | - | - |
| Id | Int32 | True | - | - | - |
| Name | String | False | - | - | - |
| S3Bucket | String | False | - | - | - |
| S3Key | String | False | - | - | - |
| S3Region | String | False | - | - | - |
| S3Secret | String | False | - | - | - |
| Type | String | False | - | - | - |
Example(s)
Example 1 - Update the endpoint for an existing static market
Update-CloudMarket -ID 5 -Endpoint "https://USERNAME:PASSWORD@marketplace.softiron.cloud/community/metadata/"
Example 2 - Update S3 credentials for an existing S3 market
Update-CloudMarketApp
Source File: cloud-market.ps1
Synopsis: Updates an existing marketplace app on the Cloud Server.
Description: Updates an existing marketplace app configuration. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| AdditionalParams | Hashtable | False | - | - | - |
| Description | String | False | - | - | - |
| Format | String | False | - | - | - |
| Id | Int32 | True | - | - | - |
| Merge | Boolean | False | - | - | $true |
| Name | String | False | - | - | - |
| OriginId | String | False | - | - | - |
| Publisher | String | False | - | - | - |
| Type | String | False | - | - | - |
| Version | String | False | - | - | - |
Example(s)
Example 1 - Update the version and description of a marketplace app without merging
Update-CloudMarketApp -ID 5 -Version "22.04.1" -Description "Ubuntu 22.04.1 LTS Server" -Merge:$false
Example 2 - Update marketplace app with custom parameters, merging the new configuration with the existing one (default behavior)
Update-CloudMarketAppOwner
Source File: cloud-market.ps1
Synopsis: Updates the ownership of a market app in the Cloud Server.
Description: Changes the user and/or group ownership of a market app. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Update the owner of a market app
Example 2 - Update the user and group ownership of a market app
Example 3 - Update the user and group ownership of a market app, bypassing the confirmation prompt
Update-CloudMarketAppPermissions
Source File: cloud-market.ps1
Synopsis: Updates the permissions of a market app in the Cloud Server.
Description: Changes the permission of a market app. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the market app
Example 2 - Deny group admin permission on the market app
Example 3 - Set multiple permissions on a market app at once
Update-CloudMarketOwner
Source File: cloud-market.ps1
Synopsis: Updates the ownership of a market in the Cloud Server.
Description: Changes the user and/or group ownership of a market. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Update the owner of a market
Example 2 - Update the user and group ownership of a market
Example 3 - Update the user and group ownership of a market, bypassing the confirmation prompt
Update-CloudMarketPermissions
Source File: cloud-market.ps1
Synopsis: Updates the permissions of a market in the Cloud Server.
Description: Changes the permission of a market. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the market
Example 2 - Deny group admin permission to the market
Example 3 - Set multiple permissions at once on a market
Update-CloudNetwork
Source File: cloud-network.ps1
Synopsis: Updates a virtual network.
Description: Updates a virtual network's configuration.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Merge | Boolean | False | - | - | $true |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Update cloud network description
$template = 'DESCRIPTION = "Updated network description"'
Update-CloudNetwork -ID 5 -Template $template
Example 2 - Update cloud network 5 without merging
Example 3 - Update a network's MAC address range and description
$template = @"
DESCRIPTION = "Updated network with custom MAC range"
MAC_START = "02:00:c0:a8:00:01"
MAC_END = "02:00:c0:a8:00:FF"
"@
Update-CloudNetwork -ID 5 -Template $template -Verbose
Update-CloudNetworkAddressRange
Source File: cloud-network.ps1
Synopsis: Updates an address range in a virtual network.
Description: Modifies an existing address range in a virtual network.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Update a network range
$template = 'AR = [ AR_ID = "0", SIZE = "100" ]'
Update-CloudNetworkAddressRange -NetworkID 5 -Template $template
Update-CloudNetworkOwner
Source File: cloud-network.ps1
Synopsis: Updates the ownership of a network in the Cloud Server.
Description: Changes the user and/or group ownership of a network. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Change the owner of a network to a specific user
Example 2 - Change the owner of a network to a specific user and group
Example 3 - Change the owner of a network to a specific user, bypassing confirmation prompt
Update-CloudNetworkPermissions
Source File: cloud-network.ps1
Synopsis: Updates the permissions of a network in the Cloud Server.
Description: Changes the permission of a network. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the network
Example 2 - Deny group admin permission to the network
Example 3 - Set multiple permissions at once
Update-CloudNetworkTemplate
Source File: cloud-network.ps1
Synopsis: Updates a network template stored in the network.
Description: Updates the template configuration for a network.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| NetworkID | Int32 | True | ByPropertyName | - | - |
| Template | String | True | - | - | - |
Example(s)
Example 1 - Update a network template using a variable
$template = 'DESCRIPTION = "Production Network"'
Update-CloudNetworkTemplate -NetworkID 5 -Template $template
Update-CloudNetworkTemplateOwner
Source File: cloud-network.ps1
Synopsis: Updates the ownership of a network in the Cloud Server.
Description: Changes the user and/or group ownership of a network. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Set a network template's owner to a user
Example 2 - Set a network template's owner to a user and group
Example 3 - Set a network template's owner to a user, bypassing the confirmation prompt
Update-CloudNetworkTemplatePermissions
Source File: cloud-network.ps1
Synopsis: Updates the permissions of a network in the Cloud Server.
Description: Changes the permission of a network. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the network
Example 2 - Deny group admin permission to the network
Example 3 - Set multiple permissions at once
Update-CloudRouter
Source File: cloud-router.ps1
Synopsis: Updates a virtual router in the Cloud Server.
Description: Creates a virtual router. Automatically handles token refresh.
CmdletBinding: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Config | String | True | - | - | - |
| ID | Int32 | True | - | - | - |
| KeepalivedID | Int32 | False | - | - | - |
| KeepalivedPassword | String | False | - | - | - |
| Name | String | False | - | - | - |
Example(s)
Example 1 - Update a virtual router with individual parameters
Example 2 - Update a virtual router with a template variable
$router = @"
NAME="test-router"
KEEPALIVED_PASSWORD="mypassword"
KEEPALIVED_ID=100
"@
Update-CloudRouter -Config $routerdata -ID 4
Update-CloudRouterOwner
Source File: cloud-router.ps1
Synopsis: Updates the ownership of a router in the Cloud Server.
Description: Changes the user and/or group ownership of a router. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Change the ownership of a virtual router to a user
Example 2 - Change the ownership of a virtual router to a user and a group
Example 3 - Change the ownership of a virtual router to a user, bypassing the confirmation prompt
Update-CloudRouterPermissions
Source File: cloud-router.ps1
Synopsis: Updates the permissions of a router in the Cloud Server.
Description: Changes the permission of a router. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the router
Example 2 - Deny group admin permission to the router
Example 3 - Set multiple permissions at once
Update-CloudSecurityGroup
Source File: cloud-securitygroup.ps1
Synopsis: Updates a security group on the Cloud Server.
Description: Updates a security group's configuration including name, description, and rules. You can choose to merge with the existing configuration or replace it entirely. Merge is enabled by default. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Description | String | False | - | - | - |
| ID | Int32 | True | - | - | - |
| Merge | Boolean | False | - | - | $true |
| Name | String | False | - | - | - |
| Rules | Array |
False | - | - | - |
Example(s)
Example 1 - Update security group description
Example 2 - Add HTTP and HTTPS inbound rules
$rules = @(
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "80:80" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "443:443" }
)
Update-CloudSecurityGroup -ID 100 -Rules $rules
Example 3 - Allow all traffic from specific subnet
$rules = @(
@{ Protocol = "ALL"; RuleType = "INBOUND"; IP = "10.0.0.0"; Size = "24" }
)
Update-CloudSecurityGroup -ID 100 -Rules $rules
Example 4 - Replace entire security group configuration
$rules = @(
@{ Protocol = "ALL"; RuleType = "OUTBOUND" }
@{ Protocol = "TCP"; RuleType = "INBOUND"; Range = "22:22" }
)
Update-CloudSecurityGroup -ID 100 -Name "SSH-Only" -Description "SSH access only" -Rules $rules -Merge:$false
Example 5 - Allow ICMP ping
$rules = @(
@{ Protocol = "ICMP"; RuleType = "INBOUND"; IcmpType = "8" }
)
Update-CloudSecurityGroup -ID 100 -Rules $rules
Example 6 - Update without confirmation
Update-CloudSecurityGroupOwner
Source File: cloud-securitygroup.ps1
Synopsis: Updates the ownership of a security group in the Cloud Server.
Description: Changes the user and/or group ownership of a security group. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Change the ownership of a security group to a specific user
Example 2 - Change the ownership of a security group to a specific user and group
Example 3 - Change the ownership of a security group to a specific user, bypassing confirmation prompt
Update-CloudSecurityGroupPermissions
Source File: cloud-securitygroup.ps1
Synopsis: Updates the permissions of a security group in the Cloud Server.
Description: Changes the permission of a security group. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the security group
Example 2 - Deny group admin permission to the security group
Example 3 - Set multiple permissions at once
Update-CloudTemplate
Source File: cloud-template.ps1
Synopsis: Updates an existing VM template on the Cloud Server.
Description: Updates a VM template's configuration. You can choose to merge with the existing template or replace it entirely. Merge is enabled by default. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| CDROMID | Int32 | False | - | - | - |
| CPU | Double |
False | - | - | - |
| Description | String | False | - | - | - |
| EnableCloudInit | Boolean | False | - | - | - |
| EnableVNC | Boolean | False | - | - | - |
| ID | Int32 | True | - | - | - |
| ImageID | Int32 | False | - | - | - |
| Logo | String | False | - | - | - |
| Memory | Int32 | False | - | - | - |
| Merge | Boolean | False | - | - | $true |
| Name | String | False | - | - | - |
| NetworkID | Int32 | False | - | - | - |
| NetworkName | String | False | - | - | - |
| SecurityGroupIDs | String | False | - | - | - |
| SSHPublicKey | String | False | - | - | - |
| VCPU | Int32 | False | - | - | - |
Example(s)
Example 1 - Update template memory and CPU (merge with existing)
Example 2 - Update template name and description
Update-CloudTemplate -ID 123 -Name "Ubuntu-22.04-Production" -Description "Production web server template"
Example 3 - Add network to template
Example 4 - Replace entire template configuration
Update-CloudTemplate -ID 123 -Name "New-Template" -ImageID 57 -CPU 2 -VCPU 4 -Memory 8192 -Merge:$false
Example 5 - Add SSH key to template
Example 6 - Disable VNC on template
Update-CloudTemplateOwner
Source File: cloud-template.ps1
Synopsis: Updates the ownership of a template in the Cloud Server.
Description: Changes the user and/or group ownership of a template. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupID | Int32 | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| UserID | Int32 | True | - | - | - |
Example(s)
Example 1 - Change the ownership of a template to a specific user
Example 2 - Change the ownership of a template to a specific user and group
Example 3 - Change the ownership of a template to a specific user, bypassing the confirmation prompt
Update-CloudTemplatePermissions
Source File: cloud-template.ps1
Synopsis: Updates the permissions of a template in the Cloud Server.
Description: Changes the permission of a template. Prompts for confirmation.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| GroupAdmin | Boolean | False | - | - | - |
| GroupManage | Boolean | False | - | - | - |
| GroupUse | Boolean | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| OtherAdmin | Boolean | False | - | - | - |
| OtherManage | Boolean | False | - | - | - |
| OtherUse | Boolean | False | - | - | - |
| OwnerAdmin | Boolean | False | - | - | - |
| OwnerManage | Boolean | False | - | - | - |
| OwnerUse | Boolean | False | - | - | - |
Example(s)
Example 1 - Give group users permission to use the template
Example 2 - Deny group admin permission to the template
Example 3 - Set multiple permissions at once
Update-CloudUser
Source File: cloud-user.ps1
Synopsis: Updates a user on the Cloud Server.
Description: Updates a user's template. You can choose to merge with the existing template or replace it entirely. Merge is enabled by default. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Merge | Boolean | False | - | - | $true |
| Template | String | True | ByValue | - | - |
Example(s)
Example 1 - Update user's SSH public key (merge with existing)
$template = 'SSH_PUBLIC_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQAB... user@host"'
Update-CloudUser -ID 5 -Template $template
Example 2 - Update user's language preference
Example 3 - Update multiple user preferences
$template = @"
LANG="en"
SCHEME="light"
DISABLE_ANIMATIONS="true"
"@
Update-CloudUser -ID 5 -Template $template
Example 4 - Replace entire user template
$template = @"
LANG="en"
SCHEME="dark"
DISABLE_ANIMATIONS="false"
SSH_PUBLIC_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQAB... user@host"
"@
Update-CloudUser -ID 5 -Template $template -Merge:$false
Example 5 - Add custom user attributes
$template = @"
DEPARTMENT="IT"
COST_CENTER="12345"
MANAGER="John Doe"
"@
Update-CloudUser -ID 10 -Template $template
Update-CloudUserAuth
Source File: cloud-user.ps1
Synopsis: Changes the user's authentication driver and password on the Cloud Server.
Description: Changes the user's authentication driver and password. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| driver | String | True | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| Password | Object |
True | ByValue | - | - |
Example(s)
Example 1 - Updates the auth driver of user 12 to ldap and uses a previously defined variable to set the password
Example 2 - Updates the auth driver of 12 to core and sets the password to "Password123!", without confirmation
Example 3 - Pipe SecureString password through directly without storing in variable and update user's password and auth driver to ldap
Read-Host -AsSecureString -Prompt "Enter password" | Update-CloudUserAuth -ID 12 -Driver ldap -Confirm:$false
Example 4 - Prompt for the new user password for user 12, and set the password and driver to core without confirmation
$Password = Read-Host -AsSecureString -Prompt "Enter password"
Update-CloudUserAuth -id 12 -Password $Password -Driver core -Confirm:$false
Update-CloudUserGroupMembership
Source File: cloud-user.ps1
Synopsis: Changes the user's default group on the Cloud Server.
Description: Changes the user's default group. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | - | - | - |
| User | Int32 | True | - | - | - |
Example(s)
Example 1 - Updates the primary group of user 12 to group 104
Example 2 - Updates the primary group of user 12 to group 104 without confirmation
Update-CloudUserPassword
Source File: cloud-user.ps1
Synopsis: Changes the user's authentication driver and password on the Cloud Server.
Description: Changes the user's authentication driver and password. Automatically handles token refresh, clears value of $Password after running.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| ID | Int32 | True | ByPropertyName | - | - |
| Password | Object |
True | ByValue | - | - |
Example(s)
Example 1 - Updates the auth driver of user 12 to ldap
Example 2 - Updates the password of user 12 without confirmation
Example 3 - Pipe SecureString password through directly without storing in variable and update user's password
Read-Host -AsSecureString -Prompt "Enter password" | Update-CloudUserPassword -ID 12 -Driver ldap -Confirm:$false
Example 4 - Prompt for the new user password for user 12 and change it without confirmation
$Password = Read-Host -AsSecureString -Prompt "Enter password"
Update-CloudUserPassword -id 12 -Password $Password -Confirm:$false
Update-CloudUserQuota
Source File: cloud-user.ps1
Synopsis: Updates the user quota limits on the Cloud Server.
Description: Updates quota limits for the specified user. You can update instance quotas, datastore quotas, and network quotas. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DatastoreQuota | Hashtable | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| InstanceQuota | Hashtable | False | - | - | - |
| NetworkQuota | Hashtable | False | - | - | - |
Example(s)
Example 1 - Update the instance quota of a user
Update-CloudUserQuota -id 12 -InstanceQuota @{
cpu = 100
memory = 204800
running_cpu = 50
running_memory = 102400
running_instances = 10
system_disk_size = 1000000
instances = 20
}
Update-CloudVMDeployment
Source File: cloud-instance.ps1
Synopsis: Updates a VM from the Cloud Server.
Description: Updates the specified VM. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| HostID | Int32 | True | ByPropertyName | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
Example(s)
Example 1
Example 2
Example 3
Update-CloudVMDiskSize
Source File: cloud-instance.ps1
Synopsis: Resizes a VM's disk
Description: Resize a VM's disk. Automatically handles token refresh.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| DiskID | Int32 | True | ByPropertyName | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| Size | Int32 | True | - | - | - |
Example(s)
Example 1 - Resize disk 2 on VM 79 to 40960 MB
Example 2 - Resize disk 2 on VM 79 to 40960 MB without confirmation
Update-CloudVMSchedule
Source File: cloud-instance.ps1
Synopsis: Updates a scheduled action for a Cloud VM instance.
Description: Modifies an existing scheduled action for a VM.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Action | String | False | - | poweroff, poweroff-hard, resume, reboot, reboot-hard, snapshot, snapshot-revert, snapshot-delete, terminate, terminate-hard, undeploy, undeploy-hard | - |
| Args | String | False | - | - | - |
| Days | String | False | - | - | - |
| EndType | String | False | - | NONE, TIMES, DATE | - |
| EndValue | String | False | - | - | - |
| ID | Int32 | True | ByPropertyName | - | - |
| Repeat | Int32 | False | - | - | - |
| ScheduleID | Int32 | True | - | - | - |
| Time | String | False | - | - | - |
Example(s)
Example 1 - Update schedule 0 to run at a different time
Example 2 - Change action and repeat interval
Example 3 - Update without confirmation
Update-CloudZone
Source File: cloud-zone.ps1
Synopsis: Updates a zone on the Cloud Server.
Description: Updates a zone's configuration. You can choose to merge with the existing configuration or replace it entirely. Merge is enabled by default.
CmdletBinding: Yes | SupportsShouldProcess: Yes | ConfirmImpact: High
Parameters
| Parameter | Type | Mandatory | Pipeline | ValidateSet | Default |
|---|---|---|---|---|---|
| Endpoint | String | False | - | - | - |
| ID | Int32 | True | - | - | - |
| Merge | Boolean | False | - | - | $true |
| Name | String | False | - | - | - |
| Template | String | False | - | - | - |
Example(s)
Example 1 - Update zone endpoint
Example 2 - Update zone name
Example 3 - Replace entire zone configuration
$template = @"
NAME = NewZone
ENDPOINT = http://new-host:2633/RPC2
PROVISION_DRIVER = ec2
"@
Update-CloudZone -ID 0 -Template $template -Merge:$false
Example 4 - Update without confirmation