>
> Windows could be supported if someone did the work

I think you are underestimating how much work this would actually require. 
The biggest (but not the only) issue is that Ansible uses fork in it's 
worker model and fork is not available on Windows. Changing that to use 
threads is technically possible and there is/was some work going on to add 
a way to specify either threading or forking in a strategy to control how 
this works. This would solve 1 hurdle but there also remains a whole lot of 
others not limited to

   - A whole bunch of other code on the controller is designed specifically 
   for Linux and not Windows. Things like the SSH plugin would most likely 
   break with using the Win32 OpenSSH port
   - Running a playbook on Windows localhost is different than Linux 
   localhost, lookups can act differently especially something like pipe
      - Should delegate_to: localhost automatically redirect ping to 
      win_ping for Windows, what happens if there is no win_* equivalent module 
      or specific options aren't supported
      - This leads into playbooks developed on Windows as a controller 
      aren't compatible with Linux as a controller and vice versa
      - The basic.py module util wrapper imports a few Python modules like 
   'grp', 'fcntl' and probably others. Without these common utilities used by 
   modules will not work and requires either workaround or more caveats to 
   apply to a Windows host
      - This would need to be solved and tested before you can start 
      running Python modules on Windows
      - Python is riddled with lots of modules only work on X platform or 
      specific features of this module won't work. This isn't Python's fault 
but 
      just due to the differences between Windows and POSIX compliant systems
      - We don't test Ansible as a controller on Windows
      - We could fix things as we go but without testing in CI these things 
      will inevitably break leading to anger from people who use it making no 
one 
      happy
      

This is confusing because there's nothing explicitly calling out that 
> Windows shouldn't be supported
>

The link that sivel has posted explicitly states that Windows is not 
supported for the control node.

As one of the Windows devs it would be fantastic if we could ever get 
Ansible as a controller working on Windows but the practical realities is 
that this won't happen anytime soon. With the introduction of WSL and WSL2 
on Windows 10 there is even less of a reason to push for this as Ansible 
works perfectly fine under those hosts and it allows you to run it on a 
Windows host like you are asking.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/c939d235-3a0f-4539-9b14-6dae83a7cf0c%40googlegroups.com.

Reply via email to