Publish-Module
語法
ModuleNameParameterSet (預設值)
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>]
ModulePathParameterSet
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
Publish-Module Cmdlet 會使用 API 金鑰,將模組發佈至在線 NuGet 型資源庫,並儲存為資源庫中使用者配置檔的一部分。 您可以指定要透過模組名稱或包含模組之資料夾的路徑來發佈模組。
當您依名稱指定模組時,Publish-Module 發佈執行 Get-Module -ListAvailable <Name>找到的第一個模組。 如果您指定要發行的模組最低版本,Publish-Module 發行第一個模組,其版本大於或等於您指定的最小版本。
發佈模組需要顯示在模組資源庫頁面上的元數據。 必要的元數據包括模組名稱、版本、描述和作者。 雖然大部分的元數據都是從模組指令清單取得,但某些元數據必須在參數中 Publish-Module 指定,例如 Tag、 ReleaseNote、 IconUri、 ProjectUri 和 LicenseUri,因為這些參數符合 NuGet 型資源庫中的字段。
範例
範例 1:發佈模組
在此範例中,MyDscModule 會使用 API 金鑰發佈至在線資源庫,以指出模組擁有者的在線資源庫帳戶。 如果 MyDscModule 不是指定名稱、版本、描述和作者的有效指令清單模組,就會發生錯誤。
Publish-Module -Name "MyDscModule" -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"
範例 2:使用資源庫元數據發佈模組
在此範例中,MyDscModule 會使用 API 金鑰來指出模組擁有者的資源庫帳戶,發佈至在線資源庫。 提供的其他元數據會顯示在資源庫中模組的網頁上。 擁有者會為模組新增兩個搜尋卷標,使其與 Active Directory 相關;已新增簡短的版本附註。 如果 MyDscModule 不是指定名稱、版本、描述和作者的有效指令清單模組,就會發生錯誤。
Publish-Module -Name "MyDscModule" -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."
參數
-AllowPrerelease
允許標示為發行發行前版本的模組。
參數屬性
參數集
ModuleNameParameterSet
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Confirm
在執行 Publish-Module之前,提示您進行確認。
參數屬性
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Credential
指定有權發佈指定套件提供者或來源之模組的用戶帳戶。
參數屬性
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-Exclude
定義要從已發佈模組中排除的檔案。
參數屬性
| 類型: | String[]
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ModuleNameParameterSet
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Force
強制命令執行,而不要求使用者確認。
參數屬性
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
只接受由 ValidateSet 屬性指定的有效值。
如需詳細資訊,請參閱 ValidateSet 屬性宣告 和 ValidateSetAttribute。
| 類型: | Version
|
| 預設值: | None |
| 接受的值: | 2.0 |
| 支援萬用字元: | False |
| 不要顯示: | False |
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-IconUri
指定模組圖示的 URL。 指定的圖示會顯示在模組的資源庫網頁上。
參數屬性
| 類型: | Uri
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-LicenseUri
指定您要發佈之模組的授權條款 URL。
參數屬性
| 類型: | Uri
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Name
指定您要發佈的模組名稱。
Publish-Module 會在 $Env:PSModulePath中搜尋指定的模組名稱。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ModuleNameParameterSet
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-NuGetApiKey
指定您想要用來將模組發佈至在線資源庫的 API 金鑰。 API 金鑰是在線資源庫中設定檔的一部分,可以在資源庫的用戶帳戶頁面上找到。 API 金鑰是 NuGet 特定的功能。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Path
指定您要發佈之模組的路徑。 此參數接受包含模組的資料夾路徑。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ModulePathParameterSet
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-ProjectUri
指定有關此項目的網頁 URL。
參數屬性
| 類型: | Uri
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ReleaseNotes
指定字串,其中包含您想要供此模組之使用者使用的版本資訊或批註。
參數屬性
| 類型: | String[]
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Repository
指定已執行 Register-PSRepository所註冊之存放庫的易記名稱。 存放庫必須具有 PublishLocation,這是有效的 NuGet URI。
您可以執行 來設定 publishLocation Set-PSRepository。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-RequiredVersion
指定要發佈的單一模組確切版本。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ModuleNameParameterSet
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
拿掉命令和資源,以標記的形式包含。 略過自動將標籤新增至模組。
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
將一或多個標籤新增至您要發佈的模組。 範例卷標包括 DesiredStateConfiguration、DSC、DSCResourceKit 或 PSModule。 以逗號分隔多個標籤。
| 類型: | String[]
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Publish-Module 執行時會發生什麼事。 指令未執行。
參數屬性
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸出
備註
Publish-Module 在 PowerShell 3.0 或更新版本的 PowerShell、Windows 7 或 Windows 2008 R2 和更新版本的 Windows 上執行。
這很重要
自 2020 年 4 月起,PowerShell 資源庫不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 如果您未使用 TLS 1.2 或更高版本,當您嘗試存取 PowerShell 資源庫時,會收到錯誤。 使用下列命令以確保您使用 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
如需詳細資訊,請參閱 PowerShell 部落格中的 公告 。
發佈模組需要顯示在模組資源庫頁面上的元數據。 必要的元數據包括模組名稱、版本、描述和作者。 大部分的元數據都是取自模組指令清單,但某些元數據可以在 Publish-Module 參數中指定,例如 Tag、ReleaseNote、IconUri、ProjectUri和 LicenseUri。 如需詳細資訊,請參閱 影響 PowerShell 資源庫 UI的套件指令清單值。