mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-28 15:41:22 -07:00
win_scheduled_task_stat: add new module to get stat on scheduled tasks (#30602)
* win_scheduled_task_stat: add new module to get stat on scheduled tasks * fixed up linting errors and aliases file * I should learn how to spell * removing URI from test * added state information for the task * removed argument so task stays running
This commit is contained in:
parent
0e9ae5b8cc
commit
59187358ee
11 changed files with 808 additions and 238 deletions
|
@ -1,278 +0,0 @@
|
|||
#!powershell
|
||||
#Requires -Module Ansible.ModuleUtils.Legacy
|
||||
#Requires -Module Ansible.ModuleUtils.SID
|
||||
|
||||
$params = Parse-Args -arguments $args
|
||||
$path = Get-AnsibleParam -obj $params -name "path" -type "str" -failifempty $true
|
||||
$name = Get-AnsibleParam -obj $params -name "name" -type "str"
|
||||
|
||||
$result = @{
|
||||
changed = $false
|
||||
}
|
||||
|
||||
Add-Type -TypeDefinition @"
|
||||
public enum TASK_ACTION_TYPE
|
||||
{
|
||||
TASK_ACTION_EXEC = 0,
|
||||
// The below are not supported and are only kept for documentation purposes
|
||||
TASK_ACTION_COM_HANDLER = 5,
|
||||
TASK_ACTION_SEND_EMAIL = 6,
|
||||
TASK_ACTION_SHOW_MESSAGE = 7
|
||||
}
|
||||
|
||||
public enum TASK_LOGON_TYPE
|
||||
{
|
||||
TASK_LOGON_NONE = 0,
|
||||
TASK_LOGON_PASSWORD = 1,
|
||||
TASK_LOGON_S4U = 2,
|
||||
TASK_LOGON_INTERACTIVE_TOKEN = 3,
|
||||
TASK_LOGON_GROUP = 4,
|
||||
TASK_LOGON_SERVICE_ACCOUNT = 5,
|
||||
TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORD = 6
|
||||
}
|
||||
|
||||
public enum TASK_RUN_LEVEL
|
||||
{
|
||||
TASK_RUNLEVEL_LUA = 0,
|
||||
TASK_RUNLEVEL_HIGHEST = 1
|
||||
}
|
||||
|
||||
public enum TASK_TRIGGER_TYPE2
|
||||
{
|
||||
TASK_TRIGGER_EVENT = 0,
|
||||
TASK_TRIGGER_TIME = 1,
|
||||
TASK_TRIGGER_DAILY = 2,
|
||||
TASK_TRIGGER_WEEKLY = 3,
|
||||
TASK_TRIGGER_MONTHLY = 4,
|
||||
TASK_TRIGGER_MONTHLYDOW = 5,
|
||||
TASK_TRIGGER_IDLE = 6,
|
||||
TASK_TRIGGER_REGISTRATION = 7,
|
||||
TASK_TRIGGER_BOOT = 8,
|
||||
TASK_TRIGGER_LOGON = 9,
|
||||
TASK_TRIGGER_SESSION_STATE_CHANGE = 11
|
||||
}
|
||||
"@
|
||||
|
||||
Function Get-PropertyValue($task_property, $com, $property) {
|
||||
$raw_value = $com.$property
|
||||
|
||||
if ($raw_value -eq $null) {
|
||||
return $null
|
||||
}
|
||||
|
||||
switch ($property) {
|
||||
DaysOfWeek {
|
||||
$value_list = @()
|
||||
$map = @(
|
||||
@{ day = "sunday"; bitwise = 0x01 }
|
||||
@{ day = "monday"; bitwise = 0x02 }
|
||||
@{ day = "tuesday"; bitwise = 0x04 }
|
||||
@{ day = "wednesday"; bitwise = 0x08 }
|
||||
@{ day = "thursday"; bitwise = 0x10 }
|
||||
@{ day = "friday"; bitwise = 0x20 }
|
||||
@{ day = "saturday"; bitwise = 0x40 }
|
||||
)
|
||||
foreach ($entry in $map) {
|
||||
$day = $entry.day
|
||||
$bitwise = $entry.bitwise
|
||||
if ($raw_value -band $bitwise) {
|
||||
$value_list += $day
|
||||
}
|
||||
}
|
||||
|
||||
$value = $value_list -join ","
|
||||
break
|
||||
}
|
||||
DaysOfMonth {
|
||||
$value_list = @()
|
||||
$map = @(
|
||||
@{ day = "1"; bitwise = 0x01 }
|
||||
@{ day = "2"; bitwise = 0x02 }
|
||||
@{ day = "3"; bitwise = 0x04 }
|
||||
@{ day = "4"; bitwise = 0x08 }
|
||||
@{ day = "5"; bitwise = 0x10 }
|
||||
@{ day = "6"; bitwise = 0x20 }
|
||||
@{ day = "7"; bitwise = 0x40 }
|
||||
@{ day = "8"; bitwise = 0x80 }
|
||||
@{ day = "9"; bitwise = 0x100 }
|
||||
@{ day = "10"; bitwise = 0x200 }
|
||||
@{ day = "11"; bitwise = 0x400 }
|
||||
@{ day = "12"; bitwise = 0x800 }
|
||||
@{ day = "13"; bitwise = 0x1000 }
|
||||
@{ day = "14"; bitwise = 0x2000 }
|
||||
@{ day = "15"; bitwise = 0x4000 }
|
||||
@{ day = "16"; bitwise = 0x8000 }
|
||||
@{ day = "17"; bitwise = 0x10000 }
|
||||
@{ day = "18"; bitwise = 0x20000 }
|
||||
@{ day = "19"; bitwise = 0x40000 }
|
||||
@{ day = "20"; bitwise = 0x80000 }
|
||||
@{ day = "21"; bitwise = 0x100000 }
|
||||
@{ day = "22"; bitwise = 0x200000 }
|
||||
@{ day = "23"; bitwise = 0x400000 }
|
||||
@{ day = "24"; bitwise = 0x800000 }
|
||||
@{ day = "25"; bitwise = 0x1000000 }
|
||||
@{ day = "26"; bitwise = 0x2000000 }
|
||||
@{ day = "27"; bitwise = 0x4000000 }
|
||||
@{ day = "28"; bitwise = 0x8000000 }
|
||||
@{ day = "29"; bitwise = 0x10000000 }
|
||||
@{ day = "30"; bitwise = 0x20000000 }
|
||||
@{ day = "31"; bitwise = 0x40000000 }
|
||||
)
|
||||
|
||||
foreach ($entry in $map) {
|
||||
$day = $entry.day
|
||||
$bitwise = $entry.bitwise
|
||||
if ($raw_value -band $bitwise) {
|
||||
$value_list += $day
|
||||
}
|
||||
}
|
||||
|
||||
$value = $value_list -join ","
|
||||
break
|
||||
}
|
||||
WeeksOfMonth {
|
||||
$value_list = @()
|
||||
$map = @(
|
||||
@{ week = "1"; bitwise = 0x01 }
|
||||
@{ week = "2"; bitwise = 0x02 }
|
||||
@{ week = "3"; bitwise = 0x04 }
|
||||
@{ week = "4"; bitwise = 0x04 }
|
||||
)
|
||||
|
||||
foreach ($entry in $map) {
|
||||
$week = $entry.week
|
||||
$bitwise = $entry.bitwise
|
||||
if ($raw_value -band $bitwise) {
|
||||
$value_list += $week
|
||||
}
|
||||
}
|
||||
|
||||
$value = $value_list -join ","
|
||||
break
|
||||
}
|
||||
MonthsOfYear {
|
||||
$value_list = @()
|
||||
$map = @(
|
||||
@{ month = "january"; bitwise = 0x01 }
|
||||
@{ month = "february"; bitwise = 0x02 }
|
||||
@{ month = "march"; bitwise = 0x04 }
|
||||
@{ month = "april"; bitwise = 0x08 }
|
||||
@{ month = "may"; bitwise = 0x10 }
|
||||
@{ month = "june"; bitwise = 0x20 }
|
||||
@{ month = "july"; bitwise = 0x40 }
|
||||
@{ month = "august"; bitwise = 0x80 }
|
||||
@{ month = "september"; bitwise = 0x100 }
|
||||
@{ month = "october"; bitwise = 0x200 }
|
||||
@{ month = "november"; bitwise = 0x400 }
|
||||
@{ month = "december"; bitwise = 0x800 }
|
||||
)
|
||||
|
||||
foreach ($entry in $map) {
|
||||
$month = $entry.month
|
||||
$bitwise = $entry.bitwise
|
||||
if ($raw_value -band $bitwise) {
|
||||
$value_list += $month
|
||||
}
|
||||
}
|
||||
|
||||
$value = $value_list -join ","
|
||||
break
|
||||
}
|
||||
Type {
|
||||
if ($task_property -eq "actions") {
|
||||
$value = [Enum]::ToObject([TASK_ACTION_TYPE], $raw_value).ToString()
|
||||
} elseif ($task_property -eq "triggers") {
|
||||
$value = [Enum]::ToObject([TASK_TRIGGER_TYPE2], $raw_value).ToString()
|
||||
}
|
||||
break
|
||||
}
|
||||
RunLevel {
|
||||
$value = [Enum]::ToObject([TASK_RUN_LEVEL], $raw_value).ToString()
|
||||
break
|
||||
}
|
||||
LogonType {
|
||||
$value = [Enum]::ToObject([TASK_LOGON_TYPE], $raw_value).ToString()
|
||||
break
|
||||
}
|
||||
UserId {
|
||||
$sid = Convert-ToSID -account_name $raw_value
|
||||
$value = Convert-FromSid -sid $sid
|
||||
}
|
||||
GroupId {
|
||||
$sid = Convert-ToSID -account_name $raw_value
|
||||
$value = Convert-FromSid -sid $sid
|
||||
}
|
||||
default {
|
||||
$value = $raw_value
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
return ,$value
|
||||
}
|
||||
|
||||
$service = New-Object -ComObject Schedule.Service
|
||||
$service.Connect()
|
||||
|
||||
try {
|
||||
$task_folder = $service.GetFolder($path)
|
||||
$result.folder_exists = $true
|
||||
} catch {
|
||||
$result.folder_exists = $false
|
||||
$task_folder = $null
|
||||
}
|
||||
|
||||
$folder_tasks = $task_folder.GetTasks(1)
|
||||
$folder_task_names = @()
|
||||
$folder_task_count = 0
|
||||
$task = $null
|
||||
for ($i = 1; $i -le $folder_tasks.Count; $i++) {
|
||||
$task_name = $folder_tasks.Item($i).Name
|
||||
$folder_task_names += $task_name
|
||||
$folder_task_count += 1
|
||||
|
||||
if ($name -ne $null -and $task_name -eq $name) {
|
||||
$task = $folder_tasks.Item($i)
|
||||
}
|
||||
}
|
||||
$result.folder_task_names = $folder_task_names
|
||||
$result.folder_task_count = $folder_task_count
|
||||
|
||||
if ($name -ne $null) {
|
||||
if ($task -ne $null) {
|
||||
$task_definition = $task.Definition
|
||||
$result.task_exists = $true
|
||||
$result.task = @{}
|
||||
|
||||
$properties = @("principal", "registration_info", "settings")
|
||||
$collection_properties = @("actions", "triggers")
|
||||
|
||||
foreach ($property in $properties) {
|
||||
$property_name = $property -replace "_"
|
||||
$result.task.$property = @{}
|
||||
$values = $task_definition.$property_name
|
||||
Get-Member -InputObject $values -MemberType Property | % {
|
||||
$result.task.$property.$($_.Name) = (Get-PropertyValue -task_property $property -com $values -property $_.Name)
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($property in $collection_properties) {
|
||||
$result.task.$property = @()
|
||||
$collection = $task_definition.$property
|
||||
$collection_count = $collection.Count
|
||||
for ($i = 1; $i -le $collection_count; $i++) {
|
||||
$item = $collection.Item($i)
|
||||
$item_info = @{}
|
||||
|
||||
Get-Member -InputObject $item -MemberType Property | % {
|
||||
$item_info.$($_.Name) = (Get-PropertyValue -task_property $property -com $item -property $_.Name)
|
||||
}
|
||||
$result.task.$property += $item_info
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$result.task_exists = $false
|
||||
}
|
||||
}
|
||||
|
||||
Exit-Json -obj $result
|
|
@ -11,7 +11,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create task (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_task_result_check
|
||||
|
@ -33,7 +33,7 @@
|
|||
register: create_task
|
||||
|
||||
- name: get result of create task
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_task_result
|
||||
|
@ -43,12 +43,12 @@
|
|||
that:
|
||||
- create_task|changed
|
||||
- create_task_result.task_exists == True
|
||||
- create_task_result.task.actions|count == 1
|
||||
- create_task_result.task.actions[0].Path == "cmd.exe"
|
||||
- create_task_result.task.actions[0].Arguments == "/c echo hi"
|
||||
- create_task_result.task.actions[0].WorkingDirectory == None
|
||||
- create_task_result.task.registration_info.Description == "Original Description"
|
||||
- create_task_result.task.triggers|count == 0
|
||||
- create_task_result.actions|count == 1
|
||||
- create_task_result.actions[0].path == "cmd.exe"
|
||||
- create_task_result.actions[0].arguments == "/c echo hi"
|
||||
- create_task_result.actions[0].working_directory == None
|
||||
- create_task_result.registration_info.description == "Original Description"
|
||||
- create_task_result.triggers|count == 0
|
||||
|
||||
- name: create task (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -78,7 +78,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of change task (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: change_task_result_check
|
||||
|
@ -87,12 +87,12 @@
|
|||
assert:
|
||||
that:
|
||||
- change_task_check|changed
|
||||
- change_task_result_check.task.actions|count == 1
|
||||
- change_task_result_check.task.registration_info.Author == None
|
||||
- change_task_result_check.task.registration_info.Description == "Original Description"
|
||||
- change_task_result_check.task.settings.AllowDemandStart == true
|
||||
- change_task_result_check.task.settings.RestartCount == 0
|
||||
- change_task_result_check.task.settings.RestartInterval == None
|
||||
- change_task_result_check.actions|count == 1
|
||||
- change_task_result_check.registration_info.author == None
|
||||
- change_task_result_check.registration_info.description == "Original Description"
|
||||
- change_task_result_check.settings.allow_demand_start == true
|
||||
- change_task_result_check.settings.restart_count == 0
|
||||
- change_task_result_check.settings.restart_interval == None
|
||||
|
||||
- name: change task
|
||||
win_scheduled_task:
|
||||
|
@ -106,7 +106,7 @@
|
|||
register: change_task
|
||||
|
||||
- name: get result of change task
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: change_task_result
|
||||
|
@ -115,12 +115,12 @@
|
|||
assert:
|
||||
that:
|
||||
- change_task|changed
|
||||
- change_task_result.task.actions|count == 1
|
||||
- change_task_result.task.registration_info.Author == "Cow Inc."
|
||||
- change_task_result.task.registration_info.Description == "Test for Ansible"
|
||||
- change_task_result.task.settings.AllowDemandStart == false
|
||||
- change_task_result.task.settings.RestartCount == 5
|
||||
- change_task_result.task.settings.RestartInterval == "PT1M"
|
||||
- change_task_result.actions|count == 1
|
||||
- change_task_result.registration_info.author == "Cow Inc."
|
||||
- change_task_result.registration_info.description == "Test for Ansible"
|
||||
- change_task_result.settings.allow_demand_start == false
|
||||
- change_task_result.settings.restart_count == 5
|
||||
- change_task_result.settings.restart_interval == "PT1M"
|
||||
|
||||
- name: change task (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -152,7 +152,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of add task action (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: add_task_action_result_check
|
||||
|
@ -161,10 +161,10 @@
|
|||
assert:
|
||||
that:
|
||||
- add_task_action_check|changed
|
||||
- add_task_action_result_check.task.actions|count == 1
|
||||
- add_task_action_result_check.task.actions[0].Path == "cmd.exe"
|
||||
- add_task_action_result_check.task.actions[0].Arguments == "/c echo hi"
|
||||
- add_task_action_result_check.task.actions[0].WorkingDirectory == None
|
||||
- add_task_action_result_check.actions|count == 1
|
||||
- add_task_action_result_check.actions[0].path == "cmd.exe"
|
||||
- add_task_action_result_check.actions[0].arguments == "/c echo hi"
|
||||
- add_task_action_result_check.actions[0].working_directory == None
|
||||
|
||||
- name: add task action
|
||||
win_scheduled_task:
|
||||
|
@ -179,7 +179,7 @@
|
|||
register: add_task_action
|
||||
|
||||
- name: get result of add task action
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: add_task_action_result
|
||||
|
@ -188,13 +188,13 @@
|
|||
assert:
|
||||
that:
|
||||
- add_task_action|changed
|
||||
- add_task_action_result.task.actions|count == 2
|
||||
- add_task_action_result.task.actions[0].Path == "cmd.exe"
|
||||
- add_task_action_result.task.actions[0].Arguments == "/c echo hi"
|
||||
- add_task_action_result.task.actions[0].WorkingDirectory == None
|
||||
- add_task_action_result.task.actions[1].Path == "powershell.exe"
|
||||
- add_task_action_result.task.actions[1].Arguments == "-File C:\\ansible\\script.ps1"
|
||||
- add_task_action_result.task.actions[1].WorkingDirectory == "C:\\ansible"
|
||||
- add_task_action_result.actions|count == 2
|
||||
- add_task_action_result.actions[0].path == "cmd.exe"
|
||||
- add_task_action_result.actions[0].arguments == "/c echo hi"
|
||||
- add_task_action_result.actions[0].working_directory == None
|
||||
- add_task_action_result.actions[1].path == "powershell.exe"
|
||||
- add_task_action_result.actions[1].arguments == "-File C:\\ansible\\script.ps1"
|
||||
- add_task_action_result.actions[1].working_directory == "C:\\ansible"
|
||||
|
||||
- name: add task action (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -225,7 +225,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of remove task action (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_task_action_result_check
|
||||
|
@ -234,13 +234,13 @@
|
|||
assert:
|
||||
that:
|
||||
- remove_task_action_check|changed
|
||||
- remove_task_action_result_check.task.actions|count == 2
|
||||
- remove_task_action_result_check.task.actions[0].Path == "cmd.exe"
|
||||
- remove_task_action_result_check.task.actions[0].Arguments == "/c echo hi"
|
||||
- remove_task_action_result_check.task.actions[0].WorkingDirectory == None
|
||||
- remove_task_action_result_check.task.actions[1].Path == "powershell.exe"
|
||||
- remove_task_action_result_check.task.actions[1].Arguments == "-File C:\\ansible\\script.ps1"
|
||||
- remove_task_action_result_check.task.actions[1].WorkingDirectory == "C:\\ansible"
|
||||
- remove_task_action_result_check.actions|count == 2
|
||||
- remove_task_action_result_check.actions[0].path == "cmd.exe"
|
||||
- remove_task_action_result_check.actions[0].arguments == "/c echo hi"
|
||||
- remove_task_action_result_check.actions[0].working_directory == None
|
||||
- remove_task_action_result_check.actions[1].path == "powershell.exe"
|
||||
- remove_task_action_result_check.actions[1].arguments == "-File C:\\ansible\\script.ps1"
|
||||
- remove_task_action_result_check.actions[1].working_directory == "C:\\ansible"
|
||||
|
||||
- name: remove task action
|
||||
win_scheduled_task:
|
||||
|
@ -253,7 +253,7 @@
|
|||
register: remove_task_action
|
||||
|
||||
- name: get result of remove task action
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_task_action_result
|
||||
|
@ -262,10 +262,10 @@
|
|||
assert:
|
||||
that:
|
||||
- remove_task_action|changed
|
||||
- remove_task_action_result.task.actions|count == 1
|
||||
- remove_task_action_result.task.actions[0].Path == "powershell.exe"
|
||||
- remove_task_action_result.task.actions[0].Arguments == "-File C:\\ansible\\script.ps1"
|
||||
- remove_task_action_result.task.actions[0].WorkingDirectory == "C:\\ansible"
|
||||
- remove_task_action_result.actions|count == 1
|
||||
- remove_task_action_result.actions[0].path == "powershell.exe"
|
||||
- remove_task_action_result.actions[0].arguments == "-File C:\\ansible\\script.ps1"
|
||||
- remove_task_action_result.actions[0].working_directory == "C:\\ansible"
|
||||
|
||||
- name: remove task action (idempontent)
|
||||
win_scheduled_task:
|
||||
|
@ -290,7 +290,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of remove task (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_task_result_check
|
||||
|
@ -308,7 +308,7 @@
|
|||
register: remove_task
|
||||
|
||||
- name: get result of remove task
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_task_result
|
||||
|
@ -340,7 +340,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create sole task in folder (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: '{{test_scheduled_task_path}}'
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_sole_task_result_check
|
||||
|
@ -361,7 +361,7 @@
|
|||
register: create_sole_task
|
||||
|
||||
- name: get result of create sole task in folder
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: '{{test_scheduled_task_path}}'
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_sole_task_result
|
||||
|
@ -395,7 +395,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of remove sole task in folder (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: '{{test_scheduled_task_path}}'
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_sole_task_result_check
|
||||
|
@ -415,7 +415,7 @@
|
|||
register: remove_sole_task
|
||||
|
||||
- name: get result of remove sole task in folder
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: '{{test_scheduled_task_path}}'
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_sole_task_result
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with password principal (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_password_result_check
|
||||
|
@ -45,7 +45,7 @@
|
|||
register: task_with_password
|
||||
|
||||
- name: get result of task with password principal
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_password_result
|
||||
|
@ -55,10 +55,10 @@
|
|||
that:
|
||||
- task_with_password|changed
|
||||
- task_with_password_result.task_exists == True
|
||||
- task_with_password_result.task.principal.GroupId == None
|
||||
- task_with_password_result.task.principal.LogonType == "TASK_LOGON_PASSWORD"
|
||||
- task_with_password_result.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_password_result.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_password_result.principal.group_id == None
|
||||
- task_with_password_result.principal.logon_type == "TASK_LOGON_PASSWORD"
|
||||
- task_with_password_result.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_password_result.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with password principal (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -108,7 +108,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with s4u principal (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_s4u_result_check
|
||||
|
@ -118,10 +118,10 @@
|
|||
that:
|
||||
- task_with_s4u_check|changed
|
||||
- task_with_s4u_result_check.task_exists == True
|
||||
- task_with_s4u_result_check.task.principal.GroupId == None
|
||||
- task_with_s4u_result_check.task.principal.LogonType == "TASK_LOGON_PASSWORD"
|
||||
- task_with_s4u_result_check.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_s4u_result_check.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_s4u_result_check.principal.group_id == None
|
||||
- task_with_s4u_result_check.principal.logon_type == "TASK_LOGON_PASSWORD"
|
||||
- task_with_s4u_result_check.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_s4u_result_check.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with s4u principal
|
||||
win_scheduled_task:
|
||||
|
@ -136,7 +136,7 @@
|
|||
register: task_with_s4u
|
||||
|
||||
- name: get result of task with s4u principal
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_s4u_result
|
||||
|
@ -146,10 +146,10 @@
|
|||
that:
|
||||
- task_with_s4u|changed
|
||||
- task_with_s4u_result.task_exists == True
|
||||
- task_with_s4u_result.task.principal.GroupId == None
|
||||
- task_with_s4u_result.task.principal.LogonType == "TASK_LOGON_S4U"
|
||||
- task_with_s4u_result.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_s4u_result.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_s4u_result.principal.group_id == None
|
||||
- task_with_s4u_result.principal.logon_type == "TASK_LOGON_S4U"
|
||||
- task_with_s4u_result.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_s4u_result.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with s4u principal (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -180,7 +180,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with interactive principal (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_interactive_result_check
|
||||
|
@ -190,10 +190,10 @@
|
|||
that:
|
||||
- task_with_interactive_check|changed
|
||||
- task_with_interactive_result_check.task_exists == True
|
||||
- task_with_interactive_result_check.task.principal.GroupId == None
|
||||
- task_with_interactive_result_check.task.principal.LogonType == "TASK_LOGON_S4U"
|
||||
- task_with_interactive_result_check.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_interactive_result_check.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_interactive_result_check.principal.group_id == None
|
||||
- task_with_interactive_result_check.principal.logon_type == "TASK_LOGON_S4U"
|
||||
- task_with_interactive_result_check.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_interactive_result_check.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with interactive principal
|
||||
win_scheduled_task:
|
||||
|
@ -206,7 +206,7 @@
|
|||
register: task_with_interactive
|
||||
|
||||
- name: get result of task with interactive principal
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_interactive_result
|
||||
|
@ -216,10 +216,10 @@
|
|||
that:
|
||||
- task_with_interactive|changed
|
||||
- task_with_interactive_result.task_exists == True
|
||||
- task_with_interactive_result.task.principal.GroupId == None
|
||||
- task_with_interactive_result.task.principal.LogonType == "TASK_LOGON_INTERACTIVE_TOKEN"
|
||||
- task_with_interactive_result.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_interactive_result.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_interactive_result.principal.group_id == None
|
||||
- task_with_interactive_result.principal.logon_type == "TASK_LOGON_INTERACTIVE_TOKEN"
|
||||
- task_with_interactive_result.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_interactive_result.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with interactive principal (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -248,7 +248,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with group principal (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_group_result_check
|
||||
|
@ -258,10 +258,10 @@
|
|||
that:
|
||||
- task_with_group_check|changed
|
||||
- task_with_group_result_check.task_exists == True
|
||||
- task_with_group_result_check.task.principal.GroupId == None
|
||||
- task_with_group_result_check.task.principal.LogonType == "TASK_LOGON_INTERACTIVE_TOKEN"
|
||||
- task_with_group_result_check.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_group_result_check.task.principal.UserId.endswith(test_scheduled_task_user)
|
||||
- task_with_group_result_check.principal.group_id == None
|
||||
- task_with_group_result_check.principal.logon_type == "TASK_LOGON_INTERACTIVE_TOKEN"
|
||||
- task_with_group_result_check.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_group_result_check.principal.user_id.endswith(test_scheduled_task_user)
|
||||
|
||||
- name: task with group principal
|
||||
win_scheduled_task:
|
||||
|
@ -274,7 +274,7 @@
|
|||
register: task_with_group
|
||||
|
||||
- name: get result of task with group principal
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_group_result
|
||||
|
@ -284,10 +284,10 @@
|
|||
that:
|
||||
- task_with_group|changed
|
||||
- task_with_group_result.task_exists == True
|
||||
- task_with_group_result.task.principal.GroupId == "BUILTIN\\Administrators"
|
||||
- task_with_group_result.task.principal.LogonType == "TASK_LOGON_GROUP"
|
||||
- task_with_group_result.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_group_result.task.principal.UserId == None
|
||||
- task_with_group_result.principal.group_id == "BUILTIN\\Administrators"
|
||||
- task_with_group_result.principal.logon_type == "TASK_LOGON_GROUP"
|
||||
- task_with_group_result.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_group_result.principal.user_id == None
|
||||
|
||||
- name: task with group principal (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -316,7 +316,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with service account principal (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_service_result_check
|
||||
|
@ -326,10 +326,10 @@
|
|||
that:
|
||||
- task_with_service_check|changed
|
||||
- task_with_service_result_check.task_exists == True
|
||||
- task_with_service_result_check.task.principal.GroupId == "BUILTIN\\Administrators"
|
||||
- task_with_service_result_check.task.principal.LogonType == "TASK_LOGON_GROUP"
|
||||
- task_with_service_result_check.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_service_result_check.task.principal.UserId == None
|
||||
- task_with_service_result_check.principal.group_id == "BUILTIN\\Administrators"
|
||||
- task_with_service_result_check.principal.logon_type == "TASK_LOGON_GROUP"
|
||||
- task_with_service_result_check.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_service_result_check.principal.user_id == None
|
||||
|
||||
- name: task with service account principal
|
||||
win_scheduled_task:
|
||||
|
@ -342,7 +342,7 @@
|
|||
register: task_with_service
|
||||
|
||||
- name: get result of task with service account principal
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_service_result
|
||||
|
@ -352,10 +352,10 @@
|
|||
that:
|
||||
- task_with_service|changed
|
||||
- task_with_service_result.task_exists == True
|
||||
- task_with_service_result.task.principal.GroupId == None
|
||||
- task_with_service_result.task.principal.LogonType == "TASK_LOGON_SERVICE_ACCOUNT"
|
||||
- task_with_service_result.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_service_result.task.principal.UserId == "NT AUTHORITY\\SYSTEM"
|
||||
- task_with_service_result.principal.group_id == None
|
||||
- task_with_service_result.principal.logon_type == "TASK_LOGON_SERVICE_ACCOUNT"
|
||||
- task_with_service_result.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_service_result.principal.user_id == "NT AUTHORITY\\SYSTEM"
|
||||
|
||||
- name: task with service account principal (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -385,7 +385,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of task with highest privilege (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_highest_privilege_result_check
|
||||
|
@ -394,7 +394,7 @@
|
|||
assert:
|
||||
that:
|
||||
- task_with_highest_privilege_check|changed
|
||||
- task_with_highest_privilege_result_check.task.principal.RunLevel == "TASK_RUNLEVEL_LUA"
|
||||
- task_with_highest_privilege_result_check.principal.run_level == "TASK_RUNLEVEL_LUA"
|
||||
|
||||
- name: task with highest privilege
|
||||
win_scheduled_task:
|
||||
|
@ -408,7 +408,7 @@
|
|||
register: task_with_highest_privilege
|
||||
|
||||
- name: get result of task with highest privilege
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: task_with_highest_privilege_result
|
||||
|
@ -417,7 +417,7 @@
|
|||
assert:
|
||||
that:
|
||||
- task_with_highest_privilege|changed
|
||||
- task_with_highest_privilege_result.task.principal.RunLevel == "TASK_RUNLEVEL_HIGHEST"
|
||||
- task_with_highest_privilege_result.principal.run_level == "TASK_RUNLEVEL_HIGHEST"
|
||||
|
||||
- name: task with highest privilege (idempotent)
|
||||
win_scheduled_task:
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create boot trigger (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_boot_result_check
|
||||
|
@ -33,7 +33,7 @@
|
|||
register: trigger_boot
|
||||
|
||||
- name: get result of create boot trigger
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_boot_result
|
||||
|
@ -43,11 +43,11 @@
|
|||
that:
|
||||
- trigger_boot|changed
|
||||
- trigger_boot_result.task_exists == True
|
||||
- trigger_boot_result.task.triggers|count == 1
|
||||
- trigger_boot_result.task.triggers[0].Type == "TASK_TRIGGER_BOOT"
|
||||
- trigger_boot_result.task.triggers[0].Enabled == True
|
||||
- trigger_boot_result.task.triggers[0].StartBoundary == None
|
||||
- trigger_boot_result.task.triggers[0].EndBoundary == None
|
||||
- trigger_boot_result.triggers|count == 1
|
||||
- trigger_boot_result.triggers[0].type == "TASK_TRIGGER_BOOT"
|
||||
- trigger_boot_result.triggers[0].enabled == True
|
||||
- trigger_boot_result.triggers[0].start_boundary == None
|
||||
- trigger_boot_result.triggers[0].end_boundary == None
|
||||
|
||||
- name: create boot trigger (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -77,7 +77,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create daily trigger (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_daily_result_check
|
||||
|
@ -87,11 +87,11 @@
|
|||
that:
|
||||
- trigger_daily_check|changed
|
||||
- trigger_daily_result_check.task_exists == True
|
||||
- trigger_daily_result_check.task.triggers|count == 1
|
||||
- trigger_daily_result_check.task.triggers[0].Type == "TASK_TRIGGER_BOOT"
|
||||
- trigger_daily_result_check.task.triggers[0].Enabled == True
|
||||
- trigger_daily_result_check.task.triggers[0].StartBoundary == None
|
||||
- trigger_daily_result_check.task.triggers[0].EndBoundary == None
|
||||
- trigger_daily_result_check.triggers|count == 1
|
||||
- trigger_daily_result_check.triggers[0].type == "TASK_TRIGGER_BOOT"
|
||||
- trigger_daily_result_check.triggers[0].enabled == True
|
||||
- trigger_daily_result_check.triggers[0].start_boundary == None
|
||||
- trigger_daily_result_check.triggers[0].end_boundary == None
|
||||
|
||||
- name: create daily trigger
|
||||
win_scheduled_task:
|
||||
|
@ -105,7 +105,7 @@
|
|||
register: trigger_daily
|
||||
|
||||
- name: get result of create daily trigger
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_daily_result
|
||||
|
@ -115,11 +115,11 @@
|
|||
that:
|
||||
- trigger_daily|changed
|
||||
- trigger_daily_result.task_exists == True
|
||||
- trigger_daily_result.task.triggers|count == 1
|
||||
- trigger_daily_result.task.triggers[0].Type == "TASK_TRIGGER_DAILY"
|
||||
- trigger_daily_result.task.triggers[0].Enabled == True
|
||||
- trigger_daily_result.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- trigger_daily_result.task.triggers[0].EndBoundary == None
|
||||
- trigger_daily_result.triggers|count == 1
|
||||
- trigger_daily_result.triggers[0].type == "TASK_TRIGGER_DAILY"
|
||||
- trigger_daily_result.triggers[0].enabled == True
|
||||
- trigger_daily_result.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- trigger_daily_result.triggers[0].end_boundary == None
|
||||
|
||||
- name: create daily trigger (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -149,7 +149,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create logon trigger (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_logon_result_check
|
||||
|
@ -159,11 +159,11 @@
|
|||
that:
|
||||
- trigger_logon_check|changed
|
||||
- trigger_logon_result_check.task_exists == True
|
||||
- trigger_logon_result_check.task.triggers|count == 1
|
||||
- trigger_logon_result_check.task.triggers[0].Type == "TASK_TRIGGER_DAILY"
|
||||
- trigger_logon_result_check.task.triggers[0].Enabled == True
|
||||
- trigger_logon_result_check.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- trigger_logon_result_check.task.triggers[0].EndBoundary == None
|
||||
- trigger_logon_result_check.triggers|count == 1
|
||||
- trigger_logon_result_check.triggers[0].type == "TASK_TRIGGER_DAILY"
|
||||
- trigger_logon_result_check.triggers[0].enabled == True
|
||||
- trigger_logon_result_check.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- trigger_logon_result_check.triggers[0].end_boundary == None
|
||||
|
||||
- name: create logon trigger
|
||||
win_scheduled_task:
|
||||
|
@ -176,7 +176,7 @@
|
|||
register: trigger_logon
|
||||
|
||||
- name: get result of create logon trigger
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_logon_result
|
||||
|
@ -186,11 +186,11 @@
|
|||
that:
|
||||
- trigger_logon|changed
|
||||
- trigger_logon_result.task_exists == True
|
||||
- trigger_logon_result.task.triggers|count == 1
|
||||
- trigger_logon_result.task.triggers[0].Type == "TASK_TRIGGER_LOGON"
|
||||
- trigger_logon_result.task.triggers[0].Enabled == True
|
||||
- trigger_logon_result.task.triggers[0].StartBoundary == None
|
||||
- trigger_logon_result.task.triggers[0].EndBoundary == None
|
||||
- trigger_logon_result.triggers|count == 1
|
||||
- trigger_logon_result.triggers[0].type == "TASK_TRIGGER_LOGON"
|
||||
- trigger_logon_result.triggers[0].enabled == True
|
||||
- trigger_logon_result.triggers[0].start_boundary == None
|
||||
- trigger_logon_result.triggers[0].end_boundary == None
|
||||
|
||||
- name: create logon trigger (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -222,7 +222,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create monthly dow trigger (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_monthlydow_result_check
|
||||
|
@ -232,11 +232,11 @@
|
|||
that:
|
||||
- trigger_monthlydow_check|changed
|
||||
- trigger_monthlydow_result_check.task_exists == True
|
||||
- trigger_monthlydow_result_check.task.triggers|count == 1
|
||||
- trigger_monthlydow_result_check.task.triggers[0].Type == "TASK_TRIGGER_LOGON"
|
||||
- trigger_monthlydow_result_check.task.triggers[0].Enabled == True
|
||||
- trigger_monthlydow_result_check.task.triggers[0].StartBoundary == None
|
||||
- trigger_monthlydow_result_check.task.triggers[0].EndBoundary == None
|
||||
- trigger_monthlydow_result_check.triggers|count == 1
|
||||
- trigger_monthlydow_result_check.triggers[0].type == "TASK_TRIGGER_LOGON"
|
||||
- trigger_monthlydow_result_check.triggers[0].enabled == True
|
||||
- trigger_monthlydow_result_check.triggers[0].start_boundary == None
|
||||
- trigger_monthlydow_result_check.triggers[0].end_boundary == None
|
||||
|
||||
- name: create monthly dow trigger
|
||||
win_scheduled_task:
|
||||
|
@ -252,7 +252,7 @@
|
|||
register: trigger_monthlydow
|
||||
|
||||
- name: get result of create monthly dow trigger
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: trigger_monthlydow_result
|
||||
|
@ -262,13 +262,13 @@
|
|||
that:
|
||||
- trigger_monthlydow|changed
|
||||
- trigger_monthlydow_result.task_exists == True
|
||||
- trigger_monthlydow_result.task.triggers|count == 1
|
||||
- trigger_monthlydow_result.task.triggers[0].Type == "TASK_TRIGGER_MONTHLYDOW"
|
||||
- trigger_monthlydow_result.task.triggers[0].Enabled == True
|
||||
- trigger_monthlydow_result.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- trigger_monthlydow_result.task.triggers[0].EndBoundary == None
|
||||
- trigger_monthlydow_result.task.triggers[0].WeeksOfMonth == "1,2"
|
||||
- trigger_monthlydow_result.task.triggers[0].DaysOfWeek == "monday,wednesday"
|
||||
- trigger_monthlydow_result.triggers|count == 1
|
||||
- trigger_monthlydow_result.triggers[0].type == "TASK_TRIGGER_MONTHLYDOW"
|
||||
- trigger_monthlydow_result.triggers[0].enabled == True
|
||||
- trigger_monthlydow_result.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- trigger_monthlydow_result.triggers[0].end_boundary == None
|
||||
- trigger_monthlydow_result.triggers[0].weeks_of_month == "1,2"
|
||||
- trigger_monthlydow_result.triggers[0].days_of_week == "monday,wednesday"
|
||||
|
||||
- name: create monthly dow trigger (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -310,7 +310,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of create task with multiple triggers (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_multiple_triggers_result_check
|
||||
|
@ -320,13 +320,13 @@
|
|||
that:
|
||||
- create_multiple_triggers_check|changed
|
||||
- create_multiple_triggers_result_check.task_exists == True
|
||||
- create_multiple_triggers_result_check.task.triggers|count == 1
|
||||
- create_multiple_triggers_result_check.task.triggers[0].Type == "TASK_TRIGGER_MONTHLYDOW"
|
||||
- create_multiple_triggers_result_check.task.triggers[0].Enabled == True
|
||||
- create_multiple_triggers_result_check.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result_check.task.triggers[0].EndBoundary == None
|
||||
- create_multiple_triggers_result_check.task.triggers[0].WeeksOfMonth == "1,2"
|
||||
- create_multiple_triggers_result_check.task.triggers[0].DaysOfWeek == "monday,wednesday"
|
||||
- create_multiple_triggers_result_check.triggers|count == 1
|
||||
- create_multiple_triggers_result_check.triggers[0].type == "TASK_TRIGGER_MONTHLYDOW"
|
||||
- create_multiple_triggers_result_check.triggers[0].enabled == True
|
||||
- create_multiple_triggers_result_check.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result_check.triggers[0].end_boundary == None
|
||||
- create_multiple_triggers_result_check.triggers[0].weeks_of_month == "1,2"
|
||||
- create_multiple_triggers_result_check.triggers[0].days_of_week == "monday,wednesday"
|
||||
|
||||
- name: create task with multiple triggers
|
||||
win_scheduled_task:
|
||||
|
@ -349,7 +349,7 @@
|
|||
register: create_multiple_triggers
|
||||
|
||||
- name: get result of create task with multiple triggers
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: create_multiple_triggers_result
|
||||
|
@ -359,19 +359,19 @@
|
|||
that:
|
||||
- create_multiple_triggers|changed
|
||||
- create_multiple_triggers_result.task_exists == True
|
||||
- create_multiple_triggers_result.task.triggers|count == 2
|
||||
- create_multiple_triggers_result.task.triggers[0].Type == "TASK_TRIGGER_MONTHLY"
|
||||
- create_multiple_triggers_result.task.triggers[0].Enabled == True
|
||||
- create_multiple_triggers_result.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result.task.triggers[0].EndBoundary == None
|
||||
- create_multiple_triggers_result.task.triggers[0].DaysOfMonth == "1,5,10,15,20,25,30"
|
||||
- create_multiple_triggers_result.task.triggers[0].MonthsOfYear == "march,may,july"
|
||||
- create_multiple_triggers_result.task.triggers[0].RunOnLastDayOfMonth == True
|
||||
- create_multiple_triggers_result.task.triggers[1].Type == "TASK_TRIGGER_TIME"
|
||||
- create_multiple_triggers_result.task.triggers[1].Enabled == True
|
||||
- create_multiple_triggers_result.task.triggers[1].StartBoundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result.task.triggers[1].EndBoundary == None
|
||||
- create_multiple_triggers_result.task.triggers[1].RandomDelay == "PT10M5S"
|
||||
- create_multiple_triggers_result.triggers|count == 2
|
||||
- create_multiple_triggers_result.triggers[0].type == "TASK_TRIGGER_MONTHLY"
|
||||
- create_multiple_triggers_result.triggers[0].enabled == True
|
||||
- create_multiple_triggers_result.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result.triggers[0].end_boundary == None
|
||||
- create_multiple_triggers_result.triggers[0].days_of_month == "1,5,10,15,20,25,30"
|
||||
- create_multiple_triggers_result.triggers[0].months_of_year == "march,may,july"
|
||||
- create_multiple_triggers_result.triggers[0].run_on_last_day_of_month == True
|
||||
- create_multiple_triggers_result.triggers[1].type == "TASK_TRIGGER_TIME"
|
||||
- create_multiple_triggers_result.triggers[1].enabled == True
|
||||
- create_multiple_triggers_result.triggers[1].start_boundary == "2000-01-01T00:00:01"
|
||||
- create_multiple_triggers_result.triggers[1].end_boundary == None
|
||||
- create_multiple_triggers_result.triggers[1].random_delay == "PT10M5S"
|
||||
|
||||
- name: create task with multiple triggers (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -414,7 +414,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of change task with multiple triggers (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: change_multiple_triggers_result_check
|
||||
|
@ -424,19 +424,19 @@
|
|||
that:
|
||||
- change_multiple_triggers_check|changed
|
||||
- change_multiple_triggers_result_check.task_exists == True
|
||||
- change_multiple_triggers_result_check.task.triggers|count == 2
|
||||
- change_multiple_triggers_result_check.task.triggers[0].Type == "TASK_TRIGGER_MONTHLY"
|
||||
- change_multiple_triggers_result_check.task.triggers[0].Enabled == True
|
||||
- change_multiple_triggers_result_check.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result_check.task.triggers[0].EndBoundary == None
|
||||
- change_multiple_triggers_result_check.task.triggers[0].DaysOfMonth == "1,5,10,15,20,25,30"
|
||||
- change_multiple_triggers_result_check.task.triggers[0].MonthsOfYear == "march,may,july"
|
||||
- change_multiple_triggers_result_check.task.triggers[0].RunOnLastDayOfMonth == True
|
||||
- change_multiple_triggers_result_check.task.triggers[1].Type == "TASK_TRIGGER_TIME"
|
||||
- change_multiple_triggers_result_check.task.triggers[1].Enabled == True
|
||||
- change_multiple_triggers_result_check.task.triggers[1].StartBoundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result_check.task.triggers[1].EndBoundary == None
|
||||
- change_multiple_triggers_result_check.task.triggers[1].RandomDelay == "PT10M5S"
|
||||
- change_multiple_triggers_result_check.triggers|count == 2
|
||||
- change_multiple_triggers_result_check.triggers[0].type == "TASK_TRIGGER_MONTHLY"
|
||||
- change_multiple_triggers_result_check.triggers[0].enabled == True
|
||||
- change_multiple_triggers_result_check.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result_check.triggers[0].end_boundary == None
|
||||
- change_multiple_triggers_result_check.triggers[0].days_of_month == "1,5,10,15,20,25,30"
|
||||
- change_multiple_triggers_result_check.triggers[0].months_of_year == "march,may,july"
|
||||
- change_multiple_triggers_result_check.triggers[0].run_on_last_day_of_month == True
|
||||
- change_multiple_triggers_result_check.triggers[1].type == "TASK_TRIGGER_TIME"
|
||||
- change_multiple_triggers_result_check.triggers[1].enabled == True
|
||||
- change_multiple_triggers_result_check.triggers[1].start_boundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result_check.triggers[1].end_boundary == None
|
||||
- change_multiple_triggers_result_check.triggers[1].random_delay == "PT10M5S"
|
||||
|
||||
- name: change task with multiple triggers
|
||||
win_scheduled_task:
|
||||
|
@ -453,7 +453,7 @@
|
|||
register: change_multiple_triggers
|
||||
|
||||
- name: get result of change task with multiple triggers
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: change_multiple_triggers_result
|
||||
|
@ -463,16 +463,16 @@
|
|||
that:
|
||||
- change_multiple_triggers|changed
|
||||
- change_multiple_triggers_result.task_exists == True
|
||||
- change_multiple_triggers_result.task.triggers|count == 2
|
||||
- change_multiple_triggers_result.task.triggers[0].Type == "TASK_TRIGGER_WEEKLY"
|
||||
- change_multiple_triggers_result.task.triggers[0].Enabled == True
|
||||
- change_multiple_triggers_result.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result.task.triggers[0].EndBoundary == None
|
||||
- change_multiple_triggers_result.task.triggers[0].DaysOfWeek == "tuesday,friday"
|
||||
- change_multiple_triggers_result.task.triggers[1].Type == "TASK_TRIGGER_REGISTRATION"
|
||||
- change_multiple_triggers_result.task.triggers[1].Enabled == False
|
||||
- change_multiple_triggers_result.task.triggers[1].StartBoundary == None
|
||||
- change_multiple_triggers_result.task.triggers[1].EndBoundary == None
|
||||
- change_multiple_triggers_result.triggers|count == 2
|
||||
- change_multiple_triggers_result.triggers[0].type == "TASK_TRIGGER_WEEKLY"
|
||||
- change_multiple_triggers_result.triggers[0].enabled == True
|
||||
- change_multiple_triggers_result.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- change_multiple_triggers_result.triggers[0].end_boundary == None
|
||||
- change_multiple_triggers_result.triggers[0].days_of_week == "tuesday,friday"
|
||||
- change_multiple_triggers_result.triggers[1].type == "TASK_TRIGGER_REGISTRATION"
|
||||
- change_multiple_triggers_result.triggers[1].enabled == False
|
||||
- change_multiple_triggers_result.triggers[1].start_boundary == None
|
||||
- change_multiple_triggers_result.triggers[1].end_boundary == None
|
||||
|
||||
- name: change task with multiple triggers (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -506,7 +506,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of remove trigger from multiple triggers (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_single_trigger_result_check
|
||||
|
@ -516,16 +516,16 @@
|
|||
that:
|
||||
- remove_single_trigger_check|changed
|
||||
- remove_single_trigger_result_check.task_exists == True
|
||||
- remove_single_trigger_result_check.task.triggers|count == 2
|
||||
- remove_single_trigger_result_check.task.triggers[0].Type == "TASK_TRIGGER_WEEKLY"
|
||||
- remove_single_trigger_result_check.task.triggers[0].Enabled == True
|
||||
- remove_single_trigger_result_check.task.triggers[0].StartBoundary == "2000-01-01T00:00:01"
|
||||
- remove_single_trigger_result_check.task.triggers[0].EndBoundary == None
|
||||
- remove_single_trigger_result_check.task.triggers[0].DaysOfWeek == "tuesday,friday"
|
||||
- remove_single_trigger_result_check.task.triggers[1].Type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_single_trigger_result_check.task.triggers[1].Enabled == False
|
||||
- remove_single_trigger_result_check.task.triggers[1].StartBoundary == None
|
||||
- remove_single_trigger_result_check.task.triggers[1].EndBoundary == None
|
||||
- remove_single_trigger_result_check.triggers|count == 2
|
||||
- remove_single_trigger_result_check.triggers[0].type == "TASK_TRIGGER_WEEKLY"
|
||||
- remove_single_trigger_result_check.triggers[0].enabled == True
|
||||
- remove_single_trigger_result_check.triggers[0].start_boundary == "2000-01-01T00:00:01"
|
||||
- remove_single_trigger_result_check.triggers[0].end_boundary == None
|
||||
- remove_single_trigger_result_check.triggers[0].days_of_week == "tuesday,friday"
|
||||
- remove_single_trigger_result_check.triggers[1].type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_single_trigger_result_check.triggers[1].enabled == False
|
||||
- remove_single_trigger_result_check.triggers[1].start_boundary == None
|
||||
- remove_single_trigger_result_check.triggers[1].end_boundary == None
|
||||
|
||||
- name: remove trigger from multiple triggers
|
||||
win_scheduled_task:
|
||||
|
@ -539,7 +539,7 @@
|
|||
register: remove_single_trigger
|
||||
|
||||
- name: get result of remove trigger from multiple triggers
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_single_trigger_result
|
||||
|
@ -549,11 +549,11 @@
|
|||
that:
|
||||
- remove_single_trigger|changed
|
||||
- remove_single_trigger_result.task_exists == True
|
||||
- remove_single_trigger_result.task.triggers|count == 1
|
||||
- remove_single_trigger_result.task.triggers[0].Type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_single_trigger_result.task.triggers[0].Enabled == False
|
||||
- remove_single_trigger_result.task.triggers[0].StartBoundary == None
|
||||
- remove_single_trigger_result.task.triggers[0].EndBoundary == None
|
||||
- remove_single_trigger_result.triggers|count == 1
|
||||
- remove_single_trigger_result.triggers[0].type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_single_trigger_result.triggers[0].enabled == False
|
||||
- remove_single_trigger_result.triggers[0].start_boundary == None
|
||||
- remove_single_trigger_result.triggers[0].end_boundary == None
|
||||
|
||||
- name: remove trigger from multiple triggers (idempotent)
|
||||
win_scheduled_task:
|
||||
|
@ -582,7 +582,7 @@
|
|||
check_mode: yes
|
||||
|
||||
- name: get result of remove all triggers (check mode)
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_triggers_result_check
|
||||
|
@ -592,11 +592,11 @@
|
|||
that:
|
||||
- remove_triggers_check|changed
|
||||
- remove_triggers_result_check.task_exists == True
|
||||
- remove_triggers_result_check.task.triggers|count == 1
|
||||
- remove_triggers_result_check.task.triggers[0].Type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_triggers_result_check.task.triggers[0].Enabled == False
|
||||
- remove_triggers_result_check.task.triggers[0].StartBoundary == None
|
||||
- remove_triggers_result_check.task.triggers[0].EndBoundary == None
|
||||
- remove_triggers_result_check.triggers|count == 1
|
||||
- remove_triggers_result_check.triggers[0].type == "TASK_TRIGGER_REGISTRATION"
|
||||
- remove_triggers_result_check.triggers[0].enabled == False
|
||||
- remove_triggers_result_check.triggers[0].start_boundary == None
|
||||
- remove_triggers_result_check.triggers[0].end_boundary == None
|
||||
|
||||
- name: remove all triggers
|
||||
win_scheduled_task:
|
||||
|
@ -608,7 +608,7 @@
|
|||
register: remove_triggers
|
||||
|
||||
- name: get result of remove all triggers
|
||||
test_task_stat:
|
||||
win_scheduled_task_stat:
|
||||
path: \
|
||||
name: '{{test_scheduled_task_name}}'
|
||||
register: remove_triggers_result
|
||||
|
@ -618,7 +618,7 @@
|
|||
that:
|
||||
- remove_triggers|changed
|
||||
- remove_triggers_result.task_exists == True
|
||||
- remove_triggers_result.task.triggers|count == 0
|
||||
- remove_triggers_result.triggers|count == 0
|
||||
|
||||
- name: remove all triggers (idempotent)
|
||||
win_scheduled_task:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue