Invoke-DscResource

Executa um método de um recurso de Desired State Configuration (DSC) do PowerShell especificado.

Syntax

Invoke-DscResource
      [-Name] <String>
      [[-ModuleName] <ModuleSpecification>]
      [-Method] <String>
      [-Property] <Hashtable>
      [<CommonParameters>]

Description

O cmdlet Invoke-DscResource executa um método de um recurso de DSC (Desired State Configuration) do PowerShell especificado.

Esse cmdlet invoca um recurso de DSC diretamente, sem criar um documento de configuração. Usando esse cmdlet, os produtos de gerenciamento de configuração podem gerenciar windows ou Linux com recursos de DSC.

Observação

Antes de PSDesiredStateConfiguration 2.0.6, usar Invoke-DscResource no PowerShell 7 requer a habilitação de um recurso experimental do PowerShell. Para usar o cmdlet nas versões 2.0.0 a 2.0.5, habilite-o com o comando a seguir.

Enable-ExperimentalFeature PSDesiredStateConfiguration.InvokeDscResource

Exemplos

Exemplo 1: invocar o método Set de um recurso especificando suas propriedades obrigatórias

Este exemplo invoca o método Set de um recurso chamado WindowsProcess e fornece as propriedades Path e Arguments obrigatórias para iniciar o processo especificado do Windows.

Invoke-DscResource -Name WindowsProcess -Method Set -ModuleName PSDesiredStateConfiguration -Property @{
  Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
  Arguments = ''
}

Exemplo 2: Invocar o método Test de um recurso para um módulo especificado

Este exemplo invoca o método Test de um recurso chamado WindowsProcess, que está no módulo chamado PSDesiredStateConfiguration.

$SplatParam = @{
    Name       = 'WindowsProcess'
    ModuleName = 'PSDesiredStateConfiguration'
    Method     = 'Test'
    Property   = @{
        Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
        Arguments = ''
    }
}

Invoke-DscResource @SplatParam

Parâmetros

-Method

Especifica o método do recurso que esse cmdlet invoca. Os valores aceitáveis para esse parâmetro são: Get, Set e Test.

Type:String
Accepted values:Get, Set, Test
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ModuleName

Especifica o nome do módulo que fornece o Recurso DSC especificado a ser invocado.

Type:ModuleSpecification
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Especifica o nome do recurso DSC a ser invocado.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Property

Especifica o nome da propriedade de recurso e seu valor em uma tabela de hash como chave e valor, respectivamente.

Type:Hashtable
Position:3
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String

ModuleSpecification

Saídas

Object

Observações

  • Em Windows PowerShell recursos 5.1 foram executados no contexto do sistema, a menos que especificado com o contexto do usuário usando a chave PsDscRunAsCredential. No PowerShell 7.0, os recursos são executados no contexto do usuário e não há mais suporte para PsDscRunAsCredential . Usar essa chave faz com que o cmdlet gere uma exceção.

  • A partir do PowerShell 7, Invoke-DscResource não há mais suporte à invocação de recursos de DSC WMI. Isso inclui os recursos de Arquivo e Log em PSDesiredStateConfiguration.