Nutanix.Networking.psd1
|
@{ # Module manifest for Nutanix Nutanix.Networking PowerShell module RootModule = 'Nutanix.Networking.dll' # Version number of this module. ModuleVersion = "1.0.0" # ID used to uniquely identify this module GUID = 'de1bd979-e54e-4a29-aa9c-132aa41e4627' # Author of this module Author = 'Nutanix' # Company or vendor of this module CompanyName = 'Nutanix' # Copyright statement for this module Copyright = '(c) Nutanix. All rights reserved.' # Description of the functionality provided by this module Description = 'Manage networking configuration on Nutanix clusters, including AHV and advanced networking.' # Minimum version of the Windows PowerShell engine required by this module PowerShellVersion = '7.0' # Minimum version of the common language runtime (CLR) required by this module CLRVersion = '4.0' # Processor architecture (None, X86, Amd64) required by this module ProcessorArchitecture = 'None' # Functions to export from this module FunctionsToExport = @() # Cmdlets to export from this module # Export all cmdlets - use wildcard to include all generated cmdlets # This includes cmdlets like Get-VmById, Set-VmById, etc. # Connection management: Set-PrismCentralConfig (alias: Set-PcConfig), Clear-NutanixConfig CmdletsToExport = @('*') # Variables to export from this module VariablesToExport = '*' # Aliases to export from this module AliasesToExport = @() # List of all modules packaged with this module ModuleList = @() # List of all files packaged with this module FileList = @('LICENSE.txt') # Private data to pass to the module specified in RootModule/ModuleToProcess PrivateData = @{ PSData = @{ # Tags applied to this module Tags = @('Nutanix', 'API', 'REST', 'Cloud', 'Nutanix.Networking') # A URL to the license for this module # LicenseUri = # A URL to the main website for this project ProjectUri = '' # A URL to an icon representing this module IconUri = 'https://www.nutanix.com/favicon-96x96.png' # ReleaseNotes of this module ReleaseNotes = @' # Nutanix Nutanix.Networking PowerShell Module v1.0.0 PowerShell module for managing Nutanix Nutanix.Networking resources using the Nutanix.Networking API. ### Features - **Resource Operations**: Create, read, update, delete, and list operations - **Device Management**: Manage various device types and configurations - **Lifecycle Operations**: Power management, migration, cloning, and more - **Dual Parameter Sets**: All cmdlets support both individual parameters and Request object patterns ### Quick Start 1. **Import the module**: ```powershell Import-Module Nutanix.Networking ``` 2. **Configure connection** (via Set-PrismCentralConfig or alias Set-PcConfig): ```powershell # Password is a mandatory SecureString parameter # If not provided, PowerShell will prompt for it securely # Option 1: Let PowerShell prompt (recommended for interactive use) Set-PcConfig -Host "10.46.8.20" -Username "admin" -SkipCertificateCheck # PowerShell prompts: Password: ******* # Option 2: Explicitly provide SecureString password $password = Read-Host -AsSecureString -Prompt "Enter Password" Set-PcConfig -Host "10.46.8.20" -Username "admin" -Password $password -SkipCertificateCheck # Option 3: From PSCredential $credential = Get-Credential -UserName "admin" Set-PcConfig -Host "10.46.8.20" -Username $credential.UserName -Password $credential.Password -SkipCertificateCheck ``` **Important:** Password is required. Without a valid password, API calls will fail with HTTP 401 Unauthorized. 3. **Use Nutanix.Networking cmdlets**: ```powershell # Example: List resources Get-* -Limit_ 10 # Example: Get resource by ID (Individual parameters) Get-*ById -ExtId "resource-uuid" # Example: Update resource (Individual parameters) Set-*ById -ExtId "resource-uuid" -Body $bodyObject -ETag "etag-value" # Example: Update resource (Request object) $request = New-Object Nutanix.Nutanix.NetworkingSDK.Model.Request.*.*Request $request.extId = "resource-uuid" $request.body = $bodyObject Set-*ById -Request $request -ETag "etag-value" ``` 4. **Clear configuration when done**: ```powershell Clear-NutanixConfig ``` ### Requirements - PowerShell 7.0 or higher - .NET 8.0 Runtime - Access to a Nutanix cluster with Nutanix.Networking API enabled ### Parameter Sets All cmdlets support two parameter sets: - **Individual**: Accepts individual parameters (e.g., `-ExtId`, `-Body`) - **Request**: Accepts a single Request object (e.g., `-Request`) This provides flexibility for different use cases and enables better integration with other PowerShell workflows. ### Connection Management - **Set-PrismCentralConfig** (or alias **Set-PcConfig**): Configure connection to Nutanix cluster - **Clear-NutanixConfig**: Clear stored connection configuration '@ # Prerelease string Prerelease = '' # External dependent modules of this module # Nutanix.Networking module is self-contained - connection management is handled via NutanixConfigBaseCmdlet ExternalModuleDependencies = @() } } # HelpInfo URI of this module HelpInfoURI = '' # Default prefix for commands exported from this module DefaultCommandPrefix = '' } |