Captura de salida / error al invocar el script de PowerShell

Estoy tratando de invocar un script de PowerShell desde Puppet. El problema es que incluso si el script de PowerShell falla en la caja remota, aún muestra una ejecución exitosa como se muestra a continuación:

Aviso: /Stage[mainfont>/Main/Node[dev.abc.comfont>/Exec[Check UAC] / devoluciones: ejecutado con éxito

Contenido de mi bloque de nodos ensite.pp:

exec { 'Check UAC':
  command   => '& C:\temp\check_uac.ps1',
  provider  => powershell,
  logoutput => 'on_failure',
}

El script falló cuando intenté ejecutar desde la consola de PowerShell indicando que la política de ejecución estaba configurada como Restringida.

PS C:\> C:\temp\check_uac.ps1
C:\temp\check_uac.ps1 : File C:\temp\check_uac.ps1 cannot be loaded because running
scripts is disabled on this system. For more information, see about_Execution_Policies
at http://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ C:\temp\check_uac.ps1
+ ~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

¿Cómo puedo capturar el error anterior al invocar el script desde Puppet para evitar sorpresas más adelante?

Respuestas a la pregunta(1)

Su respuesta a la pregunta