I am trying to automate the export and import of unmanaged solutions in the CRM/CE environment.
#Define CRM source credentials
$CRMSourceUserName = //
$CRMSourcePassword = //
$CRMSourceUrl = //
# Enable strict mode
Set-StrictMode -Version latest
# Function to establish CRM connection
function EstablishCRMConnection {
param(
[string]$CRMUserName,
[string]$CRMSecPasswd,
[string]$crmUrl
)
Write-Host /UserId: $CRMUserName Password: $CRMSecPasswd CrmUrl: $crmUrl/
# Convert password to secure string
$CRMSecPasswdString = ConvertTo-SecureString -String $CRMSecPasswd -AsPlainText -Force
Write-Host /Creating credentials/
# Create credentials object
$Credentials = New-Object System.Management.Automation.PSCredential ($CRMUserName, $CRMSecPasswdString)
Write-Host /Credentials object created/
Write-Host /Establishing CRM connection next/
# Connect to CRM
$crm = Connect-CrmOnline -Credential $Credentials -ServerUrl $CrmUrl
Write-Host /CRM connection established/
return $crm
}
# Function to install required PowerShell module
function InstallRequiredModule {
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force
$moduleName = /Microsoft.Xrm.Data.Powershell/
$moduleVersion = /2.7.2/
if (!(Get-Module -ListAvailable -Name $moduleName)) {
Write-Host /Module Not found, installing now/
$moduleVersion
Install-Module -Name $moduleName -MinimumVersion $moduleVersion -Force
} else {
Write-Host /Module Found/
}
}
# Install required module
InstallRequiredModule
# Update Source CRM instance details below:
Write-Host /Going to create source connection/
$CrmSourceConnectionString = EstablishCRMConnection -CRMUserName $CRMSourceUserName -CRMSecPasswd $CRMSourcePassword -crmUrl $CRMSourceUrl
Write-Host /Source connection created/
Set-CrmConnectionTimeout -conn $CrmSourceConnectionString -TimeoutInSeconds 1000
Write-Host /Exporting Solution/
Export-CrmSolution -conn $CrmSourceConnectionString -SolutionName /DeploymentDemo/ -SolutionFilePath /C://Users//Desktop//CE-Deployments/ -SolutionZipFileName /Deployment-Demo.zip/
Write-Host /Solution Exported./