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>]
Описание
Командлет Publish-Module
публикует модуль в онлайн-коллекции на основе NuGet с помощью ключа API, хранящегося в составе профиля пользователя в коллекции. Модуль для публикации можно указывать с помощью имени модуля или пути к папке, содержащей модуль.
При указании модуля по имени публикует первый модуль, 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
Позволяет публиковать модули, помеченные как предварительные выпуски.
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
Определяет файлы, исключаемые из опубликованного модуля.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Принудительное выполнение команды без запроса на подтверждение пользователем.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatVersion
Принимает только допустимые значения, заданные атрибутом ValidateSet .
Дополнительные сведения см. в разделах Объявление атрибута ValidateSet и ValidateSetAttribute.
Type: | Version |
Accepted values: | 2.0 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
Указывает URL-адрес значка для модуля. Указанный значок отображается на веб-странице коллекции модуля.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
Указывает URL-адрес условий лицензирования для модуля, который требуется опубликовать.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Указывает имя модуля, который требуется опубликовать. Publish-Module
выполняет поиск указанного имени модуля в $Env:PSModulePath
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NuGetApiKey
Указывает ключ API, который требуется использовать для публикации модуля в онлайн-коллекции. Ключ API является частью вашего профиля в онлайн-коллекции. Его можно найти на странице учетной записи пользователя в коллекции. Ключ API — это функциональные возможности NuGet.
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
Указывает URL-адрес веб-страницы этого проекта.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
Указывает строку, содержащую заметки о выпуске или комментарии, которые должны быть доступны пользователям этой версии модуля.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Repository
Указывает понятное имя репозитория, зарегистрированного с помощью команды Register-PSRepository
. Репозиторий должен иметь значение PublishLocation, которое является допустимым URI NuGet.
Параметр PublishLocation можно задать, выполнив команду Set-PSRepository
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Указывает точную версию одного модуля для публикации.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipAutomaticTags
Удаляет команды и ресурсы из тегов. Пропускает автоматическое добавление тегов в модуль.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Добавляет один или несколько тегов в модуль, который вы публикуете. Примеры тегов включают DesiredStateConfiguration, DSC, DSCResourceKit или PSModule. Разделите несколько тегов запятыми.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при выполнении Publish-Module
. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
Выходные данные
Примечания
Publish-Module
Выполняется в PowerShell 3.0 или более поздних выпусках PowerShell, Windows 7 или Windows 2008 R2 и более поздних выпусках Windows.
Важно!
Начиная с апреля 2020 года коллекция PowerShell не поддерживает протокол TLS (Transport Layer Security) версий 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.