Here's some more fun stuff...the Jenkins agent is started via SSH.  So, 
using SSH from the jenkins account on the RHEL box (same account that 
jenkins is running under (jenkins):

jenkins@bmc053:~$ ssh [email protected] 'type nohup'
nohup is /bin/nohup
jenkins@bmc053:~$ ssh [email protected] 'echo $0'
bash
jenkins@bmc053:~$ ssh [email protected] 'env $PATH'
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:.: No such 
file or directory
jenkins@bmc053:~$


On Tuesday, September 25, 2018 at 11:48:43 AM UTC-4, Meg Watson wrote:
>
> Hi,
>
> I'm a newbie to pipelines.  I have a Jenkins master running on Linux 
> (RHEL), and I have an agent running (via SSH) on a NonStop/Tandem machine, 
> which looks like UNIX for all intents and purposes.  I can run various jobs 
> on the NonStop agent without issue, build steps with shell commands work 
> fine.  
>
> However,  when I use an "sh ..." command in a pipeline script, it fails 
> with an error about "can't find nohup...".
>
> Any suggestions?  I even went as far as to create a symlink to nohup in 
> the /home/hp/meg/remote_jenkins/workspace/Ermiyas3 directory. No dice.
>
> Here is the pipeline script:
>
> pipeline {
>     agent { node { label 'MEG' } }
>     environment {
>         PATH = 
> '/bin:/usr/coreutils/bin:.:/home/hp/meg/bin:/usr/local/bin:/usr/tandem/java/bin:/usr/local/maven/bin'
>     }
>     stages {
>         stage('Build') {
>             steps {
>                 echo 'Building..'
>                 echo 'env.PATH=' + env.PATH
>                 sh 'ls'
>             }
>         }
>         stage('Test') {
>             steps {
>                 input 'Click to execute TEST'
>                 echo 'Testing..'
>                 sh 'mvn test'
>             }
>         }
>         stage('Deploy') {
>             steps {
>                 input 'Click to execute DEPLOY'
>                 echo 'Deploying....'
>             }
>         }
>     }
> }
>
> Here is the log:
>
> Started by user mwatson <http://bmc053.atc-hp.com:16877/user/mwatson>
> Running in Durability level: MAX_SURVIVABILITY[Pipeline] nodeRunning on 
> TSEK_MEG <http://bmc053.atc-hp.com:16877/computer/TSEK_MEG/> in 
> /home/hp/meg/remote_jenkins/workspace/Ermiyas3[Pipeline] {[Pipeline] 
> withEnv[Pipeline] {[Pipeline] stage[Pipeline] { (Build)[Pipeline] 
> echoBuilding..[Pipeline] 
> echoenv.PATH=/bin:/usr/coreutils/bin:.:/home/hp/meg/bin:/usr/local/bin:/usr/tandem/java/bin:/usr/local/maven/bin[Pipeline]
>  sh[Ermiyas3] Running shell script[Pipeline] }[Pipeline] // stage[Pipeline] 
> stage[Pipeline] { (Test)Stage "Test" skipped due to earlier 
> failure(s)[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { 
> (Deploy)Stage "Deploy" skipped due to earlier failure(s)[Pipeline] 
> }[Pipeline] // stage[Pipeline] }[Pipeline] // withEnv[Pipeline] }[Pipeline] 
> // node[Pipeline] End of Pipelinejava.io.IOException: error=4002, No such 
> file or directory
>       at java.lang.UNIXProcess.forkAndExec(Native Method)
>       at java.lang.UNIXProcess.<init>(UNIXProcess.java:251)
>       at java.lang.ProcessImpl.start(ProcessImpl.java:134)
>       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
> Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to TSEK_MEG
>               at 
> hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1741)
>               at 
> hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
>               at hudson.remoting.Channel.call(Channel.java:955)
>               at hudson.Launcher$RemoteLauncher.launch(Launcher.java:1052)
>               at hudson.Launcher$ProcStarter.start(Launcher.java:449)
>               at 
> org.jenkinsci.plugins.durabletask.BourneShellScript.launchWithCookie(BourneShellScript.java:186)
>               at 
> org.jenkinsci.plugins.durabletask.FileMonitoringTask.launch(FileMonitoringTask.java:71)
>               at 
> org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.start(DurableTaskStep.java:176)
>               at 
> org.jenkinsci.plugins.workflow.cps.DSL.invokeStep(DSL.java:229)
>               at 
> org.jenkinsci.plugins.workflow.cps.DSL.invokeMethod(DSL.java:153)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsScript.invokeMethod(CpsScript.java:122)
>               at sun.reflect.GeneratedMethodAccessor907.invoke(Unknown Source)
>               at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>               at java.lang.reflect.Method.invoke(Method.java:498)
>               at 
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
>               at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
>               at 
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1213)
>               at 
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1022)
>               at 
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:42)
>               at 
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
>               at 
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
>               at 
> org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:157)
>               at 
> org.kohsuke.groovy.sandbox.GroovyInterceptor.onMethodCall(GroovyInterceptor.java:23)
>               at 
> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:133)
>               at 
> org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:155)
>               at 
> org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:159)
>               at 
> org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:129)
>               at 
> com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:17)
>               at 
> com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:57)
>               at 
> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:109)
>               at 
> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:82)
>               at sun.reflect.GeneratedMethodAccessor821.invoke(Unknown Source)
>               at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>               at java.lang.reflect.Method.invoke(Method.java:498)
>               at 
> com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
>               at 
> com.cloudbees.groovy.cps.impl.ConstantBlock.eval(ConstantBlock.java:21)
>               at com.cloudbees.groovy.cps.Next.step(Next.java:83)
>               at 
> com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:174)
>               at 
> com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
>               at 
> org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:122)
>               at 
> org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:261)
>               at 
> com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
>               at 
> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101(SandboxContinuable.java:34)
>               at 
> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.lambda$run0$0(SandboxContinuable.java:59)
>               at 
> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
>               at 
> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:58)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:174)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:332)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232)
>               at 
> org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
>               at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>               at 
> hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:131)
>               at 
> jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
>               at 
> jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
>               at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> Caused: java.io.IOException: Cannot run program "nohup" (in directory 
> "/home/hp/meg/remote_jenkins/workspace/Ermiyas3"): error=4002, No such file 
> or directory
>       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
>       at hudson.Proc$LocalProc.<init>(Proc.java:249)
>       at hudson.Proc$LocalProc.<init>(Proc.java:218)
>       at hudson.Launcher$LocalLauncher.launch(Launcher.java:929)
>       at hudson.Launcher$ProcStarter.start(Launcher.java:449)
>       at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:1299)
>       at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:1259)
>       at hudson.remoting.UserRequest.perform(UserRequest.java:212)
>       at hudson.remoting.UserRequest.perform(UserRequest.java:54)
>       at hudson.remoting.Request$2.run(Request.java:369)
>       at 
> hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>       at java.lang.Thread.run(Thread.java:748)
> Finished: FAILURE
>
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/9e1429f2-de12-459b-8560-362a3032b155%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to