PowerShell DSC недопустимое определение MOF для узла "localhost"

Поскольку я новичок в PowerShell, а также в DSC (и программировании в целом), у меня есть вопрос, на который я не смог найти ответ в интернете.

Я пытаюсь установить msi (или exe) с PS DSC. Я успешно написал скрипт для проверки и установки windows-функций, а также для установки JDK и установки ресурсов.
Но с моим следующим шагом я, кажется, перестарался.

так вот мой код до сих пор:

$ConfigurationData = @{
AllNodes = @(
            @{
                NodeName="*"
                PSDscAllowPlainTextPassword=$true
             }
       )
    }



    Configuration AppFabric
    {
        param (
            $TargetNodes,

            [Parameter(Mandatory=$false)]
            [PSCredential]$Credential
        )

        Import-DscResource –ModuleName ’PSDesiredStateConfiguration’

        Node localhost
        {

            Package AppFabric
            {
                 Ensure = "Present"
                 Name = "AppFabric"
                 Path  = "$PWDsrcAppFabricpackageappfabric-1.1-for-windows-server-64.msi"
                 ProductId = ""
                 LogPath = "$PWDlogs$env:computername-AppFabric"
                 Arguments = "/i HostingServices,CacheClient,HostingServicesAdmin"
                 Credential = "$Credential"
            }
         }
      }

      AppFabric -OutputPath $PWDmofAppFabric

      Start-DscConfiguration -Path $PWDmofAppFabric -wait -verbose -Force

Как вы видите, я пытаюсь установить AppFabric на Windows Server 2012R2 в актуальном состоянии.

При запуске сценария я получаю следующую ошибку:

Введите описание изображения здесь

Я понятия не имею, что это значит, и не могу найти в интернете ничего, что могло бы помочь.

Если вам нужна дополнительная информация, дайте мне знать, как я сказал, Я новичок в этом: x

Спасибо!

Редактировать:
Если я попытаюсь сделать это без учетных данных, я получу следующее:

VERBOSE: Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = SendConfigurationApply,'className' = MSFT_DSCLocalConfigurationManager,'namespaceName' = root/Microsoft/Windows/DesiredStateConfiguration'.

1 ответ

  1. Свойство Credential рассматривается как строка, а не PSCredential .
    Чтобы устранить проблему, удалите двойные кавычки из свойства Credential.

    Package AppFabric
                {
                     Ensure = "Present"
                     Name = "AppFabric"
                     Path  = "$PWD\src\AppFabric\package\appfabric-1.1-for-windows-server-64.msi"
                     ProductId = ""
                     LogPath = "$PWD\logs$env:computername-AppFabric"
                     Arguments = "/i HostingServices,CacheClient,HostingServicesAdmin"
                     Credential = $Credential
                }