Этот подход к использованию new-object
должен работать:
$cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate `
-ArgumentList @(,$bytes)
Фокус в том, что PowerShell ожидает массив аргументов конструктора. Когда есть только один аргумент, и это массив, он может запутать алгоритм разрешения перегрузки PowerShell. Вышеприведенный код помогает, поместив массив байтов в массив только с одним элементом.
Вам необходимо создать раздел _meta
в вашем JSON:
Система сценариев инвентаризации, описанная выше, работает для всех версий Ansible, но вызов --host для каждого хоста может быть довольно неэффективным, особенно если он включает вызовы API для удаленная подсистема.
Чтобы избежать этой неэффективности, если скрипт инвентаризации возвращает элемент верхнего уровня, называемый «_meta», можно вернуть все переменные хоста за одно выполнение скрипта. Когда этот метаэлемент содержит значение для «hostvars», сценарий инвентаризации не будет вызываться с --host для каждого хоста. Это приводит к значительному увеличению производительности для большого количества хостов.
BLOCKQUOTE>