2016-03-16 1 views
1

J'ai créé un travail Jenkins qui doit se connecter à une machine distante et exécuter un script ps1.J'ai besoin de me connecter au serveur distant et d'exécuter le script ps1 en utilisant jenkins

$pw = convertto-securestring -AsPlainText -Force -String "4444" 
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist "eeeee\eee",$pw 
$sess = New-PSSession -ComputerName server1 -Credential $cred 
Enter-PSSession $sess 
+0

voir http://stackoverflow.com/questions/35989524/encrypt-credentials-export-then-import/35990001#35990001 – Avshalom

Répondre

0

Ajouter la machine distante comme esclave, puis exécutez le script de « exécuter Windows commande Traitement par lots » ou installer le plugin Powershell et "Exécuter le script PowerShell.

Liens:

  1. Ajouter les fenêtres esclave: https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines
  2. plug-in Powershell: https://wiki.jenkins-ci.org/display/JENKINS/PowerShell+Plugin
+0

Après avoir suivi vos pas lorsque Je cours construire dans Jenkins je vois ci-dessous l'erreur. Vous ne pouvez pas appeler une méthode sur une expression à valeur nulle. + CategoryInfo: InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId: InvokeMethodOnNull + PSComputerName: 002 extraction de fichier Zip est terminé L'accès est refusé + CategoryInfo: PermissionDenied: (\\ PHESBBATECT002 \ d $ \ Packages \ RTO: String) [test-Path], UnauthorizedAccessException + FullyQualifiedErrorId: ItemExistsUnauthorizedAccessError, Microsoft.Powe rShell.Commands.TestPathCommand + PSComputerName –

+0

$ ServerName = @ ("*** 002", "*** 003") foreach ($ Server dans $ ServerName) { $ RTODest = "\\ $ Serveur \ d $ \ Packages \ RTO" if (! (Test-pat h $ RTODest)) \t { $ file = "\\ *** 001 \ e $ \ Packages \ RTO.zip" new-item -path "\\ $ Serveur \ d $ \" -name "Paquets" répertoire -type destination $ = "\\ $ Server \ d $ \ Packages" \t shell $ = new-objet -com Shell.Application \t $ zip = $ shell.NameSpace (fichier $) \t foreach ($ item dans zip.items de $()) { \t \t shell.NameSpace $ (destination $) .copyhere ($ article) \t} Write-Host "extraction de fichier Zip est terminé" \t} \t else {Le dossier RTO de l'hôte d'écriture est déjà sorti " } } } Fichier UNZIP –