Separation of install wizard and answer input

This commit is contained in:
Lord Hepipud 2019-10-28 17:10:33 +01:00
parent 1b424a1fc4
commit 236830d73c
2 changed files with 44 additions and 47 deletions

View file

@ -0,0 +1,44 @@
function Get-IcingaAgentInstallerAnswerInput()
{
param(
$Prompt,
[ValidateSet("y","n","v")]
$Default,
[switch]$Secure
);
$DefaultAnswer = '';
if ($Default -eq 'y') {
$DefaultAnswer = ' (Y/n)';
} elseif ($Default -eq 'n') {
$DefaultAnswer = ' (y/N)';
}
if (-Not $Secure) {
$answer = Read-Host -Prompt ([string]::Format('{0}{1}', $Prompt, $DefaultAnswer));
} else {
$answer = Read-Host -Prompt ([string]::Format('{0}{1}', $Prompt, $DefaultAnswer)) -AsSecureString;
}
if ($Default -ne 'v') {
$answer = $answer.ToLower();
$returnValue = 0;
if ([string]::IsNullOrEmpty($answer) -Or $answer -eq $Default) {
$returnValue = 1;
} else {
$returnValue = 0;
}
return @{
'result' = $returnValue;
'answer' = '';
}
}
return @{
'result' = 2;
'answer' = $answer;
}
}

View file

@ -300,50 +300,3 @@ function Get-IcingaAgentInstallCommand()
return $Installer;
}
}
function Get-IcingaAgentInstallerAnswerInput()
{
param(
$Prompt,
[ValidateSet("y","n","v")]
$Default,
[switch]$Secure
);
$DefaultAnswer = '';
if ($Default -eq 'y') {
$DefaultAnswer = ' (Y/n)';
} elseif ($Default -eq 'n') {
$DefaultAnswer = ' (y/N)';
}
if (-Not $Secure) {
$answer = Read-Host -Prompt ([string]::Format('{0}{1}', $Prompt, $DefaultAnswer));
} else {
$answer = Read-Host -Prompt ([string]::Format('{0}{1}', $Prompt, $DefaultAnswer)) -AsSecureString;
}
if ($Default -ne 'v') {
$answer = $answer.ToLower();
$returnValue = 0;
if ([string]::IsNullOrEmpty($answer) -Or $answer -eq $Default) {
$returnValue = 1;
} else {
$returnValue = 0;
}
return @{
'result' = $returnValue;
'answer' = '';
}
}
return @{
'result' = 2;
'answer' = $answer;
}
}
Export-ModuleMember -Function @( 'Start-IcingaAgentInstallWizard' );