about_PSResourceGet

Descripción breve

Describe cómo usar la versión 1.1.0-rc1 del módulo Microsoft.PowerShell.PSResourceGet.

Descripción larga

microsoft.PowerShell.PSResourceGet es una versión actualizada del módulo PowerShellGet completamente escrito en C#.

Esta versión de PowerShellGet se centra en algunas áreas clave:

  • Simplificación de la base de código, lo que facilita la mejora y corrección de errores
  • Quite la dependencia del módulo PackageManagement de y use directamente la biblioteca de nuGet de .
  • Solucionar problemas de facilidad de uso de larga duración que podrían ser cambios importantes de la versión 2
  • Mantener la compatibilidad con los scripts existentes escritos en v2 a través de un módulo de compatibilidad independiente
  • Mejora del rendimiento de búsqueda e instalación

Cambios de diseño

Las versiones anteriores de PowerShellGet tenían comandos independientes para trabajar con módulos y scripts. En Microsoft.PowerShell.PSResourceGet, todos los paquetes de la Galería de PowerShell se definen como objetos de PSResource.

En la tabla siguiente se muestran los cmdlets disponibles en PowerShellGet v3 y sus equivalentes 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

Buscar por intervalos de versiones de NuGet

Varios cmdlets de Microsoft.PowerShell.PSResourceGet proporcionan un parámetro Version que permite especificar un intervalo de versiones para buscar. El parámetro Version de usa la sintaxis de control de versiones de NuGet. Para obtener más información sobre los intervalos de versiones de NuGet, consulte Control de versiones de paquetes.

PowerShellGet admite todos los versión inclusiva mínima que se enumeran en la documentación del intervalo de versiones de NuGet. El uso de 1.0.0.0, ya que la versión no produce versiones 1.0.0.0 ni posteriores (intervalo inclusivo mínimo). En su lugar, el valor se considera la versión necesaria. Para buscar un intervalo inclusivo mínimo, use [1.0.0.0, ] como intervalo de versiones.

Búsqueda por recursos necesarios

El cmdlet Install-PSResource tiene RequiredResource y parámetros requiredResourceFile que se usan para buscar objetos PSResource que coincidan con criterios específicos. Puede especificar los criterios de búsqueda mediante una tabla hash o un objeto JSON. En el parámetro RequiredResourceFile, la tabla hash se almacena en un archivo .psd1 y el objeto JSON se almacena en un archivo .json.

La tabla hash puede contener atributos para varios módulos. En el ejemplo siguiente se muestra la estructura de la especificación del módulo:

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

Este ejemplo contiene especificaciones para tres módulos. Como puede, los atributos del módulo son opcionales.

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

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

    TestModule99 = @{}
}

En el ejemplo siguiente se muestra la misma especificación en formato JSON.

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

Consulte también