about_PSResourceGet

簡単な説明

Microsoft.PowerShell.PSResourceGet モジュールのバージョン 1.0.3 を使用する方法について説明します。

長い説明

Microsoft.PowerShell.PSResourceGet は、C# で完全に記述された PowerShellGet モジュールの更新バージョンです。

このバージョンの PowerShellGet では、いくつかの重要な領域に焦点を当てています。

  • コード ベースを簡略化して、バグの強化と修正を容易にする
  • PackageManagement モジュールへの依存関係を削除し、NuGet ライブラリを直接使用する
  • v2 からの変更を中断する可能性がある長年の使いやすさの問題に対処する
  • 別の互換性モジュールを使用して v2 を想定して記述された既存のスクリプトの互換性を維持する
  • 検索とインストールのパフォーマンスを向上させる

デザインの変更

以前のバージョンの PowerShellGet には、 モジュールとスクリプトを操作するための個別のコマンドがありました。 Microsoft.PowerShell.PSResourceGet では、PowerShell ギャラリー内のすべてのパッケージが PSResource オブジェクトとして定義されます。 これにより、コマンドレットの数がバージョン 2.x の 26 からバージョン 0.9 では 18 に減ります。

次の表は、 PowerShellGet v3 で使用できるコマンドレットとその v2 に相当するコマンドレットを示しています。

Microsoft.PowerShell.PSResourceGet PowerShellGet v2
Find-PSResource Find-Command
Find-PSResource Find-DscResource
Find-PSResource Find-Module
Find-PSResource Find-Script
該当なし Find-RoleCapability
Get-InstalledPSResource Get-InstalledModule
Get-InstalledPSResource Get-InstalledScript
Get-PSResourceRepository Get-PSRepository
Get-PSScriptFileInfo 該当なし
Import-PSGetRepository 該当なし
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

NuGet のバージョン範囲による検索

いくつかの Microsoft.PowerShell.PSResourceGet コマンドレットには、検索するバージョンの範囲を指定できる Version パラメーターが用意されています。 Version パラメーターは、NuGet のバージョン管理構文を使用します。 NuGet のバージョン範囲の詳細については、「 パッケージのバージョン管理」を参照してください。

PowerShellGet では、NuGet のバージョン範囲に関するドキュメントに記載されている 最小包括バージョン 以外のすべてのバージョンがサポートされています。 バージョンとして を使用 1.0.0.0 しても、バージョン 1.0.0.0 以降 (最小包括範囲) は生成されません。 代わりに、値は必要なバージョンと見なされます。 最小包括範囲を検索するには、バージョン範囲として を使用 [1.0.0.0, ] します。

必要なリソースによる検索

Install-PSResourceコマンドレットには、特定の条件に一致する PSResource オブジェクトを検索するために使用される RequiredResource パラメーターと RequiredResourceFile パラメーターがあります。 検索条件は、ハッシュテーブルまたは JSON オブジェクトを使用して指定できます。 RequiredResourceFile パラメーターの場合、ハッシュテーブルはファイルに.psd1格納され、JSON オブジェクトはファイルに.json格納されます。

ハッシュテーブルには、複数のモジュールの属性を含めることができます。 次の例は、モジュール仕様の構造を示しています。

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

この例には、3 つのモジュールの仕様が含まれています。 可能な限り、モジュール属性は省略可能です。

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

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

    TestModule99 = @{}
}

次の例では、同じ仕様を JSON 形式で示します。

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

こちらもご覧ください