ansible.builtin.win_scheduled_task_stat (v2.7.7) — module

Get information about Windows Scheduled Tasks

| "added in version" 2.5 of ansible.builtin"

Authors: Jordan Borean (@jborean93)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.7.7

Description

Will return whether the folder and task exists.

Returns the names of tasks in the folder specified.

If C(name) is set and exists, will return information on the task itself.

Use M(win_scheduled_task) to configure a scheduled task.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: get information about a folder
  win_scheduled_task_stat:
    path: \folder name
  register: task_folder_stat
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: get information about a task in the root folder
  win_scheduled_task_stat:
    name: task name
  register: task_stat
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: get information about a task in a custom folder
  win_scheduled_task_stat:
    path: \folder name
    name: task name
  register: task_stat

Inputs

    
name:
    description: The name of the scheduled task to get information for.

path:
    default: \
    description: The folder path where the task lives.

Outputs

actions:
  description: A list of actions.
  returned: name is specified and task exists
  sample:
  - Arguments: /c echo hi
    Id: null
    Path: cmd.exe
    Type: TASK_ACTION_EXEC
    WorkingDirectory: null
  type: list
folder_exists:
  description: Whether the folder set at path exists.
  returned: always
  sample: true
  type: boolean
folder_task_count:
  description: The number of tasks that exist in the folder.
  returned: always
  sample: 2
  type: int
folder_task_names:
  description: A list of tasks that exist in the folder.
  returned: always
  sample:
  - Task 1
  - Task 2
  type: list
principal:
  contains:
    display_name:
      description: The name of the user/group that is displayed in the Task Scheduler
        UI.
      returned: ''
      sample: Administrator
      type: str
    group_id:
      description: The group that will run the task.
      returned: ''
      sample: BUILTIN\Administrators
      type: str
    id:
      description: The ID for the principal.
      returned: ''
      sample: Author
      type: str
    logon_type:
      description: The logon method that the task will run with.
      returned: ''
      sample: TASK_LOGON_INTERACTIVE_TOKEN
      type: str
    run_level:
      description: The level of user rights used to run the task.
      returned: ''
      sample: TASK_RUNLEVEL_LUA
      type: str
    user_id:
      description: The user that will run the task.
      returned: ''
      sample: SERVER\Administrator
      type: str
  description: Details on the principal configured to run the task.
  returned: name is specified and task exists
  type: complex
registration_info:
  contains:
    author:
      description: The author os the task.
      returned: ''
      sample: SERVER\Administrator
      type: str
    date:
      description: The date when the task was register.
      returned: ''
      sample: '2017-01-01T10:00:00'
      type: str
    description:
      description: The description of the task.
      returned: ''
      sample: task description
      type: str
    documentation:
      description: The documentation of the task.
      returned: ''
      sample: task documentation
      type: str
    security_descriptor:
      description: The security descriptor of the task.
      returned: ''
      sample: security descriptor
      type: str
    source:
      description: The source of the task.
      returned: ''
      sample: source
      type: str
    uri:
      description: The URI/path of the task.
      returned: ''
      sample: \task\task name
      type: str
    version:
      description: The version of the task.
      returned: ''
      sample: 1.0
      type: str
  description: Details on the task registration info.
  returned: name is specified and task exists
  type: complex
settings:
  contains:
    allow_demand_start:
      description: Whether the task can be started by using either the Run command
        of the Context menu.
      returned: ''
      sample: true
      type: bool
    allow_hard_terminate:
      description: Whether the task can terminated by using TerminateProcess.
      returned: ''
      sample: true
      type: bool
    compatibility:
      description: The compatibility level of the task
      returned: ''
      sample: 2
      type: int
    delete_expired_task_after:
      description: The amount of time the Task Scheduler will wait before deleting
        the task after it expires.
      returned: ''
      sample: PT10M
      type: str
    disallow_start_if_on_batteries:
      description: Whether the task will not be started if the computer is running
        on battery power.
      returned: ''
      sample: false
      type: bool
    disallow_start_on_remote_app_session:
      description: Whether the task will not be started when in a remote app session.
      returned: ''
      sample: true
      type: bool
    enabled:
      description: Whether the task is enabled.
      returned: ''
      sample: true
      type: bool
    execution_time_limit:
      description: The amount of time allowed to complete the task.
      returned: ''
      sample: PT72H
      type: str
    hidden:
      description: Whether the task is hidden in the UI.
      returned: ''
      sample: false
      type: bool
    idle_settings:
      description: The idle settings of the task.
      returned: ''
      sample:
        idle_duration: PT10M
        restart_on_idle: false
        stop_on_idle_end: true
        wait_timeout: PT1H
      type: dictionary
    maintenance_settings:
      description: The maintenance settings of the task.
      returned: ''
      sample: null
      type: str
    mulitple_instances:
      description: Indicates the behaviour when starting a task that is already running.
      returned: ''
      sample: 2
      type: int
    network_settings:
      description: The network settings of the task.
      returned: ''
      sample:
        id: null
        name: null
      type: dictionary
    priority:
      description: The priority level of the task.
      returned: ''
      sample: 7
      type: int
    restart_count:
      description: The number of times that the task will attempt to restart on failures.
      returned: ''
      sample: 0
      type: int
    restart_interval:
      description: How long the Task Scheduler will attempt to restart the task.
      returned: ''
      sample: PT15M
      type: str
    run_only_id_idle:
      description: Whether the task will run if the computer is in an idle state.
      returned: ''
      sample: true
      type: bool
    run_only_if_network_available:
      description: Whether the task will run only when a network is available.
      returned: ''
      sample: false
      type: bool
    start_when_available:
      description: Whether the task can start at any time after its scheduled time
        has passed.
      returned: ''
      sample: false
      type: bool
    stop_if_going_on_batteries:
      description: Whether the task will be stopped if the computer begins to run
        on battery power.
      returned: ''
      sample: true
      type: bool
    use_unified_scheduling_engine:
      description: Whether the task will use the unifed scheduling engine.
      returned: ''
      sample: false
      type: bool
    volatile:
      description: Whether thet ask is volatile.
      returned: ''
      sample: false
      type: bool
    wake_to_run:
      description: Whether the task will wake the computer when it is time to run
        the task.
      returned: ''
      sample: false
      type: bool
  description: Details on the task settings.
  returned: name is specified and task exists
  type: complex
state:
  contains:
    last_run_time:
      description: The time the registered task was last run.
      returned: ''
      sample: '2017-09-20T20:50:00'
      type: str
    last_task_result:
      description: The results that were returned the last time the task was run.
      returned: ''
      sample: 267009
      type: int
    next_run_time:
      description: The time when the task is next scheduled to run.
      returned: ''
      sample: '2017-09-20T22:50:00'
      type: str
    number_of_missed_runs:
      description: The number of times a task has missed a scheduled run.
      returned: ''
      sample: 1
      type: int
    status:
      description: The status of the task, whether it is running, stopped, etc.
      returned: ''
      sample: TASK_STATE_RUNNING
      type: str
  description: Details on the state of the task
  returned: name is specified and task exists
  type: complex
task_exists:
  description: Whether the task at the folder exists.
  returned: name is specified
  sample: true
  type: boolean
triggers:
  description: A list of triggers.
  returned: name is specified and task exists
  sample:
  - delay: PT15M
    enabled: true
    end_boundary: null
    execution_time_limit: null
    id: null
    repetition:
      duration: null
      interval: null
      stop_at_duration_end: false
    start_boundary: null
    type: TASK_TRIGGER_BOOT
  - days_of_month: 5,15,30
    enabled: true
    end_boundary: null
    execution_time_limit: null
    id: null
    months_of_year: june,december
    random_delay: null
    repetition:
      duration: null
      interval: null
      stop_at_duration_end: false
    run_on_last_day_of_month: true
    start_boundary: '2017-09-20T03:44:38'
    type: TASK_TRIGGER_MONTHLY
  type: list