From 55c6aee5d17b05f210089c4fdf15632300891bd6 Mon Sep 17 00:00:00 2001 From: Dreamcat4 Date: Wed, 20 Apr 2016 14:12:11 +0100 Subject: [PATCH] fix: win-scheduled-task strict-mode fixes --- windows/win_scheduled_task.ps1 | 45 ++++++++++++---------------------- 1 file changed, 15 insertions(+), 30 deletions(-) diff --git a/windows/win_scheduled_task.ps1 b/windows/win_scheduled_task.ps1 index b63bd130134..7d409050ae9 100644 --- a/windows/win_scheduled_task.ps1 +++ b/windows/win_scheduled_task.ps1 @@ -23,6 +23,13 @@ $ErrorActionPreference = "Stop" # POWERSHELL_COMMON $params = Parse-Args $args; + +$days_of_week = Get-Attr $params "days_of_week" $null; +$enabled = Get-Attr $params "enabled" $true | ConvertTo-Bool; +$description = Get-Attr $params "description" " "; +$path = Get-Attr $params "path" $null; +$argument = Get-Attr $params "argument" $null; + $result = New-Object PSObject; Set-Attr $result "changed" $false; @@ -40,33 +47,17 @@ if($state -eq "present") { $time = Get-Attr -obj $params -name time -failifempty $true -resultobj $result $user = Get-Attr -obj $params -name user -failifempty $true -resultobj $result } -if ($params.days_of_week) -{ - $days_of_week = $params.days_of_week -} -elseif ($frequency -eq "weekly") -{ - Fail-Json $result "missing required argument: days_of_week" -} -# Vars with defaults -if ($params.enabled) -{ - $enabled = $params.enabled | ConvertTo-Bool -} -else -{ - $enabled = $true #default -} -if ($params.description) +# Mandatory Vars +if ($frequency -eq "weekly") { - $description = $params.description -} -else -{ - $description = " " #default + if (!($days_of_week)) + { + Fail-Json $result "missing required argument: days_of_week" + } } -if ($params.path) + +if ($path) { $path = "\{0}\" -f $params.path } @@ -75,12 +66,6 @@ else $path = "\" #default } -# Optional vars -if ($params.argument) -{ - $argument = $params.argument -} - try { $task = Get-ScheduledTask -TaskPath "$path" | Where-Object {$_.TaskName -eq "$name"}