Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Windows-specific code to enable building on Windows #1996

Closed
wants to merge 1 commit into from

Conversation

spectrumjade
Copy link
Contributor

These changes are largely factoring out Unix-specific code and substituting code that will work with Windows, enabled by Go's build flag when compiling for Windows. The primary use case is to use tsh natively on Windows.

Also included is a mechanism to interact with ssh-agent when running on Windows, including using named pipes to interact with Microsoft's new native OpenSSH as well as Cygwin's pseudo Unix domain sockets when running Git for Windows.

There are some changes to the vendoring that will have to be incorporated before this will build properly. Specifically, moby/moby/pkg/term is broken for Windows at the moment, and also does not include the required function SetWinsize. This one may need to be forked and corrected. Additionally, Microsoft/go-winio will need to be vendored.

@gravitational-jenkins
Copy link

Can one of the admins verify this patch?

1 similar comment
@gravitational-jenkins
Copy link

Can one of the admins verify this patch?

@klizhentas klizhentas added this to the 2.7.0 "San Antonio" milestone Jun 7, 2018
@klizhentas klizhentas requested a review from russjones June 7, 2018 22:14
@klizhentas
Copy link
Contributor

Here's what we will do: @russjones

  • Let's include it in 2.7.0 - review and provide feedback
  • Let's make sure commands that we know won't work tsh ssh are explicitly disabled on windows (as they don't support term resizes for example)
  • Make sure windows build is clean and passing, there were some problems with moby package being broken on windows

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants