Hi,
I was given the script (.\SolutionDeployment.ps1) to deploy Solution to our SharePoint farm:
---
# http://stsadm.blogspot.co.uk/2010/06/deploying-sharepoint-2010-solution.html
function Install-Solutions([string]$configFile)
{
if ([string]::IsNullOrEmpty($configFile)) { return }
[xml]$solutionsConfig = Get-Content $configFile
if ($solutionsConfig -eq $null) { return }
$solutionsConfig.Solutions.Solution | ForEach-Object {
[string]$path = $_.Path
[bool]$gac = [bool]::Parse($_.GACDeployment)
[bool]$cas = [bool]::Parse($_.CASPolicies)
$webApps = $_.WebApplications.WebApplication
Install-Solution $path $gac $cas $webApps
}
}
function Install-Solution([string]$path, [bool]$gac, [bool]$cas, [string[]]$webApps = @())
{
$spAdminServiceName = "SPAdmin"
[string]$name = Split-Path -Path $path -Leaf
$solution = Get-SPSolution $name -ErrorAction SilentlyContinue
if ($solution -ne $null) {
#Retract the solution
if ($solution.Deployed) {
Write-Host "Retracting solution $name..."
if ($solution.ContainsWebApplicationResource) {
$solution | Uninstall-SPSolution -AllWebApplications -Confirm:$false
} else {
$solution | Uninstall-SPSolution -Confirm:$false
}
Stop-Service -Name $spAdminServiceName
Start-SPAdminJob -Verbose
Start-Service -Name $spAdminServiceName
#Block until we're sure the solution is no longer deployed.
do { Start-Sleep 2 } while ((Get-SPSolution $name).Deployed)
}
#Delete the solution
Write-Host "Removing solution $name..."
Get-SPSolution $name | Remove-SPSolution -Confirm:$false
}
#Add the solution
Write-Host "Adding solution $name..."
$solution = Add-SPSolution $path
#Deploy the solution
if (!$solution.ContainsWebApplicationResource) {
Write-Host "Deploying solution $name to the Farm..."
$solution | Install-SPSolution -GACDeployment:$gac -CASPolicies:$cas -Confirm:$false
} else {
if ($webApps -eq $null -or $webApps.Length -eq 0) {
Write-Warning "The solution $name contains web application resources but no web applications were specified to deploy to."
return
}
$webApps | ForEach-Object {
Write-Host "Deploying solution $name to $_..."
$solution | Install-SPSolution -GACDeployment:$gac -CASPolicies:$cas -WebApplication $_ -Confirm:$false
}
}
Stop-Service -Name $spAdminServiceName
Start-SPAdminJob -Verbose
Start-Service -Name $spAdminServiceName
#Block until we're sure the solution is deployed.
do { Start-Sleep 2 } while (!((Get-SPSolution $name).Deployed))
}
----
I run the script ".\SolutionDeployment.ps1" - no erros, then I need to run Install-Solutions C:\Scripts\Solution.xml to deploy solution using XML and always get error:
The term 'Install-Solutions' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
Senior administrator said script worked for him very successfully. What i did wrong?
Thanks