Publish-Module

將指定的模組從本機電腦發行至線上資源庫。

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>]

Description

Cmdlet Publish-Module 會使用 API 金鑰,將模組發佈至在線 NuGet 型資源庫,並儲存為資源庫中使用者配置檔的一部分。 您可以指定依模組名稱,或依包含模組之資料夾的路徑來發行模組。

這是 Microsoft.PowerShell.PSResourceGet 中 Cmdlet 的 Proxy CmdletPublish-PSResource。 如需詳細資訊,請參閱 Publish-PSResource

範例

範例 1:發佈模組

在此範例中, MyDscModule 會使用 API 金鑰來指出模組擁有者的在線資源庫帳戶,發佈至在線資源庫。 如果 MyDscModule 不是指定名稱、版本、描述和作者的有效指令清單模組,就會發生錯誤。

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

範例 2:發佈具有資源庫元數據的模組

在此範例中, MyDscModule 會使用 API 金鑰來指出模組擁有者的資源庫帳戶,發佈至在線資源庫。 提供的其他元數據會顯示在資源庫中模組的網頁上。 擁有者會為模組新增兩個搜尋卷標,並將其與 Active Directory 建立關聯;已新增簡短的版本資訊。 如果 MyDscModule 不是指定名稱、版本、描述和作者的有效指令清單模組,就會發生錯誤。

$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

參數

-AllowPrerelease

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

在執行 之前 Publish-Module,提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

指定有權發佈指定套件提供者或來源之模組的用戶帳戶。

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FormatVersion

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:Version
Accepted values:2.0
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IconUri

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LicenseUri

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NuGetApiKey

指定您想要用來將模組發佈至在線資源庫的 API 金鑰。 API 金鑰是在線資源庫中設定檔的一部分,可以在資源庫的用戶帳戶頁面上找到。 API 金鑰是 NuGet 特定的功能。

Proxy Cmdlet 會將此參數對應至 的 Publish-PSResourceApiKey 參數。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

指定您要發佈的模組路徑。 此參數接受包含模組的資料夾路徑。 資料夾的名稱必須與模組相同。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ProjectUri

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReleaseNotes

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Repository

指定已執行 Register-PSRepository註冊之存放庫的易記名稱。 存放庫必須有 PublishLocation,這是有效的 NuGet URI。 您可以執行 Set-PSRepository來設定 PublishLocation

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipAutomaticTags

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tags

Proxy Cmdlet 會忽略此參數,因為它不受 支援 Publish-PSResource

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

顯示執行時 Publish-Module 會發生什麼情況。 Cmdlet 並不會執行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

String

PSCredential

輸出

Object

備註

PowerShell 包含的下列別名 Publish-Module

  • 所有平台:
    • pumo

Publish-Module 會在 PowerShell 3.0 或更新版本的 PowerShell、Windows 7 或 Windows 2008 R2 和更新版本的 Windows 上執行。

PowerShell 資源庫 不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 您必須使用 TLS 1.2 或更高版本。 使用下列命令來確保您使用的是 TLS 1.2:

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

發行模組時需要在模組之資源庫頁面上所顯示的中繼資料。 必要的中繼資料包含模組名稱、版本、描述和作者。 元數據必須在模組指令清單中定義。 如需詳細資訊,請參閱影響 PowerShell 資源庫 UI 的封裝指令清單值