Freigeben über


Publish-Module

Veröffentlicht ein angegebenes Modul vom lokalen Computer in einem Onlinekatalog.

Syntax

Publish-Module
       -Name <String>
       [-RequiredVersion <String>]
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-FormatVersion <Version>]
       [-ReleaseNotes <String[]>]
       [-Tags <String[]>]
       [-LicenseUri <Uri>]
       [-IconUri <Uri>]
       [-ProjectUri <Uri>]
       [-Exclude <String[]>]
       [-Force]
       [-AllowPrerelease]
       [-SkipAutomaticTags]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Publish-Module
       -Path <String>
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-FormatVersion <Version>]
       [-ReleaseNotes <String[]>]
       [-Tags <String[]>]
       [-LicenseUri <Uri>]
       [-IconUri <Uri>]
       [-ProjectUri <Uri>]
       [-Force]
       [-SkipAutomaticTags]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Beschreibung

Das Publish-Module Cmdlet veröffentlicht ein Modul in einem Online-NuGet-basierten Katalog mithilfe eines API-Schlüssels, der als Teil des Profils eines Benutzers im Katalog gespeichert ist. Sie können das zu veröffentlichende Modul entweder nach dem Namen des Moduls oder durch den Pfad zu dem Ordner angeben, der das Modul enthält.

Dies ist ein Proxy-Cmdlet für das Publish-PSResource Cmdlet in microsoft.PowerShell.PSResourceGet. Weitere Informationen finden Sie unter Publish-PSResource.

Beispiele

Beispiel 1: Veröffentlichen eines Moduls

In diesem Beispiel wird MyDscModule mithilfe des API-Schlüssels im Onlinekatalog veröffentlicht, um das Onlinekatalogkonto des Modulbesitzers anzugeben. Wenn MyDscModule kein gültiges Manifestmodul ist, das einen Namen, eine Version, eine Beschreibung und einen Autor angibt, tritt ein Fehler auf.

Publish-Module -Path c:\projects\MyDscModule\1.0.0 -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"

Beispiel 2: Veröffentlichen eines Moduls mit Katalogmetadaten

In diesem Beispiel wird MyDscModule mithilfe des API-Schlüssels im Onlinekatalog veröffentlicht, um das Katalogkonto des Modulbesitzers anzugeben. Die bereitgestellten zusätzlichen Metadaten werden auf der Webseite für das Modul im Katalog angezeigt. Der Besitzer fügt zwei Suchtags für das Modul hinzu, die es mit Active Directory in Zusammenhang stehen; Eine kurze Veröffentlichungsnotiz wird hinzugefügt. Wenn MyDscModule kein gültiges Manifestmodul ist, das einen Namen, eine Version, eine Beschreibung und einen Autor angibt, tritt ein Fehler auf.

$parameters = @{
    Path        = 'c:\projects\MyDscModule\1.0.0'
    NuGetApiKey = '11e4b435-6cb4-4bf7-8611-5162ed75eb73'
    LicenseUri  = 'http://contoso.com/license'
    Tag         = 'Active Directory','DSC'
    ReleaseNote = 'Updated the ActiveDirectory DSC Resources to support adding users.'
}
Publish-Module @parameters

Parameter

-AllowPrerelease

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:SwitchParameter
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie die Publish-ModuleDatei ausführen.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Gibt ein Benutzerkonto an, das über Berechtigungen zum Veröffentlichen eines Moduls für einen angegebenen Paketanbieter oder eine angegebene Quelle verfügt.

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Exclude

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Force

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:SwitchParameter
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FormatVersion

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:Version
Zulässige Werte:2.0
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IconUri

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:Uri
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LicenseUri

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:Uri
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Name

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-NuGetApiKey

Gibt den API-Schlüssel an, den Sie zum Veröffentlichen eines Moduls im Onlinekatalog verwenden möchten. Der API-Schlüssel ist Teil Ihres Profils im Onlinekatalog und finden Sie auf Ihrer Benutzerkontoseite im Katalog. Der API-Schlüssel ist NuGet-spezifische Funktionalität.

Das Proxy-Cmdlet ordnet diesen Parameter dem ApiKey-Parameter von Publish-PSResource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Path

Gibt den Pfad zu dem Modul an, das Sie veröffentlichen möchten. Dieser Parameter akzeptiert den Pfad zum Ordner, der das Modul enthält. Der Ordner muss denselben Namen wie das Modul haben.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ProjectUri

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:Uri
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ReleaseNotes

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Repository

Gibt den Anzeigenamen eines Repositorys an, das durch Ausführen Register-PSRepositoryregistriert wurde. Das Repository muss über eine PublishLocation verfügen, bei der es sich um einen gültigen NuGet-URI handelt. Die PublishLocation kann durch Ausführen Set-PSRepositoryfestgelegt werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RequiredVersion

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SkipAutomaticTags

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:SwitchParameter
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Tags

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passieren würde, wenn Publish-Module läuft. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

String

PSCredential

Ausgaben

Object

Hinweise

PowerShell enthält die folgenden Aliase für Publish-Module:

  • Alle Plattformen:
    • pumo

Publish-Module wird auf PowerShell 3.0- oder höher-Versionen von PowerShell, unter Windows 7 oder Windows 2008 R2 und höheren Versionen von Windows ausgeführt.

Der PowerShell-Katalog unterstützt die Tls-Versionen 1.0 und 1.1 nicht mehr. Sie müssen TLS 1.2 oder höher verwenden. Verwenden Sie den folgenden Befehl, um sicherzustellen, dass Sie TLS 1.2 verwenden:

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

Zum Veröffentlichen eines Moduls sind Metadaten erforderlich, die auf der Katalogseite für das Modul angezeigt werden. Erforderliche Metadaten umfassen den Modulnamen, die Version, die Beschreibung und den Autor. Die Metadaten müssen im Modulmanifest definiert werden. Weitere Informationen finden Sie unter Paketmanifestwerte, die sich auf die Benutzeroberfläche des PowerShell-Katalogs auswirken.