Partager via


about_PSResourceGet

Brève description

Décrit comment utiliser la version 1.1.0-rc1 du module Microsoft.PowerShell.PSResourceGet.

Description longue

microsoft.PowerShell.PSResourceGet est une version mise à jour du module PowerShellGet entièrement écrit en C#.

Cette version de PowerShellGet se concentre sur quelques domaines clés :

  • Simplifier la base de code, ce qui facilite l’amélioration et la résolution des bogues
  • Supprimez la dépendance du module PackageManagement et utilisez directement la bibliothèque nuGet
  • Résoudre les problèmes d’utilisation durables qui seraient des changements cassants de v2
  • Maintenir la compatibilité des scripts existants écrits v2 via un module de compatibilité distinct
  • Améliorer les performances de recherche et d’installation

Modifications de conception

Les versions précédentes de PowerShellGet avaient des commandes distinctes pour fonctionner avec des modules et des scripts. Dans Microsoft.PowerShell.PSResourceGet, tous les packages de PowerShell Gallery sont définis en tant qu’objets PSResource.

Le tableau suivant présente les applets de commande disponibles dans PowerShellGet v3 et leurs équivalents v2.

Microsoft.PowerShell.PSResourceGet PowerShellGet v2
Compress-PSResource n/a
Find-PSResource Find-Command
Find-PSResource Find-DscResource
Find-PSResource Find-Module
Find-PSResource Find-Script
n/a Find-RoleCapability
Get-InstalledPSResource Get-InstalledModule
Get-InstalledPSResource Get-InstalledScript
Get-PSResourceRepository Get-PSRepository
Get-PSScriptFileInfo n/a
Import-PSGetRepository n/a
Install-PSResource Install-Module
Install-PSResource Install-Script
New-PSScriptFileInfo New-ScriptFileInfo
Publish-PSResource Publish-Module
Publish-PSResource Publish-Script
Register-PSResourceRepository Register-PSRepository
Save-PSResource Save-Module
Save-PSResource Save-Script
Set-PSResourceRepository Set-PSRepository
Test-PSScriptFileInfo Test-ScriptFileInfo
Uninstall-PSResource Uninstall-Module
Uninstall-PSResource Uninstall-Script
Unregister-PSResourceRepository Unregister-PSRepository
Update-PSModuleManifest Update-ModuleManifest
Update-PSResource Update-Module
Update-PSResource Update-Script
Update-PSScriptFileInfo Update-ScriptFileInfo

Recherche par plages de versions NuGet

Plusieurs applets de commande Microsoft.PowerShell.PSResourceGet fournissent un paramètre Version qui vous permet de spécifier une plage de versions à rechercher. Le paramètre Version utilise la syntaxe de contrôle de version NuGet. Pour plus d’informations sur les plages de versions NuGet, consultez de contrôle de version du package.

PowerShellGet prend en charge toutes les versions inclusives minimum répertoriées dans la documentation de la plage de versions NuGet. L’utilisation de 1.0.0.0 car la version ne génère pas les versions 1.0.0.0 et ultérieures (plage inclusive minimale). Au lieu de cela, la valeur est considérée comme la version requise. Pour rechercher une plage inclusive minimale, utilisez [1.0.0.0, ] comme plage de versions.

Recherche par ressources requises

L’applet de commande Install-PSResource a requiredResource et paramètres RequiredResourceFile utilisés pour rechercher objets PSResource correspondant à des critères spécifiques. Vous pouvez spécifier les critères de recherche à l’aide d’une table de hachage ou d’un objet JSON. Pour le paramètre RequiredResourceFile, la table de hachage est stockée dans un fichier .psd1 et l’objet JSON est stocké dans un fichier .json.

La table de hachage peut contenir des attributs pour plusieurs modules. L’exemple suivant montre la structure de la spécification du module :

@{
    <modulename> = @{
        version = '<version-spcification>'
        repository = '<reponame>'
        prerelease = '<boolean>'
    }
}

Cet exemple contient des spécifications pour trois modules. Comme vous le pouvez, les attributs de module sont facultatifs.

 @{
    TestModule = @{
        version = '[0.0.1,1.3.0]'
        repository = 'PSGallery'
    }

    TestModulePrerelease = @{
        version = '[0.0.0,0.0.5]'
        repository = 'PSGallery'
        prerelease = $true
    }

    TestModule99 = @{}
}

L’exemple suivant montre la même spécification au format JSON.

{
  "TestModule": {
    "version": "[0.0.1,1.3.0)",
    "repository": "PSGallery"
  },
  "TestModulePrerelease": {
    "version": "[0.0.0,0.0.5]",
    "repository": "PSGallery",
    "prerelease": "true"
  },
  "TestModule99": {}
}

Voir aussi