DSC WindowsPackageCab リソース

適用先:Windows PowerShell 5.1

Windows PowerShell Desired State Configuration (DSC) の WindowsPackageCab リソースは、ターゲット ノードで Windows cabinet (.cab) パッケージをインストールまたはアンインストールするメカニズムを備えています。

ターゲット ノードには DISM PowerShell モジュールをインストールする必要があります。 詳細については、「Use DISM in Windows PowerShell (Windows PowerShell の DISM の使用)」を参照してください。

注意

この DSC リソースのこのドキュメントでは、バージョン 7.2 より前の PowerShell に含まれているバージョンについて説明します。 PSDscResources モジュールには、Microsoft によって正式にサポートされている新規および更新された DSC リソースが含まれています。 PSDscResources モジュールは、PowerShell ギャラリーから入手できます。

詳細と更新されたドキュメントについては、 PSDscResources リファレンス ドキュメントを参照してください

構文

{
    Name = [string]
    SourcePath = [string]
    [ LogPath = [string] ]
    [ DependsOn = [string[]] ]
    Ensure = [string] { Absent | Present }
    [ PsDscRunAsCredential = [PSCredential] ]
}

Properties

プロパティ 説明
名前 特定の状態を保証するパッケージの名前を示します。
SourcePath パッケージが存在するパスを示します。
LogPath プロバイダーがパッケージをインストールまたはアンインストールするためのログ ファイルを保存する場所の完全パスを示します。

共通プロパティ

プロパティ 説明
DependsOn このリソースを構成する前に、他のリソースの構成を実行する必要があることを示します。 たとえば、最初に実行するリソース構成スクリプト ブロックの ID が ResourceName で、そのタイプが ResourceType である場合、このプロパティを使用する構文は DependsOn = "[ResourceType]ResourceName" になります。
Ensure パッケージがインストールされるかどうかを示します。 パッケージが確実にインストールされないようにする (またはパッケージがインストールされている場合はアンインストールされるようにする) には、このプロパティを Absent に設定します。 パッケージが確実にインストールされるようにするには、これを Present に設定します。 WindowsPackageCab リソースでは、Ensure は必須のプロパティです。
PsDscRunAsCredential リソース全体を実行するための資格情報を設定します。

次の例の構成は入力パラメーターを必要とし、$Name パラメーターで指定された .cab ファイルが確実にインストールされます。

Configuration Sample_WindowsPackageCab
{
    param
    (
        [Parameter (Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [String]
        $Name,

        [Parameter (Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [String]
        $SourcePath,

        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [String]
        $LogPath
    )

    Import-DscResource -ModuleName 'PSDscResources'

    WindowsPackageCab WindowsPackageCab1
    {
        Name = $Name
        Ensure = 'Present'
        SourcePath = $SourcePath
        LogPath = $LogPath
    }
}