icinga-powershell-framework/lib/config/Read-IcingaPowerShellConfig.psm1

24 lines
659 B
PowerShell
Raw Normal View History

function Read-IcingaPowerShellConfig()
{
$ConfigDir = Get-IcingaPowerShellConfigDir;
$ConfigFile = Join-Path -Path $ConfigDir -ChildPath 'config.json';
if ($global:IcingaDaemonData.FrameworkRunningAsDaemon) {
if ($global:IcingaDaemonData.ContainsKey('Config')) {
return $global:IcingaDaemonData.Config;
}
}
if (-Not (Test-Path $ConfigFile)) {
return (New-Object -TypeName PSOBject);
}
[string]$Content = Get-Content -Path $ConfigFile;
if ([string]::IsNullOrEmpty($Content)) {
return (New-Object -TypeName PSOBject);
}
return (ConvertFrom-Json -InputObject $Content);
}