Rex icon indicating copy to clipboard operation
Rex copied to clipboard

Windows support

Open krimdomu opened this issue 10 years ago • 4 comments

From time to time people ask for Windows support and the goal is to also support it.

To support windows we have (imho) 2 options:

SSH Server on Windows

There are some ssh servers that can be installed on windows. So the easiest way to support windows would be to install such a sshd server on a windows box and write some modules for Rex to support inventory, services, users, packages, ...

Using Windows Remote Management (WinRM)

This is a SOAP Webservice that ships since Windows 2003 (https://msdn.microsoft.com/en-us/library/aa384426(v=vs.85).aspx)

With this we don't need to install 3rd party services on a windows box but it would be more work to add support for this.

krimdomu avatar May 08 '15 08:05 krimdomu

It would also be possible to have both. In the first step the ssh support and the second step WinRM.

krimdomu avatar May 09 '15 09:05 krimdomu

@krimdomu: I also think that as phase 1 we can focus on supporting windows management via SSH, as a lot of code is already there, and it would help/force us to make all the code parts to be truly OS-agnostic.

IMHO, that would be a good thing to have before going on "native" windows support and probably would make the WinRM method a bit easier.

ferki avatar May 09 '15 11:05 ferki

For completeness sake: there is also PsTools to consider for dealing with legacy Windows platforms.

gitjeff2 avatar Sep 11 '20 16:09 gitjeff2

For completeness sake: there is also PsTools to consider for dealing with legacy Windows platforms.

@gitjeff2: thanks for the hint, it's good to know about that!

With Rex, the general approach towards legacy/end-of-life systems is "if upstream itself abandoned a product, we won't actively try to keep it alive either". In practice that's something like "if it wasn't supported, it probably won't be added; if it was supported by Rex, it stays supported until it breaks". This is both to encourage following best practices ("don't use deprecated systems") and to help keeping the maintenance overhead low on a purely volunteer-based project.

For the sake of completeness of available options to all readers: in such cases where a legacy system must be supported, it's possible either to use an older version of Rex, to fork it and patch it for the custom use case, or even to hire someone to do it.

PsTools seems like the exact right tool to check if someone's looking at the topic :+1:

ferki avatar Sep 12 '20 07:09 ferki