Windows: community plan - ansible/community GitHub Wiki

This document lists various items discussed for future development

Ideas for new modules/plugins

  • win_font -- Install fonts #50094
  • win_wait_for_event -- Pause the playbook execution until a specific event has happened
  • win_eventlog_query -- Query the event log for specific events
  • win_keyboard -- Configure the keyboard settings for existing users, new users and login page
  • win_net_profile -- Set a network profile as public or private
  • win_capability -- Installing capabilities like language packs or OpenSSH.Server
  • win_backup -- Configure and perform backups
  • win_printer -- Manager printer ports, printer drivers and printers
  • win_driver -- Installing INF drivers using pnputil.exe
  • win_restore_point -- Create a new restore point
  • win_bitlocker -- Manage BitLocker
  • win_proxy -- Manage Windows proxy settings
  • win_uac -- Manage UAC settings

Module development

  • Good sources of info for picking up PowerShell
    • Add these to the Windows module documentation !
  • Consider moving the ConfigureRemotingForAnsible.ps1 into a proper PS module which we could publish on the Powershell Gallery? That would allow us to break it down into manageable chunks and would also ease setup for nodes on PSv5 and higher (with access to the gallery). We'd need a very simple CI pipeline for this. (trondhindenes)
    • Install-module AnsibleSystemPrep -force;invoke-ansiblesystemprep
  • CI testing on Windows 10 and Windows 2016 ! (dagwieers)
  • Powershell coding style and CI testing (jborean93) #63
    • Implement in Shippable
    • Discuss configuration/rules
  • Windows coverage support (mattclay)

Features

  • Proxying WinRM and PSRP sessions over an HTTP proxy #44141
  • Decide what to do wrt. group policies (on standalone systems, driving AD ?) (dagwieers)
  • Decide what to do with functional lists of registry keys (dagwieers)
    • i.e. some have been proposed as modules #20992 (comment)
    • One or more roles with registry keys and vars to influence them
  • Using Powershell on Unix/Linux (for DSC resources)
  • Ansible threaded implementation (jhawkesworth)
    • Makes it possible to run Ansible on Windows natively, and helps conserve memory

Documentation

  • Ansible Windows Powershell 'cookbook' / 1 liners
    • Would be great to capture some community experience as there are some things that are neatly achieved using a little powershell that don't necessarily have exact equivalents (https://github.com/ansible/ansible/pull/25837) (dagwieers)
    • I guess making into a galaxy role is always an option but might be overkill for simple oneliners like the above
    • Add the following advice on Ansible service accounts #25298 (comment)

Clean up actions

For progress on module cleanup projects, look at our progress tracker

  • Ensure all modules have integration tests, are idempotent and are full-featured
  • Bug/PR triage (lots of bugs are waiting for feedback or PRs for review)
    • We are now having meetings and doing sprints to tackle this problem (dagwieers)
  • Implement type=psobject (and use it for win_nssm) (trondhindenes)
  • Clean up Windows roles