Register-PSRepository

Регистрирует репозиторий PowerShell.

Синтаксис

Register-PSRepository
        [-Name] <String>
        [-SourceLocation] <Uri>
        [-PublishLocation <Uri>]
        [-ScriptSourceLocation <Uri>]
        [-ScriptPublishLocation <Uri>]
        [-Credential <PSCredential>]
        [-InstallationPolicy <String>]
        [-Proxy <Uri>]
        [-ProxyCredential <PSCredential>]
        [-PackageManagementProvider <String>]
        [<CommonParameters>]
Register-PSRepository
        [-Default]
        [-InstallationPolicy <String>]
        [-Proxy <Uri>]
        [-ProxyCredential <PSCredential>]
        [<CommonParameters>]

Описание

Командлет Register-PSRepository регистрирует репозиторий по умолчанию для модулей PowerShell. После регистрации репозитория на него можно ссылаться с помощью Find-Moduleкомандлетов , Install-Moduleи Publish-Module . Зарегистрированный репозиторий становится репозиторием по умолчанию в Find-Module и Install-Module.

Информация о зарегистрированных репозиториях привязана к конкретному пользователю. Они не регистрируются в контексте всей системы.

Каждый зарегистрированный репозиторий связан с поставщиком пакетов OneGet, который задается с помощью параметра PackageManagementProvider . Каждый поставщик OneGet предназначен для взаимодействия с определенным типом репозитория. Например, поставщик NuGet предназначен для взаимодействия с репозиториями на основе NuGet. Если поставщик OneGet не указан во время регистрации, PowerShellGet пытается найти поставщика OneGet, который может обрабатывать указанное исходное расположение.

Примеры

Пример 1. Регистрация репозитория

$parameters = @{
  Name = "myNuGetSource"
  SourceLocation = "https://www.myget.org/F/mypsrepository/api/v2"
  PublishLocation = "https://www.myget.org/F/mypsrepository/api/v2/Packages"
  InstallationPolicy = 'Trusted'
}
Register-PSRepository @parameters
Get-PSRepository

Name                SourceLocation          OneGetProvider       InstallationPolicy
----                --------------          --------------       ------------------
PSGallery           http://go.micro...      NuGet                Untrusted
myNuGetSource       https://myget.c...      NuGet                Trusted

Первая команда регистрируется https://www.myget.org/F/mypsrepository/ в качестве репозитория для текущего пользователя. После регистрации myNuGetSource вы можете явно ссылаться на него при поиске, установке и публикации модулей. Так как параметр PackageManagementProvider не указан, репозиторий явно не связан с поставщиком пакетов OneGet, поэтому PowerShellGet опрашивает доступных поставщиков пакетов и связывает его с поставщиком NuGet.

Вторая команда получает зарегистрированные репозитории и отображает результаты.

Параметры

-Credential

Указывает учетные данные учетной записи, которая имеет права на регистрацию репозитория.

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

-Default

Параметр используется для регистрации PSGallery. Это необходимо сделать, только если вы удалили репозиторий PSGallery .

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

-InstallationPolicy

Указывает политику установки. Допустимые значения: Trusted, UnTrusted. Значение по умолчанию — UnTrusted.

Политика установки репозитория определяет поведение PowerShell при установке из этого репозитория. При установке модулей из репозитория untrusted пользователю будет предложено подтвердить.

Параметр InstallationPolicy можно задать с помощью командлета Set-PSRepository .

Type:String
Accepted values:Trusted, Untrusted
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Указывает имя репозитория для регистрации. Это имя можно использовать для указания репозитория в командлетах, таких как Find-Module и Install-Module.

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

-PackageManagementProvider

Указывает поставщик пакетов OneGet. Если не указать значение для этого параметра, PowerShellGet опрашивает доступных поставщиков пакетов и связывает этот репозиторий с первым поставщиком пакетов, который указывает, что он может обрабатывать репозиторий.

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

-Proxy

Указывает прокси-сервер для запроса, а не подключение напрямую к интернет-ресурсу.

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

-ProxyCredential

Указывает учетную запись пользователя, имеющую разрешение на использование прокси-сервера, который задается параметром Proxy.

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

-PublishLocation

Указывает универсальный код ресурса (URI) расположения публикации для модулей. Например, для репозиториев на основе NuGet расположение публикации аналогично https://someNuGetUrl.com/api/v2/package.

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

-ScriptPublishLocation

Указывает универсальный код ресурса (URI) расположения публикации для скриптов. Например, для репозиториев на основе NuGet расположение публикации аналогично https://someNuGetUrl.com/api/v2/package/.

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

-ScriptSourceLocation

Указывает универсальный код ресурса (URI) для обнаружения и установки скриптов из этого репозитория. URI может быть серверным каналом NuGet (наиболее распространенная ситуация), HTTP, HTTPS, FTP или расположением файла.

Например, для репозиториев на основе NuGet исходное расположение аналогично https://someNuGetUrl.com/api/v2/items/psscript.

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

-SourceLocation

Указывает URI для обнаружения и установки модулей из этого репозитория. URI может быть серверным каналом NuGet (наиболее распространенная ситуация), HTTP, HTTPS, FTP или расположением файла.

Например, для репозиториев на основе NuGet исходное расположение аналогично https://someNuGetUrl.com/api/v2.

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

Входные данные

PSCredential

Uri

Выходные данные

Object

Примечания

Важно!

Начиная с апреля 2020 года коллекция PowerShell не поддерживает протокол TLS (Transport Layer Security) версий 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке доступа к коллекции PowerShell возникнет ошибка. Чтобы проверить, используется ли TLS 1.2, выполните следующую команду:

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

Дополнительные сведения см. в объявлении в блоге, посвященном PowerShell.