Question

J'essaie de migrer environ 200 WSPS d'une ferme SharePoint 2010 à une autre.J'ai déjà copié les fichiers WSP dans un dossier de la nouvelle ferme.

J'ai besoin d'un script PowerShell pouvant prendre le chemin du dossier en entrée et ajouter tout le WSPS situé dans le dossier à la ferme.Je ne souhaite pas déployer plutôt simplement les ajouter à la ferme.

Exemple d'entrée: -

c: \ exporedwsp

Était-ce utile?

La solution

Il suffit de fournir le chemin du dossier où WSP est situé et la fonction ajoutera tout le magasin de solutions WSPS in Solution.

Remove-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
function WaitForInsallation([string] $Name)
{
        Write-Host -NoNewline "Waiting for deployment job to complete" $Name "."
        $wspSol = get-SpSolution $Name
        while($wspSol.JobExists)
        {
            sleep 2
            Write-Host -NoNewline "."
            $wspSol = get-SpSolution $Name
        }
        Write-Host "job ended" -ForegroundColor green
}
Function Deploy-SPSolution ($WspFolderPath)
{
    $wspFiles = get-childitem $WspFolderPath | where {$_.Name -like "*.wsp"}

    ForEach($file in $wspFiles)
    {
        $wsp = Get-SPSolution | Where{$_.Name -eq $file.Name}
        if($wsp -eq $null)
        {
            write-host "Adding solution"
            Add-SPSolution -LiteralPath ($WspFolderPath + "\" + $file.Name)
        }
        else
        {
            write-host "solution already exists"

        }

    }
}
try
{
        Deploy-SPSolution "C:\EXPORTEDWSP"
}
catch
{
    write-host $_.exception

}

Autres conseils

Si vous avez un dossier de WSPS uniquement dans une ferme propre, le script peut être raccourci pour:

$names = get-childitem F:\SPProdSolutionsExtract
foreach ($solution in $names) {Add-SPSolution -LiteralPath ("F:\SPProdSolutionsExtract\" + $solution.Name) }

J'utilise l'extracteur SharePoint Farm Solution pour obtenir le WSPS d'un serveur et le script ci-dessus pour les ajouter à la ferme.Le script d'installation-Solution est plus de travail, car il existe tellement de types de WSPS et de paramètres.

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top