2017-07-07 1 views
1

Ich versuche, meine Powershell-Module in einem VSTS-Paketverwaltungs-Feed zu veröffentlichen. Bisher habe ich:Veröffentlichen von PowerShell-Modulen in VSTS-Paketverwaltung mit Publish-Module

$securePass = ConvertTo-SecureString -String $RepositoryPassword -AsPlainText -Force 
$cred = New-Object System.Management.Automation.PSCredential ($RepositoryUsername, $securePass) 


Write-Debug "Adding the Repository $RepositoryName" 
Register-PSRepository -Name $RepositoryName -SourceLocation $RepositorySourceUri ` 
          -PublishLocation $RepositoryPublishUri -Credential $cred ` 
          -PackageManagementProvider Nuget -InstallationPolicy Trusted 

$PublishParams = @{ 
    Path = $ModuleFolderPath 
    ProjectUri = $ProjectUri 
    Tags = $ModuleTags 
    Repository = $RepositoryName 
    NugetApiKey = $NugetApiKey 
} 

Publish-Module @PublishParams -Force -Verbose 

Allerdings bekomme ich folgende Fehlermeldung:

Publish-PSArtifactUtility : Failed to publish module 'Framework.Logging': 'Publishing to a ******** package management feed ' https://xxx.pkgs.visualstudio.com/_packaging/PowershellModules/nuget/v2 ' requires it to be registered as a NuGet package source. Retry after adding this source
' https://xxx.pkgs.visualstudio.com/_packaging/PowershellModules/nuget/v2 ' as NuGet package source by following the instructions specified at ' https://go.microsoft.com/fwlink/?LinkID=698608 ''. At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.1.2.0\PSModule.psm1:1227 char:17 + Publish-PSArtifactUtility -PSModuleInfo $moduleInfo ` + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Write-Error], WriteErrorException + FullyQualifiedErrorId : FailedToPublishTheModule,Publish-PSArtifactUtility

Die PSRepository https://xxx.pkgs.visualstudio.com/_packaging/PowershellModules/nuget/v2, da sowohl die Quelle geleitet wird und Uris veröffentlichen, wenn sie erstellt wird. Irgendwelche Hinweise darauf, wo ich falsch liege?

Antwort

3

diesen Befehl aufrufen Paketquelle mit NuGet.exe Tool hinzuzufügen:

  1. Herunterladen Nuget.exe in einen Ordner
  2. Öffnen Sie die Eingabeaufforderung und navigieren (CD) in diesem Ordner

Befehl:

.\nuget.exe sources add -name [sourcename, such as myPSModuleFeed] -source https://[account].pkgs.visualstudio.com/_packaging/[feedname]/nuget/v2 -username test -password [PAT] -storePasswordInClearText 

Artikel über Personal Access Token: Authenticate access with personal access tokens for Team Services and TFS

+0

Danke, aber das registriert den Feed nicht als PSRepository. Funktioniert die VSTS-Paketverwaltung mit der Veröffentlichung über PowerShellGet (Publish-Module) oder ist die einzige Möglichkeit, die Veröffentlichung in der Paketverwaltung über Nuget.exe zu ermöglichen? – Carl

+0

@Carl Sie müssen Ihren Code nicht aktualisieren, verwenden Sie ihn immer noch. Was ich meine ist, dass Sie den Feed Nuget Quellen hinzufügen müssen (nicht veröffentlichen) und Publish-Module funktioniert gut für mich. Sie können die Quellen in der Datei Nuget.config überprüfen (% appdata% \ nugget foder) –

+0

@Carl Der Arbeitsablauf ist der 1. Rufen Sie den Befehl Nuget auf, um Quellen hinzuzufügen (nur einmal) 2. Starten Sie Ihr PowerShell-Skript –

Verwandte Themen