diff --git a/swaggerci/vmware/.gitattributes b/swaggerci/vmware/.gitattributes
new file mode 100644
index 000000000000..2125666142eb
--- /dev/null
+++ b/swaggerci/vmware/.gitattributes
@@ -0,0 +1 @@
+* text=auto
\ No newline at end of file
diff --git a/swaggerci/vmware/.gitignore b/swaggerci/vmware/.gitignore
new file mode 100644
index 000000000000..7998f37e1e47
--- /dev/null
+++ b/swaggerci/vmware/.gitignore
@@ -0,0 +1,5 @@
+bin
+obj
+.vs
+tools
+test/*-TestResults.xml
\ No newline at end of file
diff --git a/swaggerci/vmware/Az.VMwareSolutionApi.csproj b/swaggerci/vmware/Az.VMwareSolutionApi.csproj
new file mode 100644
index 000000000000..223b051769aa
--- /dev/null
+++ b/swaggerci/vmware/Az.VMwareSolutionApi.csproj
@@ -0,0 +1,43 @@
+
+
+
+ 0.1.0
+ 7.1
+ netstandard2.0
+ Library
+ Az.VMwareSolutionApi.private
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi
+ true
+ false
+ ./bin
+ $(OutputPath)
+ Az.VMwareSolutionApi.nuspec
+ true
+
+ 1998
+ true
+
+
+
+
+ false
+ TRACE;DEBUG;NETSTANDARD
+
+
+
+ true
+ true
+ MSSharedLibKey.snk
+ TRACE;RELEASE;NETSTANDARD;SIGN
+
+
+
+
+
+
+
+
+ $(DefaultItemExcludes);resources/**
+
+
+
\ No newline at end of file
diff --git a/swaggerci/vmware/Az.VMwareSolutionApi.format.ps1xml b/swaggerci/vmware/Az.VMwareSolutionApi.format.ps1xml
new file mode 100644
index 000000000000..632e0ead8a28
--- /dev/null
+++ b/swaggerci/vmware/Az.VMwareSolutionApi.format.ps1xml
@@ -0,0 +1,3373 @@
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.VMwareSolutionApiIdentity
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.VMwareSolutionApiIdentity
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddonName
+
+
+ AuthorizationName
+
+
+ CloudLinkName
+
+
+ ClusterName
+
+
+ DatastoreName
+
+
+ DhcpId
+
+
+ DnsServiceId
+
+
+ DnsZoneId
+
+
+ GatewayId
+
+
+ GlobalReachConnectionName
+
+
+ HcxEnterpriseSiteName
+
+
+ Location
+
+
+ PortMirroringId
+
+
+ PrivateCloudName
+
+
+ PublicIPId
+
+
+ ResourceGroupName
+
+
+ ScriptCmdletName
+
+
+ ScriptExecutionName
+
+
+ ScriptPackageName
+
+
+ SegmentId
+
+
+ SubscriptionId
+
+
+ VMGroupId
+
+
+ VirtualMachineId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Addon
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Addon
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonHcxProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonHcxProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddonType
+
+
+ ProvisioningState
+
+
+ Offer
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddonType
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonSrmProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonSrmProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddonType
+
+
+ ProvisioningState
+
+
+ LicenseKey
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonVrProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AddonVrProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddonType
+
+
+ ProvisioningState
+
+
+ VrsCount
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AdminCredentials
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.AdminCredentials
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NsxtPassword
+
+
+ NsxtUsername
+
+
+ VcenterPassword
+
+
+ VcenterUsername
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Circuit
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Circuit
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ExpressRouteId
+
+
+ ExpressRoutePrivatePeeringId
+
+
+ PrimarySubnet
+
+
+ SecondarySubnet
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLink
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLink
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLinkList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLinkList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLinkProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CloudLinkProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LinkedCloud
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Cluster
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Cluster
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterId
+
+
+ ClusterSize
+
+
+ Host
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterUpdateProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ClusterUpdateProperties
+
+
+
+
+
+
+
+
+
+
+
+ ClusterSize
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CommonClusterProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.CommonClusterProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterId
+
+
+ ClusterSize
+
+
+ Host
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Datastore
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Datastore
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DatastoreList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DatastoreList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DatastoreProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DatastoreProperties
+
+
+
+
+
+
+
+
+
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DiskPoolVolume
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.DiskPoolVolume
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LunName
+
+
+ MountOption
+
+
+ Path
+
+
+ TargetId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Endpoints
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Endpoints
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ HcxCloudManager
+
+
+ NsxtManager
+
+
+ Vcsa
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorization
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorization
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorizationList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorizationList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorizationProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ExpressRouteAuthorizationProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ExpressRouteAuthorizationId
+
+
+ ExpressRouteAuthorizationKey
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnection
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnection
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnectionList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnectionList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnectionProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.GlobalReachConnectionProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AddressPrefix
+
+
+ AuthorizationKey
+
+
+ CircuitConnectionStatus
+
+
+ PeerExpressRouteCircuit
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSite
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSite
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSiteList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSiteList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSiteProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.HcxEnterpriseSiteProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ActivationKey
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IdentitySource
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IdentitySource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Alias
+
+
+ BaseGroupDn
+
+
+ BaseUserDn
+
+
+ Domain
+
+
+ Name
+
+
+ Password
+
+
+ PrimaryServer
+
+
+ SecondaryServer
+
+
+ Ssl
+
+
+ Username
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.LogSpecification
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.LogSpecification
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ BlobDuration
+
+
+ DisplayName
+
+
+ Name
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ManagementCluster
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ManagementCluster
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ClusterId
+
+
+ ClusterSize
+
+
+ Host
+
+
+ ProvisioningState
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.MetricDimension
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.MetricDimension
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ InternalName
+
+
+ Name
+
+
+ ToBeExportedForShoebox
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.MetricSpecification
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.MetricSpecification
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AggregationType
+
+
+ Category
+
+
+ DisplayDescription
+
+
+ DisplayName
+
+
+ EnableRegionalMdmAccount
+
+
+ FillGapWithZero
+
+
+ Name
+
+
+ SourceMdmAccount
+
+
+ SourceMdmNamespace
+
+
+ SupportedAggregationType
+
+
+ SupportedTimeGrainType
+
+
+ Unit
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Operation
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Operation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IsDataAction
+
+
+ Name
+
+
+ Origin
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.OperationDisplay
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.OperationDisplay
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Operation
+
+
+ Provider
+
+
+ Resource
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.OperationList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.OperationList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloud
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloud
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Location
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+ ManagementClusterHost
+
+
+ ManagementClusterId
+
+
+ ManagementClusterProvisioningState
+
+
+ ManagementClusterSize
+
+
+ ExternalCloudLink
+
+
+ ManagementNetwork
+
+
+ NetworkBlock
+
+
+ NsxtCertificateThumbprint
+
+
+ NsxtPassword
+
+
+ ProvisioningNetwork
+
+
+ ProvisioningState
+
+
+ VcenterCertificateThumbprint
+
+
+ VcenterPassword
+
+
+ VmotionNetwork
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudUpdateProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PrivateCloudUpdateProperties
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ProxyResource
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ProxyResource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PsCredentialExecutionParameter
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.PsCredentialExecutionParameter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+ Password
+
+
+ Username
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Quota
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Quota
+
+
+
+
+
+
+
+
+
+
+
+ Enabled
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.QuotaHostsRemaining
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.QuotaHostsRemaining
+
+
+
+
+
+
+
+
+
+
+
+ Item
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Resource
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Resource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ResourceTags
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ResourceTags
+
+
+
+
+
+
+
+
+
+
+
+ Item
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdlet
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdlet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdletProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdletProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Timeout
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdletsList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptCmdletsList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecution
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecution
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionParameter
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionParameter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Error
+
+
+ FailureReason
+
+
+ FinishedAt
+
+
+ Information
+
+
+ Output
+
+
+ ProvisioningState
+
+
+ Retention
+
+
+ ScriptCmdletId
+
+
+ StartedAt
+
+
+ SubmittedAt
+
+
+ Timeout
+
+
+ Warning
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionsList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptExecutionsList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackage
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackage
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackageProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackageProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Version
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackagesList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptPackagesList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptParameter
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptParameter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Name
+
+
+ Optional
+
+
+ Type
+
+
+ Visibility
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptSecureStringExecutionParameter
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptSecureStringExecutionParameter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+ SecureValue
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptStringExecutionParameter
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ScriptStringExecutionParameter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+ Value
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Sku
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Sku
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.TrackedResource
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.TrackedResource
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Trial
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.Trial
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AvailableHost
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcp
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcp
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpEntity
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpEntity
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DhcpType
+
+
+ DisplayName
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Segment
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpRelay
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpRelay
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DhcpType
+
+
+ DisplayName
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Segment
+
+
+ ServerAddress
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpServer
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDhcpServer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DhcpType
+
+
+ DisplayName
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Segment
+
+
+ LeaseTime
+
+
+ ServerAddress
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsService
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsService
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsServiceProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsServiceProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DefaultDnsZone
+
+
+ DisplayName
+
+
+ DnsServiceIP
+
+
+ FqdnZone
+
+
+ LogLevel
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsServicesList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsServicesList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZone
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZone
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZoneProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZoneProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ DnsServerIP
+
+
+ DnsService
+
+
+ Domain
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ SourceIP
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZonesList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkDnsZonesList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGateway
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGateway
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGatewayList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGatewayList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGatewayProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkGatewayProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ Path
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroring
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroring
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroringList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroringList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroringProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPortMirroringProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Destination
+
+
+ Direction
+
+
+ DisplayName
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Source
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIP
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIP
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIPProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIPProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ NumberOfPublicIP
+
+
+ ProvisioningState
+
+
+ PublicIPBlock
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIPsList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkPublicIPsList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegment
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegment
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentPortVif
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentPortVif
+
+
+
+
+
+
+
+
+
+
+
+ PortName
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ConnectedGateway
+
+
+ DisplayName
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentsList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentsList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentSubnet
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkSegmentSubnet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DhcpRange
+
+
+ GatewayAddress
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachine
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachine
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachineProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachineProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ VMType
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachinesList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVirtualMachinesList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroup
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroup
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroupProperties
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroupProperties
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DisplayName
+
+
+ Member
+
+
+ ProvisioningState
+
+
+ Revision
+
+
+ Status
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroupsList
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.WorkloadNetworkVMGroupsList
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api10.ErrorAdditionalInfo
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api10.ErrorAdditionalInfo
+
+
+
+
+
+
+
+
+
+
+
+ Type
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api10.ErrorResponse
+
+ Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api10.ErrorResponse
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Code
+
+
+ Message
+
+
+ Target
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/swaggerci/vmware/Az.VMwareSolutionApi.nuspec b/swaggerci/vmware/Az.VMwareSolutionApi.nuspec
new file mode 100644
index 000000000000..fce49ed67ec1
--- /dev/null
+++ b/swaggerci/vmware/Az.VMwareSolutionApi.nuspec
@@ -0,0 +1,32 @@
+
+
+
+ Az.VMwareSolutionApi
+ 0.1.0
+ Microsoft Corporation
+ Microsoft Corporation
+ true
+ https://aka.ms/azps-license
+ https://github.com/Azure/azure-powershell
+ Microsoft Azure PowerShell: $(service-name) cmdlets
+
+ Microsoft Corporation. All rights reserved.
+ Azure ResourceManager ARM PSModule $(service-name)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/swaggerci/vmware/Az.VMwareSolutionApi.psd1 b/swaggerci/vmware/Az.VMwareSolutionApi.psd1
new file mode 100644
index 000000000000..6a68d4341a2f
--- /dev/null
+++ b/swaggerci/vmware/Az.VMwareSolutionApi.psd1
@@ -0,0 +1,24 @@
+@{
+ GUID = 'a00cbd28-61b2-4180-a754-dda364b75b13'
+ RootModule = './Az.VMwareSolutionApi.psm1'
+ ModuleVersion = '0.1.0'
+ CompatiblePSEditions = 'Core', 'Desktop'
+ Author = 'Microsoft Corporation'
+ CompanyName = 'Microsoft Corporation'
+ Copyright = 'Microsoft Corporation. All rights reserved.'
+ Description = 'Microsoft Azure PowerShell: VMwareSolutionApi cmdlets'
+ PowerShellVersion = '5.1'
+ DotNetFrameworkVersion = '4.7.2'
+ RequiredAssemblies = './bin/Az.VMwareSolutionApi.private.dll'
+ FormatsToProcess = './Az.VMwareSolutionApi.format.ps1xml'
+ FunctionsToExport = 'Get-AzVMwareSolutionApiAddon', 'Get-AzVMwareSolutionApiAuthorization', 'Get-AzVMwareSolutionApiCloudLink', 'Get-AzVMwareSolutionApiCluster', 'Get-AzVMwareSolutionApiDatastore', 'Get-AzVMwareSolutionApiGlobalReachConnection', 'Get-AzVMwareSolutionApiHcxEnterpriseSite', 'Get-AzVMwareSolutionApiPrivateCloud', 'Get-AzVMwareSolutionApiPrivateCloudAdminCredentials', 'Get-AzVMwareSolutionApiScriptCmdlet', 'Get-AzVMwareSolutionApiScriptExecution', 'Get-AzVMwareSolutionApiScriptExecutionLog', 'Get-AzVMwareSolutionApiScriptPackage', 'Get-AzVMwareSolutionApiWorkloadNetworkDhcp', 'Get-AzVMwareSolutionApiWorkloadNetworkDnsService', 'Get-AzVMwareSolutionApiWorkloadNetworkDnsZone', 'Get-AzVMwareSolutionApiWorkloadNetworkGateway', 'Get-AzVMwareSolutionApiWorkloadNetworkPortMirroring', 'Get-AzVMwareSolutionApiWorkloadNetworkPublicIP', 'Get-AzVMwareSolutionApiWorkloadNetworkSegment', 'Get-AzVMwareSolutionApiWorkloadNetworkVirtualMachine', 'Get-AzVMwareSolutionApiWorkloadNetworkVMGroup', 'Invoke-AzVMwareSolutionApiRotatePrivateCloudNsxtPassword', 'Invoke-AzVMwareSolutionApiRotatePrivateCloudVcenterPassword', 'New-AzVMwareSolutionApiAddon', 'New-AzVMwareSolutionApiAuthorization', 'New-AzVMwareSolutionApiCloudLink', 'New-AzVMwareSolutionApiCluster', 'New-AzVMwareSolutionApiDatastore', 'New-AzVMwareSolutionApiGlobalReachConnection', 'New-AzVMwareSolutionApiHcxEnterpriseSite', 'New-AzVMwareSolutionApiPrivateCloud', 'New-AzVMwareSolutionApiScriptExecution', 'New-AzVMwareSolutionApiWorkloadNetworkDhcp', 'New-AzVMwareSolutionApiWorkloadNetworkDnsService', 'New-AzVMwareSolutionApiWorkloadNetworkDnsZone', 'New-AzVMwareSolutionApiWorkloadNetworkPortMirroring', 'New-AzVMwareSolutionApiWorkloadNetworkPublicIP', 'New-AzVMwareSolutionApiWorkloadNetworkSegment', 'New-AzVMwareSolutionApiWorkloadNetworkVMGroup', 'Remove-AzVMwareSolutionApiAddon', 'Remove-AzVMwareSolutionApiAuthorization', 'Remove-AzVMwareSolutionApiCloudLink', 'Remove-AzVMwareSolutionApiCluster', 'Remove-AzVMwareSolutionApiDatastore', 'Remove-AzVMwareSolutionApiGlobalReachConnection', 'Remove-AzVMwareSolutionApiHcxEnterpriseSite', 'Remove-AzVMwareSolutionApiPrivateCloud', 'Remove-AzVMwareSolutionApiScriptExecution', 'Remove-AzVMwareSolutionApiWorkloadNetworkDhcp', 'Remove-AzVMwareSolutionApiWorkloadNetworkDnsService', 'Remove-AzVMwareSolutionApiWorkloadNetworkDnsZone', 'Remove-AzVMwareSolutionApiWorkloadNetworkPortMirroring', 'Remove-AzVMwareSolutionApiWorkloadNetworkPublicIP', 'Remove-AzVMwareSolutionApiWorkloadNetworkSegment', 'Remove-AzVMwareSolutionApiWorkloadNetworkVMGroup', 'Test-AzVMwareSolutionApiLocationQuotaAvailability', 'Test-AzVMwareSolutionApiLocationTrialAvailability', 'Update-AzVMwareSolutionApiCluster', 'Update-AzVMwareSolutionApiPrivateCloud', 'Update-AzVMwareSolutionApiWorkloadNetworkDhcp', 'Update-AzVMwareSolutionApiWorkloadNetworkDnsService', 'Update-AzVMwareSolutionApiWorkloadNetworkDnsZone', 'Update-AzVMwareSolutionApiWorkloadNetworkPortMirroring', 'Update-AzVMwareSolutionApiWorkloadNetworkSegment', 'Update-AzVMwareSolutionApiWorkloadNetworkVMGroup', '*'
+ AliasesToExport = '*'
+ PrivateData = @{
+ PSData = @{
+ Tags = 'Azure', 'ResourceManager', 'ARM', 'PSModule', 'VMwareSolutionApi'
+ LicenseUri = 'https://aka.ms/azps-license'
+ ProjectUri = 'https://github.com/Azure/azure-powershell'
+ ReleaseNotes = ''
+ }
+ }
+}
diff --git a/swaggerci/vmware/Az.VMwareSolutionApi.psm1 b/swaggerci/vmware/Az.VMwareSolutionApi.psm1
new file mode 100644
index 000000000000..814e4b0acf5c
--- /dev/null
+++ b/swaggerci/vmware/Az.VMwareSolutionApi.psm1
@@ -0,0 +1,109 @@
+# region Generated
+ # ----------------------------------------------------------------------------------
+ #
+ # Copyright Microsoft Corporation
+ # Licensed under the Apache License, Version 2.0 (the "License");
+ # you may not use this file except in compliance with the License.
+ # You may obtain a copy of the License at
+ # http://www.apache.org/licenses/LICENSE-2.0
+ # Unless required by applicable law or agreed to in writing, software
+ # distributed under the License is distributed on an "AS IS" BASIS,
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ # ----------------------------------------------------------------------------------
+ # Load required Az.Accounts module
+ $accountsName = 'Az.Accounts'
+ $accountsModule = Get-Module -Name $accountsName
+ if(-not $accountsModule) {
+ $localAccountsPath = Join-Path $PSScriptRoot 'generated/modules'
+ if(Test-Path -Path $localAccountsPath) {
+ $localAccounts = Get-ChildItem -Path $localAccountsPath -Recurse -Include 'Az.Accounts.psd1' | Select-Object -Last 1
+ if($localAccounts) {
+ $accountsModule = Import-Module -Name ($localAccounts.FullName) -Scope Global -PassThru
+ }
+ }
+ if(-not $accountsModule) {
+ $hasAdequateVersion = (Get-Module -Name $accountsName -ListAvailable | Where-Object { $_.Version -ge [System.Version]'2.2.3' } | Measure-Object).Count -gt 0
+ if($hasAdequateVersion) {
+ $accountsModule = Import-Module -Name $accountsName -MinimumVersion 2.2.3 -Scope Global -PassThru
+ }
+ }
+ }
+
+ if(-not $accountsModule) {
+ Write-Error "`nThis module requires $accountsName version 2.2.3 or greater. For installation instructions, please see: https://docs.microsoft.com/en-us/powershell/azure/install-az-ps" -ErrorAction Stop
+ } elseif (($accountsModule.Version -lt [System.Version]'2.2.3') -and (-not $localAccounts)) {
+ Write-Error "`nThis module requires $accountsName version 2.2.3 or greater. An earlier version of Az.Accounts is imported in the current PowerShell session. If you are running test, please try to add the switch '-RegenerateSupportModule' when executing 'test-module.ps1'. Otherwise please open a new PowerShell session and import this module again.`nAdditionally, this error could indicate that multiple incompatible versions of Azure PowerShell modules are installed on your system. For troubleshooting information, please see: https://aka.ms/azps-version-error" -ErrorAction Stop
+ }
+ Write-Information "Loaded Module '$($accountsModule.Name)'"
+
+ # Load the private module dll
+ $null = Import-Module -Name (Join-Path $PSScriptRoot './bin/Az.VMwareSolutionApi.private.dll')
+
+ # Get the private module's instance
+ $instance = [Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Module]::Instance
+
+ # Ask for the shared functionality table
+ $VTable = Register-AzModule
+
+ # Tweaks the pipeline on module load
+ $instance.OnModuleLoad = $VTable.OnModuleLoad
+
+ # Tweaks the pipeline per call
+ $instance.OnNewRequest = $VTable.OnNewRequest
+
+ # Gets shared parameter values
+ $instance.GetParameterValue = $VTable.GetParameterValue
+
+ # Allows shared module to listen to events from this module
+ $instance.EventListener = $VTable.EventListener
+
+ # Gets shared argument completers
+ $instance.ArgumentCompleter = $VTable.ArgumentCompleter
+
+ # The name of the currently selected Azure profile
+ $instance.ProfileName = $VTable.ProfileName
+
+
+ # Load the custom module
+ $customModulePath = Join-Path $PSScriptRoot './custom/Az.VMwareSolutionApi.custom.psm1'
+ if(Test-Path $customModulePath) {
+ $null = Import-Module -Name $customModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export proxy cmdlet scripts
+ $exportsPath = Join-Path $PSScriptRoot './exports'
+ $directories = Get-ChildItem -Directory -Path $exportsPath
+ $profileDirectory = $null
+ if($instance.ProfileName) {
+ if(($directories | ForEach-Object { $_.Name }) -contains $instance.ProfileName) {
+ $profileDirectory = $directories | Where-Object { $_.Name -eq $instance.ProfileName }
+ } else {
+ # Don't export anything if the profile doesn't exist for the module
+ $exportsPath = $null
+ Write-Warning "Selected Azure profile '$($instance.ProfileName)' does not exist for module '$($instance.Name)'. No cmdlets were loaded."
+ }
+ } elseif(($directories | Measure-Object).Count -gt 0) {
+ # Load the last folder if no profile is selected
+ $profileDirectory = $directories | Select-Object -Last 1
+ }
+
+ if($profileDirectory) {
+ Write-Information "Loaded Azure profile '$($profileDirectory.Name)' for module '$($instance.Name)'"
+ $exportsPath = $profileDirectory.FullName
+ }
+
+ if($exportsPath) {
+ Get-ChildItem -Path $exportsPath -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ $cmdletNames = Get-ScriptCmdlet -ScriptFolder $exportsPath
+ Export-ModuleMember -Function $cmdletNames -Alias (Get-ScriptCmdlet -ScriptFolder $exportsPath -AsAlias)
+ }
+
+ # Finalize initialization of this module
+ $instance.Init();
+ Write-Information "Loaded Module '$($instance.Name)'"
+# endregion
diff --git a/swaggerci/vmware/MSSharedLibKey.snk b/swaggerci/vmware/MSSharedLibKey.snk
new file mode 100644
index 000000000000..695f1b38774e
Binary files /dev/null and b/swaggerci/vmware/MSSharedLibKey.snk differ
diff --git a/swaggerci/vmware/build-module.ps1 b/swaggerci/vmware/build-module.ps1
new file mode 100644
index 000000000000..968ff4370a82
--- /dev/null
+++ b/swaggerci/vmware/build-module.ps1
@@ -0,0 +1,160 @@
+# ----------------------------------------------------------------------------------
+#
+# Copyright Microsoft Corporation
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ----------------------------------------------------------------------------------
+param([switch]$Isolated, [switch]$Run, [switch]$Test, [switch]$Docs, [switch]$Pack, [switch]$Code, [switch]$Release, [switch]$Debugger, [switch]$NoDocs)
+$ErrorActionPreference = 'Stop'
+
+if($PSEdition -ne 'Core') {
+ Write-Error 'This script requires PowerShell Core to execute. [Note] Generated cmdlets will work in both PowerShell Core or Windows PowerShell.'
+}
+
+if(-not $Isolated -and -not $Debugger) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -Isolated
+
+ if($LastExitCode -ne 0) {
+ # Build failed. Don't attempt to run the module.
+ return
+ }
+
+ if($Test) {
+ . (Join-Path $PSScriptRoot 'test-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Tests failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Docs) {
+ . (Join-Path $PSScriptRoot 'generate-help.ps1')
+ if($LastExitCode -ne 0) {
+ # Docs generation failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Pack) {
+ . (Join-Path $PSScriptRoot 'pack-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Packing failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ $runModulePath = Join-Path $PSScriptRoot 'run-module.ps1'
+ if($Code) {
+ . $runModulePath -Code
+ } elseif($Run) {
+ . $runModulePath
+ } else {
+ Write-Host -ForegroundColor Cyan "To run this module in an isolated PowerShell session, run the 'run-module.ps1' script or provide the '-Run' parameter to this script."
+ }
+ return
+}
+
+$binFolder = Join-Path $PSScriptRoot 'bin'
+$objFolder = Join-Path $PSScriptRoot 'obj'
+
+if(-not $Debugger) {
+ Write-Host -ForegroundColor Green 'Cleaning build folders...'
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path $binFolder, $objFolder
+
+ if((Test-Path $binFolder) -or (Test-Path $objFolder)) {
+ Write-Host -ForegroundColor Cyan 'Did you forget to exit your isolated module session before rebuilding?'
+ Write-Error 'Unable to clean ''bin'' or ''obj'' folder. A process may have an open handle.'
+ }
+
+ Write-Host -ForegroundColor Green 'Compiling module...'
+ $buildConfig = 'Debug'
+ if($Release) {
+ $buildConfig = 'Release'
+ }
+ dotnet publish $PSScriptRoot --verbosity quiet --configuration $buildConfig /nologo
+ if($LastExitCode -ne 0) {
+ Write-Error 'Compilation failed.'
+ }
+
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path (Join-Path $binFolder 'Debug'), (Join-Path $binFolder 'Release')
+}
+
+$dll = Join-Path $PSScriptRoot 'bin/Az.VMwareSolutionApi.private.dll'
+if(-not (Test-Path $dll)) {
+ Write-Error "Unable to find output assembly in '$binFolder'."
+}
+
+# Load DLL to use build-time cmdlets
+$null = Import-Module -Name $dll
+
+$modulePaths = $dll
+$customPsm1 = Join-Path $PSScriptRoot 'custom/Az.VMwareSolutionApi.custom.psm1'
+if(Test-Path $customPsm1) {
+ $modulePaths = @($dll, $customPsm1)
+}
+
+$exportsFolder = Join-Path $PSScriptRoot 'exports'
+if(Test-Path $exportsFolder) {
+ $null = Get-ChildItem -Path $exportsFolder -Recurse -Exclude 'readme.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $exportsFolder
+
+$internalFolder = Join-Path $PSScriptRoot 'internal'
+if(Test-Path $internalFolder) {
+ $null = Get-ChildItem -Path $internalFolder -Recurse -Exclude '*.psm1', 'readme.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $internalFolder
+
+$psd1 = Join-Path $PSScriptRoot './Az.VMwareSolutionApi.psd1'
+$guid = Get-ModuleGuid -Psd1Path $psd1
+$moduleName = 'Az.VMwareSolutionApi'
+$examplesFolder = Join-Path $PSScriptRoot 'examples'
+$null = New-Item -ItemType Directory -Force -Path $examplesFolder
+
+Write-Host -ForegroundColor Green 'Creating cmdlets for specified models...'
+$modelCmdlets = @()
+if ($modelCmdlets.Count -gt 0) {
+ . (Join-Path $PSScriptRoot 'create-model-cmdlets.ps1')
+ CreateModelCmdlet($modelCmdlets)
+}
+
+if($NoDocs) {
+ Write-Host -ForegroundColor Green 'Creating exports...'
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ExcludeDocs -ExamplesFolder $examplesFolder
+} else {
+ Write-Host -ForegroundColor Green 'Creating exports and docs...'
+ $moduleDescription = 'Microsoft Azure PowerShell: VMwareSolutionApi cmdlets'
+ $docsFolder = Join-Path $PSScriptRoot 'docs'
+ if(Test-Path $docsFolder) {
+ $null = Get-ChildItem -Path $docsFolder -Recurse -Exclude 'readme.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+ }
+ $null = New-Item -ItemType Directory -Force -Path $docsFolder
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ModuleDescription $moduleDescription -DocsFolder $docsFolder -ExamplesFolder $examplesFolder -ModuleGuid $guid
+}
+
+Write-Host -ForegroundColor Green 'Creating format.ps1xml...'
+$formatPs1xml = Join-Path $PSScriptRoot './Az.VMwareSolutionApi.format.ps1xml'
+Export-FormatPs1xml -FilePath $formatPs1xml
+
+Write-Host -ForegroundColor Green 'Creating psd1...'
+$customFolder = Join-Path $PSScriptRoot 'custom'
+Export-Psd1 -ExportsFolder $exportsFolder -CustomFolder $customFolder -Psd1Path $psd1 -ModuleGuid $guid
+
+Write-Host -ForegroundColor Green 'Creating test stubs...'
+$testFolder = Join-Path $PSScriptRoot 'test'
+$null = New-Item -ItemType Directory -Force -Path $testFolder
+Export-TestStub -ModuleName $moduleName -ExportsFolder $exportsFolder -OutputFolder $testFolder
+
+Write-Host -ForegroundColor Green 'Creating example stubs...'
+Export-ExampleStub -ExportsFolder $exportsFolder -OutputFolder $examplesFolder
+
+Write-Host -ForegroundColor Green '-------------Done-------------'
diff --git a/swaggerci/vmware/check-dependencies.ps1 b/swaggerci/vmware/check-dependencies.ps1
new file mode 100644
index 000000000000..92eb39c798af
--- /dev/null
+++ b/swaggerci/vmware/check-dependencies.ps1
@@ -0,0 +1,64 @@
+# ----------------------------------------------------------------------------------
+#
+# Copyright Microsoft Corporation
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ----------------------------------------------------------------------------------
+param([switch]$Isolated, [switch]$Accounts, [switch]$Pester, [switch]$Resources)
+$ErrorActionPreference = 'Stop'
+
+if(-not $Isolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NoExit -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -Isolated
+ return
+}
+
+function DownloadModule ([bool]$predicate, [string]$path, [string]$moduleName, [string]$versionMinimum, [string]$requiredVersion) {
+ if($predicate) {
+ $module = Get-Module -ListAvailable -Name $moduleName
+ if((-not $module) -or ($versionMinimum -and ($module | ForEach-Object { $_.Version } | Where-Object { $_ -ge [System.Version]$versionMinimum } | Measure-Object).Count -eq 0)) {
+ $null = New-Item -ItemType Directory -Force -Path $path
+ Write-Host -ForegroundColor Green "Installing local $moduleName module into '$path'..."
+ if ($requiredVersion) {
+ Find-Module -Name $moduleName -RequiredVersion $requiredVersion -Repository PSGallery | Save-Module -Path $path
+ }elseif($versionMinimum) {
+ Find-Module -Name $moduleName -MinimumVersion $versionMinimum -Repository PSGallery | Save-Module -Path $path
+ } else {
+ Find-Module -Name $moduleName -Repository PSGallery | Save-Module -Path $path
+ }
+ }
+ }
+}
+
+$ProgressPreference = 'SilentlyContinue'
+$all = (@($Accounts.IsPresent, $Pester.IsPresent) | Select-Object -Unique | Measure-Object).Count -eq 1
+
+$localModulesPath = Join-Path $PSScriptRoot 'generated/modules'
+if(Test-Path -Path $localModulesPath) {
+ $env:PSModulePath = "$localModulesPath$([IO.Path]::PathSeparator)$env:PSModulePath"
+}
+
+DownloadModule -predicate ($all -or $Accounts) -path $localModulesPath -moduleName 'Az.Accounts' -versionMinimum '2.2.3'
+DownloadModule -predicate ($all -or $Pester) -path $localModulesPath -moduleName 'Pester' -requiredVersion '4.10.1'
+
+$tools = Join-Path $PSScriptRoot 'tools'
+$resourceDir = Join-Path $tools 'Resources'
+$resourceModule = Join-Path $HOME '.PSSharedModules\Resources\Az.Resources.TestSupport.psm1'
+
+if ($Resources.IsPresent -and ((-not (Test-Path -Path $resourceModule)) -or $RegenerateSupportModule.IsPresent)) {
+ Write-Host -ForegroundColor Green "Building local Resource module used for test..."
+ Set-Location $resourceDir
+ $null = autorest .\readme.md --use:@autorest/powershell@3.0.414 --output-folder=$HOME/.PSSharedModules/Resources
+ $null = Copy-Item custom/* $HOME/.PSSharedModules/Resources/custom/
+ Set-Location $HOME/.PSSharedModules/Resources
+ $null = .\build-module.ps1
+ Set-Location $PSScriptRoot
+}
diff --git a/swaggerci/vmware/create-model-cmdlets.ps1 b/swaggerci/vmware/create-model-cmdlets.ps1
new file mode 100644
index 000000000000..82b289565cb5
--- /dev/null
+++ b/swaggerci/vmware/create-model-cmdlets.ps1
@@ -0,0 +1,168 @@
+# ----------------------------------------------------------------------------------
+#
+# Copyright Microsoft Corporation
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ----------------------------------------------------------------------------------
+
+function CreateModelCmdlet {
+
+ param([string[]]$Models)
+
+ if ($Models.Count -eq 0)
+ {
+ return
+ }
+
+ $ModelCsPath = Join-Path (Join-Path $PSScriptRoot 'generated/api') 'Models'
+ $ModuleName = 'Az.VMwareSolutionApi'.Split(".")[1]
+ $OutputDir = Join-Path $PSScriptRoot 'custom/autogen-model-cmdlets'
+ $null = New-Item -ItemType Directory -Force -Path $OutputDir
+
+ $CsFiles = Get-ChildItem -Path $ModelCsPath -Recurse -Filter *.cs
+ $Content = ''
+ $null = $CsFiles | ForEach-Object -Process { if ($_.Name.Split('.').count -eq 2 )
+ { $Content += get-content $_.fullname -raw
+ } }
+
+ $Tree = [Microsoft.CodeAnalysis.CSharp.SyntaxFactory]::ParseCompilationUnit($Content)
+ $Nodes = $Tree.ChildNodes().ChildNodes()
+ foreach ($Model in $Models)
+ {
+ $InterfaceNode = $Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq "I$Model") }
+ if ($InterfaceNode.count -eq 0) {
+ continue
+ }
+ # through a queue, we iterate all the parent models.
+ $Queue = @($InterfaceNode)
+ $visited = @("I$Model")
+ $AllInterfaceNodes = @()
+ while ($Queue.count -ne 0)
+ {
+ $AllInterfaceNodes += $Queue[0]
+ # Baselist contains the direct parent models.
+ foreach ($parent in $Queue[0].BaseList.Types)
+ {
+ if (($parent.Type.Right.Identifier.Value -ne 'IJsonSerializable') -and (-not $visited.Contains($parent.Type.Right.Identifier.Value)))
+ {
+ $Queue = [Array]$Queue + ($Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq $parent.Type.Right.Identifier.Value) })
+ $visited = [Array]$visited + $parent.Type.Right.Identifier.Value
+ }
+ }
+ $first, $Queue = $Queue
+ }
+
+ $Namespace = $InterfaceNode.Parent.Name
+ $ObjectType = $Model
+ $ObjectTypeWithNamespace = "${Namespace}.${ObjectType}"
+ # remove duplicated module name
+ if ($ObjectType.StartsWith($ModuleName)) {
+ $ModulePrefix = ''
+ } else {
+ $ModulePrefix = $ModuleName
+ }
+ $OutputPath = Join-Path -ChildPath "New-Az${ModulePrefix}${ObjectType}Object.ps1" -Path $OutputDir
+
+ $ParameterDefineScriptList = New-Object System.Collections.Generic.List[string]
+ $ParameterAssignScriptList = New-Object System.Collections.Generic.List[string]
+ foreach ($Node in $AllInterfaceNodes)
+ {
+ foreach ($Member in $Node.Members)
+ {
+ $Arguments = $Member.AttributeLists.Attributes.ArgumentList.Arguments
+ $Required = $false
+ $Description = ""
+ $Readonly = $False
+ foreach ($Argument in $Arguments)
+ {
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Required")
+ {
+ $Required = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Description")
+ {
+ $Description = $Argument.Expression.Token.Value.Trim('.').replace('"', '`"')
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Readonly")
+ {
+ $Readonly = $Argument.Expression.Token.Value
+ }
+ }
+ if ($Readonly)
+ {
+ continue
+ }
+ $Identifier = $Member.Identifier.Value
+ $Type = $Member.Type.ToString().replace('?', '').Split("::")[-1]
+ $ParameterDefinePropertyList = New-Object System.Collections.Generic.List[string]
+ if ($Required)
+ {
+ $ParameterDefinePropertyList.Add("Mandatory")
+ }
+ if ($Description -ne "")
+ {
+ $ParameterDefinePropertyList.Add("HelpMessage=`"${Description}.`"")
+ }
+ $ParameterDefineProperty = [System.String]::Join(", ", $ParameterDefinePropertyList)
+ $ParameterDefineScript = "
+ [Parameter($ParameterDefineProperty)]
+ [${Type}]
+ `$${Identifier}"
+ $ParameterDefineScriptList.Add($ParameterDefineScript)
+ $ParameterAssignScriptList.Add("
+ `$Object.${Identifier} = `$${Identifier}")
+ }
+ }
+ $ParameterDefineScript = $ParameterDefineScriptList | Join-String -Separator ","
+ $ParameterAssignScript = $ParameterAssignScriptList | Join-String -Separator ""
+
+ $Script = "
+ # ----------------------------------------------------------------------------------
+ #
+ # Copyright Microsoft Corporation
+ # Licensed under the Apache License, Version 2.0 (the \`"License\`");
+ # you may not use this file except in compliance with the License.
+ # You may obtain a copy of the License at
+ # http://www.apache.org/licenses/LICENSE-2.0
+ # Unless required by applicable law or agreed to in writing, software
+ # distributed under the License is distributed on an \`"AS IS\`" BASIS,
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ # See the License for the specific language governing permissions and
+ # limitations under the License.
+ # ----------------------------------------------------------------------------------
+
+ <#
+ .Synopsis
+ Create a in-memory object for ${ObjectType}
+ .Description
+ Create a in-memory object for ${ObjectType}
+
+ .Outputs
+ ${ObjectTypeWithNamespace}
+ .Link
+ https://docs.microsoft.com/en-us/powershell/module/az.${ModuleName}/new-Az${ModulePrefix}${ObjectType}Object
+ #>
+ function New-Az${ModulePrefix}${ObjectType}Object {
+ [OutputType('${ObjectTypeWithNamespace}')]
+ [CmdletBinding(PositionalBinding=`$false)]
+ Param(
+ ${ParameterDefineScript}
+ )
+
+ process {
+ `$Object = [${ObjectTypeWithNamespace}]::New()
+ ${ParameterAssignScript}
+ return `$Object
+ }
+ }
+ "
+ Set-Content -Path $OutputPath -Value $Script
+ }
+}
\ No newline at end of file
diff --git a/swaggerci/vmware/custom/Az.VMwareSolutionApi.custom.psm1 b/swaggerci/vmware/custom/Az.VMwareSolutionApi.custom.psm1
new file mode 100644
index 000000000000..06ac28bc0f37
--- /dev/null
+++ b/swaggerci/vmware/custom/Az.VMwareSolutionApi.custom.psm1
@@ -0,0 +1,17 @@
+# region Generated
+ # Load the private module dll
+ $null = Import-Module -PassThru -Name (Join-Path $PSScriptRoot '../bin/Az.VMwareSolutionApi.private.dll')
+
+ # Load the internal module
+ $internalModulePath = Join-Path $PSScriptRoot '../internal/Az.VMwareSolutionApi.internal.psm1'
+ if(Test-Path $internalModulePath) {
+ $null = Import-Module -Name $internalModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export script cmdlets
+ Get-ChildItem -Path $PSScriptRoot -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ Export-ModuleMember -Function (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot) -Alias (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot -AsAlias)
+# endregion
diff --git a/swaggerci/vmware/custom/readme.md b/swaggerci/vmware/custom/readme.md
new file mode 100644
index 000000000000..533885f14e91
--- /dev/null
+++ b/swaggerci/vmware/custom/readme.md
@@ -0,0 +1,41 @@
+# Custom
+This directory contains custom implementation for non-generated cmdlets for the `Az.VMwareSolutionApi` module. Both scripts (`.ps1`) and C# files (`.cs`) can be implemented here. They will be used during the build process in `build-module.ps1`, and create cmdlets into the `../exports` folder. The only generated file into this folder is the `Az.VMwareSolutionApi.custom.psm1`. This file should not be modified.
+
+## Info
+- Modifiable: yes
+- Generated: partial
+- Committed: yes
+- Packaged: yes
+
+## Details
+For `Az.VMwareSolutionApi` to use custom cmdlets, it does this two different ways. We **highly recommend** creating script cmdlets, as they are easier to write and allow access to the other exported cmdlets. C# cmdlets *cannot access exported cmdlets*.
+
+For C# cmdlets, they are compiled with the rest of the generated low-level cmdlets into the `./bin/Az.VMwareSolutionApi.private.dll`. The names of the cmdlets (methods) and files must follow the `[cmdletName]_[variantName]` syntax used for generated cmdlets. The `variantName` is used as the `ParameterSetName`, so use something appropriate that doesn't clash with already created variant or parameter set names. You cannot use the `ParameterSetName` property in the `Parameter` attribute on C# cmdlets. Each cmdlet must be separated into variants using the same pattern as seen in the `generated/cmdlets` folder.
+
+For script cmdlets, these are loaded via the `Az.VMwareSolutionApi.custom.psm1`. Then, during the build process, this module is loaded and processed in the same manner as the C# cmdlets. The fundemental difference is the script cmdlets use the `ParameterSetName` attribute and C# cmdlets do not. To create a script cmdlet variant of a generated cmdlet, simply decorate all parameters in the script with the new `ParameterSetName` in the `Parameter` attribute. This will appropriately treat each parameter set as a separate variant when processed to be exported during the build.
+
+## Purpose
+This allows the modules to have cmdlets that were not defined in the REST specification. It also allows combining logic using generated cmdlets. This is a level of customization beyond what can be done using the [readme configuration options](https://github.com/Azure/autorest/blob/master/docs/powershell/options.md) that are currently available. These custom cmdlets are then referenced by the cmdlets created at build-time in the `../exports` folder.
+
+## Usage
+The easiest way currently to start developing custom cmdlets is to copy an existing cmdlet. For C# cmdlets, copy one from the `generated/cmdlets` folder. For script cmdlets, build the project using `build-module.ps1` and copy one of the scripts from the `../exports` folder. After that, if you want to add new parameter sets, follow the guidelines in the `Details` section above. For implementing a new cmdlets, at minimum, please keep these parameters:
+- Break
+- DefaultProfile
+- HttpPipelineAppend
+- HttpPipelinePrepend
+- Proxy
+- ProxyCredential
+- ProxyUseDefaultCredentials
+
+These provide functionality to our HTTP pipeline and other useful features. In script, you can forward these parameters using `$PSBoundParameters` to the other cmdlets you're calling within `Az.VMwareSolutionApi`. For C#, follow the usage seen in the `ProcessRecordAsync` method.
+
+### Attributes
+For processing the cmdlets, we've created some additional attributes:
+- `Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.DescriptionAttribute`
+ - Used in C# cmdlets to provide a high-level description of the cmdlet. This is propegated to reference documentation via [help comments](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_comment_based_help) in the exported scripts.
+- `Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.DoNotExportAttribute`
+ - Used in C# and script cmdlets to suppress creating an exported cmdlet at build-time. These cmdlets will *not be exposed* by `Az.VMwareSolutionApi`.
+- `Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.InternalExportAttribute`
+ - Used in C# cmdlets to route exported cmdlets to the `../internal`, which are *not exposed* by `Az.VMwareSolutionApi`. For more information, see [readme.md](../internal/readme.md) in the `../internal` folder.
+- `Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.ProfileAttribute`
+ - Used in C# and script cmdlets to define which Azure profiles the cmdlet supports. This is only supported for Azure (`--azure`) modules.
\ No newline at end of file
diff --git a/swaggerci/vmware/docs/Az.VMwareSolutionApi.md b/swaggerci/vmware/docs/Az.VMwareSolutionApi.md
new file mode 100644
index 000000000000..fa6a86ef6c77
--- /dev/null
+++ b/swaggerci/vmware/docs/Az.VMwareSolutionApi.md
@@ -0,0 +1,211 @@
+---
+Module Name: Az.VMwareSolutionApi
+Module Guid: a00cbd28-61b2-4180-a754-dda364b75b13
+Download Help Link: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi
+Help Version: 1.0.0.0
+Locale: en-US
+---
+
+# Az.VMwareSolutionApi Module
+## Description
+Microsoft Azure PowerShell: VMwareSolutionApi cmdlets
+
+## Az.VMwareSolutionApi Cmdlets
+### [Get-AzVMwareSolutionApiAddon](Get-AzVMwareSolutionApiAddon.md)
+Get an addon by name in a private cloud
+
+### [Get-AzVMwareSolutionApiAuthorization](Get-AzVMwareSolutionApiAuthorization.md)
+Get an ExpressRoute Circuit Authorization by name in a private cloud
+
+### [Get-AzVMwareSolutionApiCloudLink](Get-AzVMwareSolutionApiCloudLink.md)
+Get an cloud link by name in a private cloud
+
+### [Get-AzVMwareSolutionApiCluster](Get-AzVMwareSolutionApiCluster.md)
+Get a cluster by name in a private cloud
+
+### [Get-AzVMwareSolutionApiDatastore](Get-AzVMwareSolutionApiDatastore.md)
+Get a datastore in a private cloud cluster
+
+### [Get-AzVMwareSolutionApiGlobalReachConnection](Get-AzVMwareSolutionApiGlobalReachConnection.md)
+Get a global reach connection by name in a private cloud
+
+### [Get-AzVMwareSolutionApiHcxEnterpriseSite](Get-AzVMwareSolutionApiHcxEnterpriseSite.md)
+Get an HCX Enterprise Site by name in a private cloud
+
+### [Get-AzVMwareSolutionApiPrivateCloud](Get-AzVMwareSolutionApiPrivateCloud.md)
+Get a private cloud
+
+### [Get-AzVMwareSolutionApiPrivateCloudAdminCredentials](Get-AzVMwareSolutionApiPrivateCloudAdminCredentials.md)
+List the admin credentials for the private cloud
+
+### [Get-AzVMwareSolutionApiScriptCmdlet](Get-AzVMwareSolutionApiScriptCmdlet.md)
+Return information about a script cmdlet resource in a specific package on a private cloud
+
+### [Get-AzVMwareSolutionApiScriptExecution](Get-AzVMwareSolutionApiScriptExecution.md)
+Get an script execution resource by name in a private cloud
+
+### [Get-AzVMwareSolutionApiScriptExecutionLog](Get-AzVMwareSolutionApiScriptExecutionLog.md)
+Return the logs for a script execution resource
+
+### [Get-AzVMwareSolutionApiScriptPackage](Get-AzVMwareSolutionApiScriptPackage.md)
+Return script package available to run on an Private Cloud
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkDhcp](Get-AzVMwareSolutionApiWorkloadNetworkDhcp.md)
+Get dhcp by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkDnsService](Get-AzVMwareSolutionApiWorkloadNetworkDnsService.md)
+Get a DNS service by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkDnsZone](Get-AzVMwareSolutionApiWorkloadNetworkDnsZone.md)
+Get a DNS zone by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkGateway](Get-AzVMwareSolutionApiWorkloadNetworkGateway.md)
+Get a gateway by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkPortMirroring](Get-AzVMwareSolutionApiWorkloadNetworkPortMirroring.md)
+Get a port mirroring profile by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkPublicIP](Get-AzVMwareSolutionApiWorkloadNetworkPublicIP.md)
+Get a Public IP Block by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkSegment](Get-AzVMwareSolutionApiWorkloadNetworkSegment.md)
+Get a segment by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkVirtualMachine](Get-AzVMwareSolutionApiWorkloadNetworkVirtualMachine.md)
+Get a virtual machine by id in a private cloud workload network.
+
+### [Get-AzVMwareSolutionApiWorkloadNetworkVMGroup](Get-AzVMwareSolutionApiWorkloadNetworkVMGroup.md)
+Get a vm group by id in a private cloud workload network.
+
+### [Invoke-AzVMwareSolutionApiRotatePrivateCloudNsxtPassword](Invoke-AzVMwareSolutionApiRotatePrivateCloudNsxtPassword.md)
+Rotate the NSX-T Manager password
+
+### [Invoke-AzVMwareSolutionApiRotatePrivateCloudVcenterPassword](Invoke-AzVMwareSolutionApiRotatePrivateCloudVcenterPassword.md)
+Rotate the vCenter password
+
+### [New-AzVMwareSolutionApiAddon](New-AzVMwareSolutionApiAddon.md)
+Create or update a addon in a private cloud
+
+### [New-AzVMwareSolutionApiAuthorization](New-AzVMwareSolutionApiAuthorization.md)
+Create or update an ExpressRoute Circuit Authorization in a private cloud
+
+### [New-AzVMwareSolutionApiCloudLink](New-AzVMwareSolutionApiCloudLink.md)
+Create or update a cloud link in a private cloud
+
+### [New-AzVMwareSolutionApiCluster](New-AzVMwareSolutionApiCluster.md)
+Create or update a cluster in a private cloud
+
+### [New-AzVMwareSolutionApiDatastore](New-AzVMwareSolutionApiDatastore.md)
+Create or update a datastore in a private cloud cluster
+
+### [New-AzVMwareSolutionApiGlobalReachConnection](New-AzVMwareSolutionApiGlobalReachConnection.md)
+Create or update a global reach connection in a private cloud
+
+### [New-AzVMwareSolutionApiHcxEnterpriseSite](New-AzVMwareSolutionApiHcxEnterpriseSite.md)
+Create or update an HCX Enterprise Site in a private cloud
+
+### [New-AzVMwareSolutionApiPrivateCloud](New-AzVMwareSolutionApiPrivateCloud.md)
+Create or update a private cloud
+
+### [New-AzVMwareSolutionApiScriptExecution](New-AzVMwareSolutionApiScriptExecution.md)
+Create or update a script execution resource in a private cloud
+
+### [New-AzVMwareSolutionApiWorkloadNetworkDhcp](New-AzVMwareSolutionApiWorkloadNetworkDhcp.md)
+Create dhcp by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkDnsService](New-AzVMwareSolutionApiWorkloadNetworkDnsService.md)
+Create a DNS service by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkDnsZone](New-AzVMwareSolutionApiWorkloadNetworkDnsZone.md)
+Create a DNS zone by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkPortMirroring](New-AzVMwareSolutionApiWorkloadNetworkPortMirroring.md)
+Create a port mirroring profile by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkPublicIP](New-AzVMwareSolutionApiWorkloadNetworkPublicIP.md)
+Create a Public IP Block by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkSegment](New-AzVMwareSolutionApiWorkloadNetworkSegment.md)
+Create a segment by id in a private cloud workload network.
+
+### [New-AzVMwareSolutionApiWorkloadNetworkVMGroup](New-AzVMwareSolutionApiWorkloadNetworkVMGroup.md)
+Create a vm group by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiAddon](Remove-AzVMwareSolutionApiAddon.md)
+Delete a addon in a private cloud
+
+### [Remove-AzVMwareSolutionApiAuthorization](Remove-AzVMwareSolutionApiAuthorization.md)
+Delete an ExpressRoute Circuit Authorization in a private cloud
+
+### [Remove-AzVMwareSolutionApiCloudLink](Remove-AzVMwareSolutionApiCloudLink.md)
+Delete a cloud link in a private cloud
+
+### [Remove-AzVMwareSolutionApiCluster](Remove-AzVMwareSolutionApiCluster.md)
+Delete a cluster in a private cloud
+
+### [Remove-AzVMwareSolutionApiDatastore](Remove-AzVMwareSolutionApiDatastore.md)
+Delete a datastore in a private cloud cluster
+
+### [Remove-AzVMwareSolutionApiGlobalReachConnection](Remove-AzVMwareSolutionApiGlobalReachConnection.md)
+Delete a global reach connection in a private cloud
+
+### [Remove-AzVMwareSolutionApiHcxEnterpriseSite](Remove-AzVMwareSolutionApiHcxEnterpriseSite.md)
+Delete an HCX Enterprise Site in a private cloud
+
+### [Remove-AzVMwareSolutionApiPrivateCloud](Remove-AzVMwareSolutionApiPrivateCloud.md)
+Delete a private cloud
+
+### [Remove-AzVMwareSolutionApiScriptExecution](Remove-AzVMwareSolutionApiScriptExecution.md)
+Cancel a ScriptExecution in a private cloud
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkDhcp](Remove-AzVMwareSolutionApiWorkloadNetworkDhcp.md)
+Delete dhcp by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkDnsService](Remove-AzVMwareSolutionApiWorkloadNetworkDnsService.md)
+Delete a DNS service by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkDnsZone](Remove-AzVMwareSolutionApiWorkloadNetworkDnsZone.md)
+Delete a DNS zone by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkPortMirroring](Remove-AzVMwareSolutionApiWorkloadNetworkPortMirroring.md)
+Delete a port mirroring profile by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkPublicIP](Remove-AzVMwareSolutionApiWorkloadNetworkPublicIP.md)
+Delete a Public IP Block by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkSegment](Remove-AzVMwareSolutionApiWorkloadNetworkSegment.md)
+Delete a segment by id in a private cloud workload network.
+
+### [Remove-AzVMwareSolutionApiWorkloadNetworkVMGroup](Remove-AzVMwareSolutionApiWorkloadNetworkVMGroup.md)
+Delete a vm group by id in a private cloud workload network.
+
+### [Test-AzVMwareSolutionApiLocationQuotaAvailability](Test-AzVMwareSolutionApiLocationQuotaAvailability.md)
+Return quota for subscription by region
+
+### [Test-AzVMwareSolutionApiLocationTrialAvailability](Test-AzVMwareSolutionApiLocationTrialAvailability.md)
+Return trial status for subscription by region
+
+### [Update-AzVMwareSolutionApiCluster](Update-AzVMwareSolutionApiCluster.md)
+Update a cluster in a private cloud
+
+### [Update-AzVMwareSolutionApiPrivateCloud](Update-AzVMwareSolutionApiPrivateCloud.md)
+Update a private cloud
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkDhcp](Update-AzVMwareSolutionApiWorkloadNetworkDhcp.md)
+Create or update dhcp by id in a private cloud workload network.
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkDnsService](Update-AzVMwareSolutionApiWorkloadNetworkDnsService.md)
+Create or update a DNS service by id in a private cloud workload network.
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkDnsZone](Update-AzVMwareSolutionApiWorkloadNetworkDnsZone.md)
+Create or update a DNS zone by id in a private cloud workload network.
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkPortMirroring](Update-AzVMwareSolutionApiWorkloadNetworkPortMirroring.md)
+Create or update a port mirroring profile by id in a private cloud workload network.
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkSegment](Update-AzVMwareSolutionApiWorkloadNetworkSegment.md)
+Create or update a segment by id in a private cloud workload network.
+
+### [Update-AzVMwareSolutionApiWorkloadNetworkVMGroup](Update-AzVMwareSolutionApiWorkloadNetworkVMGroup.md)
+Create or update a vm group by id in a private cloud workload network.
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAddon.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAddon.md
new file mode 100644
index 000000000000..a38c01352b6e
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAddon.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapiaddon
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiAddon
+
+## SYNOPSIS
+Get an addon by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiAddon -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiAddon -Name -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiAddon -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get an addon by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the addon for the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: AddonName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IAddon
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAuthorization.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAuthorization.md
new file mode 100644
index 000000000000..15f41fad9940
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiAuthorization.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapiauthorization
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiAuthorization
+
+## SYNOPSIS
+Get an ExpressRoute Circuit Authorization by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiAuthorization -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiAuthorization -Name -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiAuthorization -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get an ExpressRoute Circuit Authorization by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the ExpressRoute Circuit Authorization in the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: AuthorizationName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IExpressRouteAuthorization
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCloudLink.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCloudLink.md
new file mode 100644
index 000000000000..51a46aa0611e
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCloudLink.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapicloudlink
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiCloudLink
+
+## SYNOPSIS
+Get an cloud link by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiCloudLink -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiCloudLink -Name -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiCloudLink -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get an cloud link by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the cloud link resource
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: CloudLinkName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ICloudLink
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCluster.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCluster.md
new file mode 100644
index 000000000000..d47eae320bc4
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiCluster.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapicluster
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiCluster
+
+## SYNOPSIS
+Get a cluster by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiCluster -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiCluster -Name -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiCluster -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get a cluster by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the cluster in the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: ClusterName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.ICluster
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiDatastore.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiDatastore.md
new file mode 100644
index 000000000000..a9c69f9cd0f7
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiDatastore.md
@@ -0,0 +1,212 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapidatastore
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiDatastore
+
+## SYNOPSIS
+Get a datastore in a private cloud cluster
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiDatastore -ClusterName -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiDatastore -ClusterName -Name -PrivateCloudName
+ -ResourceGroupName [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiDatastore -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get a datastore in a private cloud cluster
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -ClusterName
+Name of the cluster in the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the datastore in the private cloud cluster
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: DatastoreName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IDatastore
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiGlobalReachConnection.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiGlobalReachConnection.md
new file mode 100644
index 000000000000..78e80193f748
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiGlobalReachConnection.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapiglobalreachconnection
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiGlobalReachConnection
+
+## SYNOPSIS
+Get a global reach connection by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiGlobalReachConnection -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiGlobalReachConnection -Name -PrivateCloudName
+ -ResourceGroupName [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiGlobalReachConnection -InputObject
+ [-DefaultProfile ] []
+```
+
+## DESCRIPTION
+Get a global reach connection by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the global reach connection in the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: GlobalReachConnectionName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IGlobalReachConnection
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName ]`: Name of the cluster in the private cloud
+ - `[DatastoreName ]`: Name of the datastore in the private cloud cluster
+ - `[DhcpId ]`: NSX DHCP identifier. Generally the same as the DHCP display name
+ - `[DnsServiceId ]`: NSX DNS Service identifier. Generally the same as the DNS Service's display name
+ - `[DnsZoneId ]`: NSX DNS Zone identifier. Generally the same as the DNS Zone's display name
+ - `[GatewayId ]`: NSX Gateway identifier. Generally the same as the Gateway's display name
+ - `[GlobalReachConnectionName ]`: Name of the global reach connection in the private cloud
+ - `[HcxEnterpriseSiteName ]`: Name of the HCX Enterprise Site in the private cloud
+ - `[Id ]`: Resource identity path
+ - `[Location ]`: Azure region
+ - `[PortMirroringId ]`: NSX Port Mirroring identifier. Generally the same as the Port Mirroring display name
+ - `[PrivateCloudName ]`: Name of the private cloud
+ - `[PublicIPId ]`: NSX Public IP Block identifier. Generally the same as the Public IP Block's display name
+ - `[ResourceGroupName ]`: The name of the resource group. The name is case insensitive.
+ - `[ScriptCmdletName ]`: Name of the script cmdlet resource in the script package in the private cloud
+ - `[ScriptExecutionName ]`: Name of the user-invoked script execution resource
+ - `[ScriptPackageName ]`: Name of the script package in the private cloud
+ - `[SegmentId ]`: NSX Segment identifier. Generally the same as the Segment's display name
+ - `[SubscriptionId ]`: The ID of the target subscription.
+ - `[VMGroupId ]`: NSX VM Group identifier. Generally the same as the VM Group's display name
+ - `[VirtualMachineId ]`: Virtual Machine identifier
+
+## RELATED LINKS
+
diff --git a/swaggerci/vmware/docs/Get-AzVMwareSolutionApiHcxEnterpriseSite.md b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiHcxEnterpriseSite.md
new file mode 100644
index 000000000000..e4d544e9e64e
--- /dev/null
+++ b/swaggerci/vmware/docs/Get-AzVMwareSolutionApiHcxEnterpriseSite.md
@@ -0,0 +1,197 @@
+---
+external help file:
+Module Name: Az.VMwareSolutionApi
+online version: https://docs.microsoft.com/en-us/powershell/module/az.vmwaresolutionapi/get-azvmwaresolutionapihcxenterprisesite
+schema: 2.0.0
+---
+
+# Get-AzVMwareSolutionApiHcxEnterpriseSite
+
+## SYNOPSIS
+Get an HCX Enterprise Site by name in a private cloud
+
+## SYNTAX
+
+### List (Default)
+```
+Get-AzVMwareSolutionApiHcxEnterpriseSite -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### Get
+```
+Get-AzVMwareSolutionApiHcxEnterpriseSite -Name -PrivateCloudName -ResourceGroupName
+ [-SubscriptionId ] [-DefaultProfile ] []
+```
+
+### GetViaIdentity
+```
+Get-AzVMwareSolutionApiHcxEnterpriseSite -InputObject
+ [-DefaultProfile ] []
+```
+
+## DESCRIPTION
+Get an HCX Enterprise Site by name in a private cloud
+
+## EXAMPLES
+
+### Example 1: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+### Example 2: {{ Add title here }}
+```powershell
+PS C:\> {{ Add code here }}
+
+{{ Add output here }}
+```
+
+{{ Add description here }}
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: System.Management.Automation.PSObject
+Parameter Sets: (All)
+Aliases: AzureRMContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+Identity Parameter
+To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
+
+```yaml
+Type: Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+Parameter Sets: GetViaIdentity
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+Name of the HCX Enterprise Site in the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get
+Aliases: HcxEnterpriseSiteName
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PrivateCloudName
+Name of the private cloud
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The name of the resource group.
+The name is case insensitive.
+
+```yaml
+Type: System.String
+Parameter Sets: Get, List
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -SubscriptionId
+The ID of the target subscription.
+
+```yaml
+Type: System.String[]
+Parameter Sets: Get, List
+Aliases:
+
+Required: False
+Position: Named
+Default value: (Get-AzContext).Subscription.Id
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.IVMwareSolutionApiIdentity
+
+## OUTPUTS
+
+### Microsoft.Azure.PowerShell.Cmdlets.VMwareSolutionApi.Models.Api20210601.IHcxEnterpriseSite
+
+## NOTES
+
+ALIASES
+
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+
+INPUTOBJECT : Identity Parameter
+ - `[AddonName ]`: Name of the addon for the private cloud
+ - `[AuthorizationName ]`: Name of the ExpressRoute Circuit Authorization in the private cloud
+ - `[CloudLinkName ]`: Name of the cloud link resource
+ - `[ClusterName