Publish-Module
将指定模块从本机计算机发布到联机库。
语法
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>]
说明
cmdlet Publish-Module
使用 API 密钥将模块发布到基于 NuGet 的联机库,该密钥作为用户个人资料的一部分存储在库中。 可根据模块的名称或包含模块的文件夹路径指定要发布的模块。
这是 Microsoft.PowerShell.PSResourceGet 中 cmdlet 的代理 Publish-PSResource
cmdlet。 有关详细信息,请参阅 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
代理 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
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatVersion
代理 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
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
代理 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 的功能。
代理 cmdlet 将此参数映射到 的 Publish-PSResource
ApiKey 参数。
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
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
代理 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
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipAutomaticTags
代理 cmdlet 忽略此参数,因为它不受 Publish-PSResource
支持。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
代理 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 |
输入
输出
备注
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 的包清单值。