boot2docker / boot2docker-cli

boot2docker management utility
Apache License 2.0
339 stars 95 forks source link

Fix shellinit output for cmd.exe/powershell #356

Closed ahmetb closed 9 years ago

ahmetb commented 9 years ago

Also fixes the issue with Windows paths with backslashes in the bash export statements.

When shellinit/up executed on windows, prints instructions on how to set environment variables correctly for Windows Command Prompt (cmd.exe) and PowerShell. (only the powershell set path statements are printed to stdout; the rest goes to stderr).

We couldn't find a way to figure out if we're running on CMD or PowerShell, that's why printing instructions for both.

Visualized:

Changes in MSYS window (used with "Boot2Docker Start" shortcut link), added single quotes around path.

CMD.exe output for for up (used to print "Docker client does not run on Windows for now"):

Powershell output for up (same as cmd.exe):

Powershell boot2docker shellinit | Invoke-Expression (notice that the PS commands are missing as they were on stdout and got piped to Invoke-Expression):

Signed-off-by: Ahmet Alp Balkan ahmetalpbalkan@gmail.com cc: @tianon @johngossman

tianon commented 9 years ago

A tiny bit hacky, but not unreasonably so. :+1:

LGTM

cc @Moghedrin @gmlewis

gmlewis commented 9 years ago

A couple minor nits, otherwise LGTM.