Condividi tramite


Register-PSResourceRepository

Registra un repository per le risorse di PowerShell.

Sintassi

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>]

Descrizione

Il cmdlet registra un repository NuGet contenente le risorse di PowerShell.

Esempio

Esempio 1

In questo esempio viene registrato il repository con il nome di 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

Esempio 2

In questo esempio viene registrato il repository predefinito PSGallery . A differenza dell'esempio precedente, non è possibile usare i parametri Name e Uri per registrare il PSGallery repository. Il PSGallery repository è registrato per impostazione predefinita, ma può essere rimosso. Usare questo comando per ripristinare la registrazione predefinita.

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

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

Esempio 3

In questo esempio vengono registrati più repository contemporaneamente. A tale scopo, viene usato il parametro Repository e viene fornita una matrice di tabelle hash. Ogni tabella hash può avere chiavi associate solo ai parametri per NameParameterSet o 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

Esempio 4

In questo esempio viene registrato un repository con informazioni sulle credenziali da recuperare da un insieme di credenziali SecretManagement registrato. È necessario che il modulo Microsoft.PowerShell.SecretManagement sia installato e che sia presente un insieme di credenziali registrato contenente il segreto archiviato. Il formato del segreto deve corrispondere ai requisiti del repository.

$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     :

Parametri

-ApiVersion

Specifica la versione dell'API usata dal repository. I valori validi sono:

  • v2 - usa l'API NuGet V2
  • v3 - usa l'API NuGet V3
  • local - usare questa opzione per i repository basati su file system
  • nugetServer : usare questa opzione per i repository basati su NuGet.Server

Il Register-PSResourceRepository cmdlet deve rilevare automaticamente la versione dell'API. Questo parametro consente di modificare la versione dell'API dopo aver registrato un repository.

Type:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSRepositoryInfo+APIVersion
Accepted values:unknown, v2, v3, local, nugetServer
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CredentialInfo

Oggetto PSCredentialInfo che include il nome di un insieme di credenziali e un segreto archiviato in un archivio Microsoft.PowerShell.SecretManagement .

Type:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSCredentialInfo
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Sovrascrive un repository se esiste già.

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

-Name

Nome del repository da registrare. Non può essere PSGallery.

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

-PassThru

Se specificato, visualizza il repository registrato correttamente e le relative informazioni.

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

-Priority

Specifica la classificazione della priorità del repository. I valori di priorità validi sono compresi tra 0 e 100. I valori inferiori hanno una classificazione con priorità più alta. Il valore predefinito è 50.

I repository vengono ordinati in base alla priorità e quindi in base al nome. Quando si cercano risorse in più repository, i cmdlet PSResourceGet eseguono ricerche nei repository usando questo ordinamento e restituiscono la prima corrispondenza trovata.

Type:Int32
Position:Named
Default value:50
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PSGallery

Se specificato, registra il repository PSGallery .

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

-Repository

Specifica una matrice di tabelle hash che contengono informazioni sul repository. Usare questo parametro per registrare più repository contemporaneamente. Ogni tabella hash può avere chiavi associate solo ai parametri per NameParameterSet o PSGalleryParameterSet.

Type:Hashtable[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Trusted

Specifica se il repository deve essere considerato attendibile.

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

-Uri

Specifica il percorso del repository da registrare. Il valore deve usare uno degli schemi URI seguenti:

  • https://
  • http://
  • ftp://
  • file://
Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

None

Output

Microsoft.PowerShell.PSResourceGet.UtilClasses.PSRepositoryInfo

Per impostazione predefinita, il cmdlet non produce alcun output. Quando si usa il parametro PassThru , il cmdlet restituisce un oggetto PSRepositoryInfo .

Note

I repository sono univoci in base al nome. Il tentativo di registrare un repository con lo stesso nome genera un errore.