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.

Tipo:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSRepositoryInfo+APIVersion
Valori accettati:unknown, v2, v3, local, nugetServer
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-CredentialInfo

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

Tipo:Microsoft.PowerShell.PSResourceGet.UtilClasses.PSCredentialInfo
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Force

Sovrascrive un repository se esiste già.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Name

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

Tipo:String
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PassThru

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

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly: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.

Tipo:Int32
Posizione:Named
Valore predefinito:50
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PSGallery

Se specificato, registra il repository PSGallery .

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:False
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly: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.

Tipo:Hashtable[]
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Trusted

Specifica se il repository deve essere considerato attendibile.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Uri

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

  • https://
  • http://
  • ftp://
  • file://
Tipo:String
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

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

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly: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.