Scenario:
We need this all the time to retract / remove / add / deploy solution.Want to know what I use ?
Solution:
Powershell
Script:
####################################################################################################
# Function
####################################################################################################
function RetractAndRemoveSolution {param ($SolutionPackageName, $DeployedGlobally)
$solution = Get-SPSolution | where-object {$_.Name -eq $SolutionPackageName}
# check to see if solution package has been installed
if ($solution -ne $null)
{
if($solution.Deployed -eq $true)
{
if( $DeployedGlobally -eq $true)
{
Uninstall-SPSolution -Identity $SolutionPackageName -Local -Confirm:$False
}
else
{
Uninstall-SPSolution -Identity $SolutionPackageName -AllWebApplications -Local -Confirm:$False
}
}
Remove-SPSolution -Identity $SolutionPackageName -Confirm:$false
}
}
###########################################################################################
# To uninstall/remove custom solutions in central administration.
###########################################################################################
Write-Host "Removing solutions"
RetractAndRemoveSolution "CustomSolution.wsp" $false
RetractAndRemoveSolution "CustomSolutionGlobal.wsp" $true
###########################################################################################
# To add/deploy custom solutions in central administration.
###########################################################################################
Write-Host "Adding Solutions"
$currentfolder = (Get-Location -PSProvider FileSystem).ProviderPath
Add-SPSolution -LiteralPath $currentfolder"\CustomSolution.wsp"
###########################################################################################
# To deploy custom solutions to newly created site collection
# ( Mainly for use in DEV only, recommended to deploy using Central Admin UI for other environments )
###########################################################################################
Write-Host "Installing Solutions"
$webInsite = "http://intranet.contoso.com"
Install-SPSolution -Identity "CustomSolution" –WebApplication $webInsite –GACDeployment
###########################################################################################
# Reset IIS / Restart Services / Exit to ensure not binary is locked with Powershell Editor
###########################################################################################
iisreset
net stop "Sharepoint Server Search 14"
net start "Sharepoint Server Search 14"
exit
0 comments:
Post a Comment