Why only escape the command when it contains space, you could always do it, so 
other characters would also be properly escaped, the if is useless.
if(javaCommand.contains(" ")) {

            javaCommand = "\"" + javaCommand + "\"";
        }


From: jenkinsci-users@googlegroups.com <jenkinsci-users@googlegroups.com> On 
Behalf Of Slide
Sent: August 27, 2020 10:11 AM
To: Jenkins User Mailing List <jenkinsci-users@googlegroups.com>
Subject: Re: Windows slave by ssh

I opened this PR against the ssh-agents-plugin  
https://github.com/jenkinsci/ssh-slaves-plugin/pull/183

On Thu, Aug 27, 2020 at 6:22 AM Jérôme Godbout 
<godbo...@amotus.ca<mailto:godbo...@amotus.ca>> wrote:
This is exactly what I’m using now, not more need for Cygwin for ssh (about 
time Microsoft 😉). Remove any space from the JAVA_HOME path solve the issue, 
but the default install path for Java is inside the Program Files folders, so 
by default it has a space. Not supporting spaces (and probably other character) 
is a bug. It’s not a big issue, but this should be fix. As for the \ or /, this 
should be handle by the  source code and perform the right conversion to node 
native format. In my script I always use *nix / path and convert them to native 
before running the actual command in a shell. I even made some Groovy pipeline 
functions to be platform agnostic as much as possible, the default 
implementation force us to put if(isUnix()) everywhere and it’s annoying. 
Having a function to manipulate the files and folders (create, remove, touch, 
move, rename) should be there by default for CI pipelines and be platform 
agnostic. This is pretty basic stuff.

This is where you realize Qt, C# and Python are way ahead into path 
manipulation.  Do a little as possible into Groovy-ish language and use Ansible 
or Python scripts to do the actual work lifting, made my life so much less 
painful.

From: jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com> 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>> On 
Behalf Of Slide
Sent: August 26, 2020 6:03 PM
To: Jenkins User Mailing List 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>>
Subject: Re: Windows slave by ssh

Well, running on Cygwin is almost like running on a *NIX platform. Not exactly, 
but almost. I am referring to the OpenSSH-Win64 port that is now supported by 
MS.

On Wed, Aug 26, 2020 at 2:50 PM Jason Pyeron 
<jpye...@pdinc.us<mailto:jpye...@pdinc.us>> wrote:
Sorry to be a Johnny come lately – but we have only used SSH launch of windows 
for quite a long time now.

We use Cygwin to do so. You can use any SSH server though.

The most important thing is to ensure Java’s home has no spaces in the path.

The second most important thing is to use mixed pathing constructs. E.g. 
javaPath='C:/programs.x64/Java/jdk-14/bin/java note the forward slashes. It is 
a happy middle ground for bash and java.

From: jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com> 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>> On 
Behalf Of Slide
Sent: Wednesday, August 26, 2020 5:18 PM
To: Jenkins User Mailing List 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>>
Subject: Re: Windows slave by ssh

Historically, Windows agents couldn't really be run using this plugin, it is 
only somewhat recently that Windows had good SSH support. So, there are 
probably some leftovers from the plugin only being used on *NIX systems.

On Wed, Aug 26, 2020 at 2:07 PM Jérôme Godbout 
<godbo...@amotus.ca<mailto:godbo...@amotus.ca>> wrote:
Hi,
Reinstalling Java into a path like c:\Java work just fine now. Wonder why the 
Linux and the Windows master doesn’t show the same behavior on this? Is this 
code part only for *nix platform?

Anyway, thanks for the pointer,
Jerome

From: jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com> 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>> On 
Behalf Of Slide
Sent: August 26, 2020 4:23 PM
To: Jenkins User Mailing List 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>>
Subject: Re: Windows slave by ssh

It looks like this code would need to be updated to handle when there are 
spaces:  
https://github.com/jenkinsci/ssh-slaves-plugin/blob/master/src/main/java/hudson/plugins/sshslaves/JavaVersionChecker.java#L91.
 I have the reverse, a Windows controller and Linux agents. I specify the 
JAVA_HOME environment variable in my agent configuration and that works. Can 
you try that?



On Wed, Aug 26, 2020 at 12:38 PM Jérôme Godbout 
<godbo...@amotus.ca<mailto:godbo...@amotus.ca>> wrote:
Hi,
I’m trying to access a Windows slave with SSH using Linux master Jenkins 
2.235.5.

[08/26/20 15:24:48] [SSH] Checking java version of c:\JenkinsSlave/jdk/bin/java

Couldn't figure out the Java version of c:\JenkinsSlave/jdk/bin/java

The system cannot find the path specified.



[08/26/20 15:24:49] [SSH] Checking java version of C:\Program 
Files\Java\jdk1.8.0_161/bin/java

Couldn't figure out the Java version of C:\Program 
Files\Java\jdk1.8.0_161/bin/java

'C:\Program' is not recognized as an internal or external command,

operable program or batch file.
…

But when I try it from my other Windows Jenkins master 2.251 (my development 
server for testing purpose) it does connect without issue and find the proper 
java into the same path.

[08/21/20 13:48:50] [SSH] Starting agent process: cd "c:\JenkinsSlave" && 
"C:\Program Files\Java\jdk1.8.0_161\bin\java.exe"  -jar remoting.jar -workDir 
c:\JenkinsSlave -jar-cache c:\JenkinsSlave/remoting/jarCache
Aug 21, 2020 1:48:50 PM org.jenkinsci.remoting.engine.WorkDirManager 
initializeWorkDir

Seem like the c:\Program Files\Java… is not escaped properly under Linux 
master. How to fix that? How can I fix this?
Should I escape the env var JAVA_HOME and add quote into it? will it break 
something else?

I’m trying to move the slave execution from my development Windows laptop to 
our official Linux master.

Thanks,
Jerome
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB2315834EB1C8497CD210EEA4CD540%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM<https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB2315834EB1C8497CD210EEA4CD540%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer>.


--
Website: http://earl-of-code.com
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVfLE6ybdjjMgzrpVt9UNCB0MF6CBTndkZWgXApOMnv5xQ%40mail.gmail.com<https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVfLE6ybdjjMgzrpVt9UNCB0MF6CBTndkZWgXApOMnv5xQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB2315DF8810480BC8915BEAF8CD540%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM<https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB2315DF8810480BC8915BEAF8CD540%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer>.


--
Website: http://earl-of-code.com
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVfES%3Dr9KLU37ZFfV7ujuS4gjDmPccEuk%2BNnGmg0GvYZCw%40mail.gmail.com<https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVfES%3Dr9KLU37ZFfV7ujuS4gjDmPccEuk%2BNnGmg0GvYZCw%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/1ef301d67bf2%24e9099630%24bb1cc290%24%40pdinc.us<https://groups.google.com/d/msgid/jenkinsci-users/1ef301d67bf2%24e9099630%24bb1cc290%24%40pdinc.us?utm_medium=email&utm_source=footer>.


--
Website: http://earl-of-code.com
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVcfDgExQ_Dq0fmFqq7cdk51sAuKQPpG97raRfR6JwjifA%40mail.gmail.com<https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVcfDgExQ_Dq0fmFqq7cdk51sAuKQPpG97raRfR6JwjifA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB231531FEA65DBE1914E14D9FCD550%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM<https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB231531FEA65DBE1914E14D9FCD550%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer>.


--
Website: http://earl-of-code.com
--
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
jenkinsci-users+unsubscr...@googlegroups.com<mailto:jenkinsci-users+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVevYf_T0dCfYF6uMBgK0C4vJNV-jHa2DFqsV9wGtuRPmg%40mail.gmail.com<https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVevYf_T0dCfYF6uMBgK0C4vJNV-jHa2DFqsV9wGtuRPmg%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/YTOPR0101MB2315B53FCE5AAAC3B3C93D1ACD550%40YTOPR0101MB2315.CANPRD01.PROD.OUTLOOK.COM.

Reply via email to