ansible.builtin.win_feature (v2.9.27) — module

Installs and uninstalls Windows Features on Windows Server

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

Authors: Paul Durivage (@angstwad), Trond Hindenes (@trondhindenes)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.9.27

Description

Installs or uninstalls Windows Roles or Features on Windows Server.

This module uses the Add/Remove-WindowsFeature Cmdlets on Windows 2008 R2 and Install/Uninstall-WindowsFeature Cmdlets on Windows 2012, which are not available on client os machines.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install IIS (Web-Server only)
  win_feature:
    name: Web-Server
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install IIS (Web-Server and Web-Common-Http)
  win_feature:
    name:
    - Web-Server
    - Web-Common-Http
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install NET-Framework-Core from file
  win_feature:
    name: NET-Framework-Core
    source: C:\Temp\iso\sources\sxs
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install IIS Web-Server with sub features and management tools
  win_feature:
    name: Web-Server
    state: present
    include_sub_features: yes
    include_management_tools: yes
  register: win_feature
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Reboot if installing Web-Server feature requires it
  win_reboot:
  when: win_feature.reboot_required

Inputs

    
name:
    description:
    - Names of roles or features to install as a single feature or a comma-separated list
      of features.
    - To list all available features use the PowerShell command C(Get-WindowsFeature).
    required: true
    type: list

state:
    choices:
    - absent
    - present
    default: present
    description:
    - State of the features or roles on the system.
    type: str

source:
    description:
    - Specify a source to install the feature from.
    - Not supported in Windows 2008 R2 and will be ignored.
    - Can either be C({driveletter}:\sources\sxs) or C(\\{IP}\share\sources\sxs).
    type: str
    version_added: '2.1'
    version_added_collection: ansible.builtin

include_sub_features:
    default: false
    description:
    - Adds all subfeatures of the specified feature.
    type: bool

include_management_tools:
    default: false
    description:
    - Adds the corresponding management tools to the specified feature.
    - Not supported in Windows 2008 R2 and will be ignored.
    type: bool

Outputs

exitcode:
  description: The stringified exit code from the feature installation/removal command.
  returned: always
  sample: Success
  type: str
feature_result:
  contains:
    display_name:
      description: Feature display name.
      returned: always
      sample: Telnet Client
      type: str
    id:
      description: A list of KB article IDs that apply to the update.
      returned: always
      sample: 44
      type: int
    message:
      description: Any messages returned from the feature subsystem that occurred
        during installation or removal of this feature.
      returned: always
      sample: []
      type: list of strings
    reboot_required:
      description: True when the target server requires a reboot as a result of installing
        or removing this feature.
      returned: always
      sample: true
      type: bool
    restart_needed:
      description: DEPRECATED in Ansible 2.4 (refer to C(reboot_required) instead).
        True when the target server requires a reboot as a result of installing or
        removing this feature.
      returned: always
      sample: true
      type: bool
    skip_reason:
      description: The reason a feature installation or removal was skipped.
      returned: always
      sample: NotSkipped
      type: str
    success:
      description: If the feature installation or removal was successful.
      returned: always
      sample: true
      type: bool
  description: List of features that were installed or removed.
  returned: success
  sample: null
  type: complex
reboot_required:
  description: True when the target server requires a reboot to complete updates (no
    further updates can be installed until after a reboot).
  returned: success
  sample: true
  type: bool

See also