Source en amont de PowerShell Gallery
L’activation de sources en amont pour votre flux étend l’accès de vos développeurs aux packages à partir de registres publics. Dans cet article, vous allez apprendre à configurer PowerShell Gallery en tant que source en amont et à utiliser des packages PowerShell à partir du registre public.
Prérequis
- NuGet.exe
- Fournisseur d’informations d’identification Azure Artifacts
- Un organization Azure DevOps et un projet. Créez un organization ou un projet si ce n’est pas déjà fait.
- Un flux Azure Artifacts. Créez un flux si vous n’en avez pas déjà.
Ajouter une source en amont de PowerShell Gallery
Si la source en amont de PowerShell Gallery n’est pas disponible dans votre flux par défaut, vous pouvez l’ajouter comme suit :
Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez le bouton d’icône d’engrenage pour accéder à vos paramètres de flux.
Sélectionnez Sources en amont, puis Ajouter en amont.
Sélectionnez Source publique, puis PowerShell Gallery dans le menu déroulant. Sélectionnez Ajouter quand vous avez terminé.
Sélectionnez Enregistrer dans le coin supérieur droit pour enregistrer vos modifications. Sélectionnez Enregistrer à nouveau si vous y êtes invité à confirmer vos choix.
Se connecter au flux
Créez un jeton d’accès personnel avec des autorisations de lecture et d’écriture d’empaquetage>.
Exécutez les commandes suivantes dans une fenêtre d’invite PowerShell, en remplaçant les espaces réservés par les informations appropriées :
$patToken = "<YOUR_PERSONAL_ACCESS_TOKEN>" | ConvertTo-SecureString -AsPlainText -Force
$myCredentialsObject = New-Object System.Management.Automation.PSCredential("<USER_NAME>", $patToken)
Exécutez la commande suivante pour inscrire votre flux en tant que PSRepository. Remplacez les espaces réservés par les valeurs appropriées :
Flux à l'échelle du projet :
Register-PSRepository -Name "PSGalleryUpstream" -SourceLocation "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v2" -PublishLocation "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v2" -InstallationPolicy Trusted -Credential $myCredentialsObject
Flux d’étendue de l’organisation :
Register-PSRepository -Name "PSGalleryUpstream" -SourceLocation "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v2" -PublishLocation "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v2" -InstallationPolicy Trusted -Credential $myCredentialsObject
Enregistrer des packages en amont
Maintenant que vous avez ajouté PowerShell Gallery en tant que source en amont et inscrit votre flux en tant que PSRepository, chaque fois que vous installez un package en amont, une copie sera enregistrée dans votre flux. Dans l’exemple suivant, nous allons installer le module PSScriptAnalyzer :
Install-Module -Name PSScriptAnalyzer -Repository PSGalleryUpstream
Remarque
Pour enregistrer des packages à partir d’amont, vous devez disposer du rôle Flux et Lecteur en amont (Collaborateur) ou supérieur. Pour plus d’informations, consultez Gérer les autorisations .
Afficher les packages enregistrés
Vous pouvez accéder aux packages que vous avez enregistrés à partir de PowerShell Gallery en choisissant la source appropriée dans le menu déroulant.
Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Source à droite, puis Sélectionnez PowerShell Gallery pour filtrer les packages enregistrés en amont. Vous pouvez voir que le package PSScriptAnalyzer , que nous avons installé à l’étape précédente, a été enregistré dans notre flux.