pspulumiyaml.azurenative.datamigration.psm1
using module pspulumiyaml function Invoke-AzureNativeFunctionDatamigrationListSqlMigrationServiceAuthKeys { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName, [parameter(mandatory=$False,HelpMessage='Name of the SQL Migration Service.)')] [string] $sqlMigrationServiceName ) process { $arguments = @{} $arguments["resourceGroupName"] = $resourceGroupName $arguments["sqlMigrationServiceName"] = $sqlMigrationServiceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:listSqlMigrationServiceAuthKeys -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetProject { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName ) process { $arguments = @{} $arguments["groupName"] = $groupName $arguments["projectName"] = $projectName $arguments["serviceName"] = $serviceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getProject -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetDatabaseMigrationsSqlDb { param ( [parameter(mandatory=$False,HelpMessage='The name of the target database.)')] [string] $targetDbName, [parameter(mandatory=$False,HelpMessage=')')] [string] $sqlDbInstanceName, [parameter(mandatory=$False,HelpMessage='Complete migration details be included in the response.)')] [string] $expand, [parameter(mandatory=$False,HelpMessage='Optional migration operation ID. If this is provided, then details of migration operation for that ID are retrieved. If not provided (default), then details related to most recent or current operation are retrieved.)')] [string] $migrationOperationId, [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName ) process { $arguments = @{} $arguments["resourceGroupName"] = $resourceGroupName $arguments["sqlDbInstanceName"] = $sqlDbInstanceName $arguments["targetDbName"] = $targetDbName if($PSBoundParameters.Keys -icontains 'expand') { $arguments["expand"] = $expand } if($PSBoundParameters.Keys -icontains 'migrationOperationId') { $arguments["migrationOperationId"] = $migrationOperationId } $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getDatabaseMigrationsSqlDb -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetService { param ( [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName ) process { $arguments = @{} $arguments["groupName"] = $groupName $arguments["serviceName"] = $serviceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getService -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetSqlMigrationService { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName, [parameter(mandatory=$False,HelpMessage='Name of the SQL Migration Service.)')] [string] $sqlMigrationServiceName ) process { $arguments = @{} $arguments["resourceGroupName"] = $resourceGroupName $arguments["sqlMigrationServiceName"] = $sqlMigrationServiceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getSqlMigrationService -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationListSqlMigrationServiceMonitoringData { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName, [parameter(mandatory=$False,HelpMessage='Name of the SQL Migration Service.)')] [string] $sqlMigrationServiceName ) process { $arguments = @{} $arguments["resourceGroupName"] = $resourceGroupName $arguments["sqlMigrationServiceName"] = $sqlMigrationServiceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:listSqlMigrationServiceMonitoringData -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetTask { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Expand the response)')] [string] $expand, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName, [parameter(mandatory=$False,HelpMessage='Name of the Task)')] [string] $taskName ) process { $arguments = @{} $arguments["groupName"] = $groupName $arguments["projectName"] = $projectName $arguments["serviceName"] = $serviceName $arguments["taskName"] = $taskName if($PSBoundParameters.Keys -icontains 'expand') { $arguments["expand"] = $expand } $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getTask -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionDatamigrationGetFile { param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Name of the File)')] [string] $fileName, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName ) process { $arguments = @{} $arguments["fileName"] = $fileName $arguments["groupName"] = $groupName $arguments["projectName"] = $projectName $arguments["serviceName"] = $serviceName $functionObject = Invoke-PulumiFunction -Name azure-native:datamigration:getFile -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } class SqlConnectionInfo { [string] $dataSource [string] $type [ArgumentCompletions('None', 'WindowsAuthentication', 'SqlAuthentication', 'ActiveDirectoryIntegrated', 'ActiveDirectoryPassword')] [string] $authentication [bool] $trustServerCertificate [string] $password [ArgumentCompletions('SqlOnPrem')] [string] $platform [string] $additionalSettings [bool] $encryptConnection [string] $userName } function New-AzureNativeTypeDatamigrationSqlConnectionInfo { param ( [parameter(mandatory=$False,HelpMessage='Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber)')] [string] $dataSource, [parameter(mandatory=$False,HelpMessage='Type of connection info Expected value is ''SqlConnectionInfo''.)')] [string] $type, [parameter(mandatory=$False,HelpMessage='Authentication type to use for connection)')] [string] [ValidateSet('None', 'WindowsAuthentication', 'SqlAuthentication', 'ActiveDirectoryIntegrated', 'ActiveDirectoryPassword')] $authentication, [parameter(mandatory=$False,HelpMessage='Whether to trust the server certificate)')] [bool] $trustServerCertificate, [parameter(mandatory=$False,HelpMessage='Password credential.)')] [string] $password, [parameter(mandatory=$False,HelpMessage='Server platform type for connection)')] [string] [ValidateSet('SqlOnPrem')] $platform, [parameter(mandatory=$False,HelpMessage='Additional connection settings)')] [string] $additionalSettings, [parameter(mandatory=$False,HelpMessage='Whether to encrypt the connection)')] [bool] $encryptConnection, [parameter(mandatory=$False,HelpMessage='User name)')] [string] $userName ) process { return $([SqlConnectionInfo]$PSBoundParameters) } } function New-AzureNativeDatamigrationProject { [Alias('azure_native_datamigration_project')] param ( [parameter(mandatory=$False,HelpMessage='Resource tags.)')] [hashtable] $tags, [parameter(mandatory=$False,HelpMessage='Information for connecting to source)')] [SqlConnectionInfo] $sourceConnectionInfo, [parameter(mandatory=$False,HelpMessage='Information for connecting to target)')] [SqlConnectionInfo] $targetConnectionInfo, [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName, [parameter(mandatory=$False,HelpMessage='Source platform for the project)')] [string] [ValidateSet('SQL', 'Unknown')] $sourcePlatform, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Resource location.)')] [string] $location, [parameter(mandatory=$False,HelpMessage='Target platform for the project)')] [string] [ValidateSet('SQLDB', 'Unknown')] $targetPlatform, [parameter(mandatory=$False,HelpMessage='List of DatabaseInfo)')] $databasesInfo, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:Project") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["groupName"] = $groupName $resource.properties["serviceName"] = $serviceName $resource.properties["sourcePlatform"] = $sourcePlatform $resource.properties["targetPlatform"] = $targetPlatform if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'sourceConnectionInfo') { $resource.properties["sourceConnectionInfo"] = $sourceConnectionInfo } if($PSBoundParameters.Keys -icontains 'targetConnectionInfo') { $resource.properties["targetConnectionInfo"] = $targetConnectionInfo } if($PSBoundParameters.Keys -icontains 'projectName') { $resource.properties["projectName"] = $projectName } if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } if($PSBoundParameters.Keys -icontains 'databasesInfo') { $resource.properties["databasesInfo"] = $databasesInfo } $global:pulumiresources += $resource return $resource } } class SqlConnectionInformation { [string] $dataSource [string] $userName [bool] $encryptConnection [bool] $trustServerCertificate [string] $password [string] $authentication } function New-AzureNativeTypeDatamigrationSqlConnectionInformation { param ( [parameter(mandatory=$False,HelpMessage='Data source.)')] [string] $dataSource, [parameter(mandatory=$False,HelpMessage='User name to connect to source SQL.)')] [string] $userName, [parameter(mandatory=$False,HelpMessage='Whether to encrypt connection or not.)')] [bool] $encryptConnection, [parameter(mandatory=$False,HelpMessage='Whether to trust server certificate or not.)')] [bool] $trustServerCertificate, [parameter(mandatory=$False,HelpMessage='Password to connect to source SQL.)')] [string] $password, [parameter(mandatory=$False,HelpMessage='Authentication type.)')] [string] $authentication ) process { return $([SqlConnectionInformation]$PSBoundParameters) } } class DatabaseMigrationPropertiesSqlDb { [string[]] $tableList [string] $sourceDatabaseName [string] $migrationService [string] $scope [string] $provisioningError [SqlConnectionInformation] $targetSqlConnection [string] $targetDatabaseCollation [string] $migrationOperationId [SqlConnectionInformation] $sourceSqlConnection [string] $kind } function New-AzureNativeTypeDatamigrationDatabaseMigrationPropertiesSqlDb { param ( [parameter(mandatory=$False,HelpMessage='List of tables to copy.)')] [string[]] $tableList, [parameter(mandatory=$False,HelpMessage='Name of the source database.)')] [string] $sourceDatabaseName, [parameter(mandatory=$False,HelpMessage='Resource Id of the Migration Service.)')] [string] $migrationService, [parameter(mandatory=$False,HelpMessage='Resource Id of the target resource (SQL VM or SQL Managed Instance).)')] [string] $scope, [parameter(mandatory=$False,HelpMessage='Error message for migration provisioning failure, if any.)')] [string] $provisioningError, [parameter(mandatory=$False,HelpMessage='Target SQL DB connection details.)')] [SqlConnectionInformation] $targetSqlConnection, [parameter(mandatory=$False,HelpMessage='Database collation to be used for the target database.)')] [string] $targetDatabaseCollation, [parameter(mandatory=$False,HelpMessage='ID tracking current migration operation.)')] [string] $migrationOperationId, [parameter(mandatory=$False,HelpMessage='Source SQL Server connection details.)')] [SqlConnectionInformation] $sourceSqlConnection, [parameter(mandatory=$False,HelpMessage=' Expected value is ''SqlDb''.)')] [string] $kind ) process { return $([DatabaseMigrationPropertiesSqlDb]$PSBoundParameters) } } function New-AzureNativeDatamigrationDatabaseMigrationsSqlDb { [Alias('azure_native_datamigration_databasemigrationssqldb')] param ( [parameter(mandatory=$False,HelpMessage='Database Migration Resource properties for SQL database.)')] [DatabaseMigrationPropertiesSqlDb] $properties, [parameter(mandatory=$False,HelpMessage=')')] [string] $sqlDbInstanceName, [parameter(mandatory=$False,HelpMessage='The name of the target database.)')] [string] $targetDbName, [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:DatabaseMigrationsSqlDb") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["resourceGroupName"] = $resourceGroupName $resource.properties["sqlDbInstanceName"] = $sqlDbInstanceName if($PSBoundParameters.Keys -icontains 'properties') { $resource.properties["properties"] = $properties } if($PSBoundParameters.Keys -icontains 'targetDbName') { $resource.properties["targetDbName"] = $targetDbName } $global:pulumiresources += $resource return $resource } } function New-AzureNativeDatamigrationSqlMigrationService { [Alias('azure_native_datamigration_sqlmigrationservice')] param ( [parameter(mandatory=$False,HelpMessage=')')] [string] $location, [parameter(mandatory=$False,HelpMessage=')')] [hashtable] $tags, [parameter(mandatory=$False,HelpMessage='Name of the SQL Migration Service.)')] [string] $sqlMigrationServiceName, [parameter(mandatory=$False,HelpMessage='Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.)')] [string] $resourceGroupName, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:SqlMigrationService") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["resourceGroupName"] = $resourceGroupName if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'sqlMigrationServiceName') { $resource.properties["sqlMigrationServiceName"] = $sqlMigrationServiceName } $global:pulumiresources += $resource return $resource } } class ServiceSku { [string] $size [string] $family [string] $tier [string] $name [int] $capacity } function New-AzureNativeTypeDatamigrationServiceSku { param ( [parameter(mandatory=$False,HelpMessage='The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. ''A1'' for virtual machines)')] [string] $size, [parameter(mandatory=$False,HelpMessage='The SKU family, used when the service has multiple performance classes within a tier, such as ''A'', ''D'', etc. for virtual machines)')] [string] $family, [parameter(mandatory=$False,HelpMessage='The tier of the SKU, such as ''Free'', ''Basic'', ''Standard'', or ''Premium'')')] [string] $tier, [parameter(mandatory=$False,HelpMessage='The unique name of the SKU, such as ''P3'')')] [string] $name, [parameter(mandatory=$False,HelpMessage='The capacity of the SKU, if it supports scaling)')] [int] $capacity ) process { return $([ServiceSku]$PSBoundParameters) } } function New-AzureNativeDatamigrationService { [Alias('azure_native_datamigration_service')] param ( [parameter(mandatory=$False,HelpMessage='The resource kind. Only ''vm'' (the default) is supported.)')] [string] $kind, [parameter(mandatory=$False,HelpMessage='Resource tags.)')] [hashtable] $tags, [parameter(mandatory=$False,HelpMessage='The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined)')] [string] $virtualSubnetId, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Service SKU)')] [ServiceSku] $sku, [parameter(mandatory=$False,HelpMessage='The public key of the service, used to encrypt secrets sent to the service)')] [string] $publicKey, [parameter(mandatory=$False,HelpMessage='Resource location.)')] [string] $location, [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:Service") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["groupName"] = $groupName $resource.properties["virtualSubnetId"] = $virtualSubnetId if($PSBoundParameters.Keys -icontains 'kind') { $resource.properties["kind"] = $kind } if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'serviceName') { $resource.properties["serviceName"] = $serviceName } if($PSBoundParameters.Keys -icontains 'sku') { $resource.properties["sku"] = $sku } if($PSBoundParameters.Keys -icontains 'publicKey') { $resource.properties["publicKey"] = $publicKey } if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } $global:pulumiresources += $resource return $resource } } class ProjectFileProperties { [string] $filePath [string] $mediaType [string] $extension } function New-AzureNativeTypeDatamigrationProjectFileProperties { param ( [parameter(mandatory=$False,HelpMessage='Relative path of this file resource. This property can be set when creating or updating the file resource.)')] [string] $filePath, [parameter(mandatory=$False,HelpMessage='File content type. This property can be modified to reflect the file content type.)')] [string] $mediaType, [parameter(mandatory=$False,HelpMessage='Optional File extension. If submitted it should not have a leading period and must match the extension from filePath.)')] [string] $extension ) process { return $([ProjectFileProperties]$PSBoundParameters) } } function New-AzureNativeDatamigrationFile { [Alias('azure_native_datamigration_file')] param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Name of the File)')] [string] $fileName, [parameter(mandatory=$False,HelpMessage='Custom file properties)')] [ProjectFileProperties] $properties, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:File") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["groupName"] = $groupName $resource.properties["projectName"] = $projectName $resource.properties["serviceName"] = $serviceName if($PSBoundParameters.Keys -icontains 'fileName') { $resource.properties["fileName"] = $fileName } if($PSBoundParameters.Keys -icontains 'properties') { $resource.properties["properties"] = $properties } $global:pulumiresources += $resource return $resource } } class BlobShare { [string] $sasUri } function New-AzureNativeTypeDatamigrationBlobShare { param ( [parameter(mandatory=$False,HelpMessage='SAS URI of Azure Storage Account Container.)')] [string] $sasUri ) process { return $([BlobShare]$PSBoundParameters) } } class FileShare { [string] $password [string] $userName [string] $path } function New-AzureNativeTypeDatamigrationFileShare { param ( [parameter(mandatory=$False,HelpMessage='Password credential used to connect to the share location.)')] [string] $password, [parameter(mandatory=$False,HelpMessage='User name credential to connect to the share location)')] [string] $userName, [parameter(mandatory=$False,HelpMessage='The folder path for this share.)')] [string] $path ) process { return $([FileShare]$PSBoundParameters) } } class MigrateSqlServerSqlMIDatabaseInput { [string] $restoreDatabaseName [FileShare] $backupFileShare [string[]] $backupFilePaths [string] $name } function New-AzureNativeTypeDatamigrationMigrateSqlServerSqlMIDatabaseInput { param ( [parameter(mandatory=$False,HelpMessage='Name of the database at destination)')] [string] $restoreDatabaseName, [parameter(mandatory=$False,HelpMessage='Backup file share information for backing up this database.)')] [FileShare] $backupFileShare, [parameter(mandatory=$False,HelpMessage='The list of backup files to be used in case of existing backups.)')] [string[]] $backupFilePaths, [parameter(mandatory=$False,HelpMessage='Name of the database)')] [string] $name ) process { return $([MigrateSqlServerSqlMIDatabaseInput]$PSBoundParameters) } } class ValidateMigrationInputSqlServerSqlMITaskInput { [BlobShare] $backupBlobShare [FileShare] $backupFileShare [SqlConnectionInfo] $targetConnectionInfo [SqlConnectionInfo] $sourceConnectionInfo [ArgumentCompletions('CreateBackup', 'ExistingBackup')] [string] $backupMode [MigrateSqlServerSqlMIDatabaseInput[]] $selectedDatabases [string[]] $selectedLogins } function New-AzureNativeTypeDatamigrationValidateMigrationInputSqlServerSqlMITaskInput { param ( [parameter(mandatory=$False,HelpMessage='SAS URI of Azure Storage Account Container to be used for storing backup files.)')] [BlobShare] $backupBlobShare, [parameter(mandatory=$False,HelpMessage='Backup file share information for all selected databases.)')] [FileShare] $backupFileShare, [parameter(mandatory=$False,HelpMessage='Information for connecting to target)')] [SqlConnectionInfo] $targetConnectionInfo, [parameter(mandatory=$False,HelpMessage='Information for connecting to source)')] [SqlConnectionInfo] $sourceConnectionInfo, [parameter(mandatory=$False,HelpMessage='Backup Mode to specify whether to use existing backup or create new backup.)')] [string] [ValidateSet('CreateBackup', 'ExistingBackup')] $backupMode, [parameter(mandatory=$False,HelpMessage='Databases to migrate)')] $selectedDatabases, [parameter(mandatory=$False,HelpMessage='Logins to migrate)')] [string[]] $selectedLogins ) process { return $([ValidateMigrationInputSqlServerSqlMITaskInput]$PSBoundParameters) } } class ValidateMigrationInputSqlServerSqlMITaskProperties { [ValidateMigrationInputSqlServerSqlMITaskInput] $input [string] $taskType } function New-AzureNativeTypeDatamigrationValidateMigrationInputSqlServerSqlMITaskProperties { param ( [parameter(mandatory=$False,HelpMessage='Task input)')] [ValidateMigrationInputSqlServerSqlMITaskInput] $input, [parameter(mandatory=$False,HelpMessage='Task type. Expected value is ''ValidateMigrationInput.SqlServer.AzureSqlDbMI''.)')] [string] $taskType ) process { return $([ValidateMigrationInputSqlServerSqlMITaskProperties]$PSBoundParameters) } } function New-AzureNativeDatamigrationTask { [Alias('azure_native_datamigration_task')] param ( [parameter(mandatory=$False,HelpMessage='Name of the resource group)')] [string] $groupName, [parameter(mandatory=$False,HelpMessage='Custom task properties)')] [ValidateMigrationInputSqlServerSqlMITaskProperties] $properties, [parameter(mandatory=$False,HelpMessage='Name of the service)')] [string] $serviceName, [parameter(mandatory=$False,HelpMessage='Name of the project)')] [string] $projectName, [parameter(mandatory=$False,HelpMessage='Name of the Task)')] [string] $taskName, [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')] [string] $pulumiid, [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')] [object] $DependsOn ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:datamigration:Task") foreach($Dependency in $DependsOn) { if($Dependency -is [pulumiresource]) { $resource.dependson += $Dependency.Reference() } else { $resource.dependson += $Dependency } } $resource.properties["groupName"] = $groupName $resource.properties["projectName"] = $projectName $resource.properties["serviceName"] = $serviceName if($PSBoundParameters.Keys -icontains 'properties') { $resource.properties["properties"] = $properties } if($PSBoundParameters.Keys -icontains 'taskName') { $resource.properties["taskName"] = $taskName } $global:pulumiresources += $resource return $resource } } |