Register-PSResourceRepository

Регистрирует репозиторий для ресурсов PowerShell.

Синтаксис

Register-PSResourceRepository
        [-Name] <String>
        [-Uri] <String>
        [-Trusted]
        [-Priority <Int32>]
        [-ApiVersion <APIVersion>]
        [-CredentialInfo <PSCredentialInfo>]
        [-PassThru]
        [-Force]
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]
Register-PSResourceRepository
        [-PSGallery]
        [-Trusted]
        [-Priority <Int32>]
        [-PassThru]
        [-Force]
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]
Register-PSResourceRepository
        -Repository <Hashtable[]>
        [-PassThru]
        [-Force]
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]

Описание

Командлет регистрирует репозиторий NuGet, содержащий ресурсы PowerShell.

Примеры

Пример 1

В этом примере регистрируется репозиторий с именемPoshTestGallery.

Register-PSResourceRepository -Name PoshTestGallery -Uri 'https://www.poshtestgallery.com/api/v2'
Get-PSResourceRepository -Name PoshTestGallery

Name             Uri                                          Trusted   Priority
----             ---                                          -------   --------
PoshTestGallery  https://www.poshtestgallery.com/api/v2         False         50

Пример 2

В этом примере регистрируется репозиторий по умолчанию PSGallery . В отличие от предыдущего примера, нельзя использовать параметры Name и URI для регистрации PSGallery репозитория. Репозиторий PSGallery зарегистрирован по умолчанию, но его можно удалить. Используйте эту команду для восстановления регистрации по умолчанию.

Register-PSResourceRepository -PSGallery
Get-PSResourceRepository -Name 'PSGallery'

Name             Uri                                          Trusted   Priority
----             ---                                          -------   --------
PSGallery        https://www.powershellgallery.com/api/v2       False         50

Пример 3

В этом примере регистрируются несколько репозиториев одновременно. Для этого мы используем параметр репозитория и предоставляем массив хэш-наборов. Каждая хэш-версия может иметь только ключи, связанные с параметрами для NameParameterSet или PSGalleryParameterSet.

$arrayOfHashtables = @{
        Name = 'Local'
        Uri = 'D:/PSRepoLocal/'
        Trusted = $true
        Priority = 20
    },
    @{
        Name = 'PSGv3'
        Uri = 'https://www.powershellgallery.com/api/v3'
        Trusted = $true
        Priority = 50
    },
    @{
        PSGallery = $true
        Trusted = $true
        Priority = 10
    }
Register-PSResourceRepository -Repository $arrayOfHashtables
Get-PSResourceRepository

Name      Uri                                      Trusted Priority
----      ---                                      ------- --------
PSGallery https://www.powershellgallery.com/api/v2 True    10
Local     file:///D:/PSRepoLocal/                  True    20
PSGv3     https://www.powershellgallery.com/api/v3 True    50

Пример 4

В этом примере регистрируется репозиторий с учетными данными, которые будут получены из зарегистрированного хранилища SecretManagement . Необходимо установить модуль Microsoft.PowerShell.SecretManagement и иметь зарегистрированное хранилище, содержащее сохраненный секрет. Формат секрета должен соответствовать требованиям репозитория.

$parameters = @{
  Name = 'PSGv3'
  Uri = 'https://www.powershellgallery.com/api/v3'
  Trusted = $true
  Priority = 50
  CredentialInfo = [Microsoft.PowerShell.PSResourceGet.UtilClasses.PSCredentialInfo]::new(
    'SecretStore', 'TestSecret')
}
Register-PSResourceRepository @parameters
Get-PSResourceRepository | Select-Object * -ExpandProperty CredentialInfo

Name           : PSGv3
Uri            : https://www.powershellgallery.com/api/v3
Trusted        : True
Priority       : 50
CredentialInfo : Microsoft.PowerShell.PSResourceGet.UtilClasses.PSCredentialInfo
VaultName      : SecretStore
SecretName     : TestSecret
Credential     :

Параметры

-ApiVersion

Указывает версию API, используемую репозиторием. Допустимые значения:

  • v2 — использует API NuGet версии 2
  • v3 — использует API NuGet версии 3
  • local — используйте это для репозиториев на основе файловой системы
  • nugetServer — используйте это для репозиториев на основе NuGet.Server

Командлет Register-PSResourceRepository должен автоматически обнаруживать версию API. Этот параметр позволяет изменить версию API после регистрации репозитория.

Тип:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSRepositoryInfo+APIVersion
Допустимые значения:unknown, v2, v3, local, nugetServer
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CredentialInfo

Объект PSCredentialInfo , содержащий имя хранилища и секрет, хранящийся в хранилище Microsoft.PowerShell.SecretManagement .

Тип:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSCredentialInfo
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Force

Перезаписывает репозиторий, если он уже существует.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Name

Имя зарегистрированного репозитория. Не может быть PSGallery.

Тип:String
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PassThru

При указании отображается успешно зарегистрированный репозиторий и его сведения.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Priority

Задает ранжирование приоритета репозитория. Допустимые значения приоритета варьируются от 0 до 100. Более низкие значения имеют более высокий приоритет ранжирования. Значение по умолчанию — 50.

Репозитории сортируются по приоритету, а затем по имени. При поиске ресурсов в нескольких репозиториях командлеты PSResourceGet выполняют поиск репозиториев с помощью этого порядка сортировки и возвращают первое найдено совпадение.

Тип:Int32
Position:Named
Default value:50
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PSGallery

При указании регистрирует репозиторий PSGallery .

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Repository

Задает массив хэш-наборов, содержащих сведения о репозитории. Этот параметр используется для регистрации нескольких репозиториев одновременно. Каждая хэш-версия может иметь только ключи, связанные с параметрами для NameParameterSet или PSGalleryParameterSet.

Тип:Hashtable[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Trusted

Указывает, должен ли репозиторий быть доверенным.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Uri

Указывает расположение зарегистрированного репозитория. Значение должно использовать одну из следующих схем URI:

  • https://
  • http://
  • ftp://
  • file://
Тип:String
Position:1
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

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

None

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

Microsoft.PowerShell.PSResourceGet.UtilClasses.PSRepositoryInfo

По умолчанию командлет не выдает выходных данных. При использовании параметра PassThru командлет возвращает объект PSRepositoryInfo .

Примечания

Репозитории уникальны по имени. Попытка зарегистрировать репозиторий с тем же именем приводит к ошибке.