Thank you @MarkWaite, I wasn´t aware of that step. And thank you also for the explanation.
El lunes, 10 de febrero de 2020, 14:38:30 (UTC+1), Mark Waite escribió: > > Use the isUnix pipeline step > <https://jenkins.io/doc/pipeline/steps/workflow-basic-steps/#isunix-checks-if-running-on-a-unix-like-node> > > rather than writing your own version of that step. The System.properties > that you are using will execute on the master, not on the agent. When it > executes on the master, it will report the os.name value of the master. > > On Mon, Feb 10, 2020 at 5:10 AM judaondo <[email protected] <javascript:>> > wrote: > >> I have the following pipeline (Jenkinsfile): >> >> >> @Library('mylib@master') >> >> import com.mylib.* >> >> >> pipeline { >> >> agent { label 'WindowsSlaveWS2016' } >> >> stages { >> stage('Demo') { >> steps { >> echo 'a' >> determineOS() >> echo 'b' >> // sh 'echo "[Version 1.0.0]" | tee -a changelog.txt' >> sayHello() >> //getServiceVersion('.', 'changelog.txt', 'myservice') >> // cat service.properties >> // sendEmail('failed', '[email protected] <javascript:>') >> script { >> def utils = new Utils() >> if (utils.isWindows()) { >> echo '<-- Is windwos -->' >> } >> else { >> echo '<-- Is linux -->' >> } >> } >> } >> } >> } >> >> } >> >> >> determineOS() groovy script is a simple script that does the following: >> >> >> #!/usr/bin/env groovy >> >> def call() { >> if (System.properties['os.name'].toLowerCase().contains('windows')) { >> println "it's Windows" >> } else { >> println "it's not Windows" >> } >> } >> >> >> and utils.Windows() does the following: >> >> >> #!/usr/bin/groovy >> >> package com.ciplatforms; >> >> class Utils implements Serializable { >> >> def isWindows() { >> if (System.properties['os.name'].toLowerCase().contains('windows')) { >> println "it's Windows" >> return true >> } else { >> println "it's not Windows" >> return false >> } >> } >> >> } >> >> >> I am running the job in a Windows machine as you can notice in the >> pipeline but the log displays the following: >> >> >> Running on WindowsSlaveWS2016 in >> C:\Jenkins\workspace\test-jon-udaondo-pipeline-shared-library >> [Pipeline] { >> [Pipeline] withEnv >> [Pipeline] { >> [Pipeline] stage >> [Pipeline] { (Demo) >> [Pipeline] echo >> a >> [Pipeline] echo >> it's not Windows >> [Pipeline] echo >> b >> [Pipeline] echo >> Hello, human. >> [Pipeline] script >> [Pipeline] { >> [Pipeline] echo >> <-- Is linux --> >> [Pipeline] } >> [Pipeline] // script >> [Pipeline] } >> [Pipeline] // stage >> [Pipeline] } >> [Pipeline] // withEnv >> [Pipeline] } >> [Pipeline] // node >> [Pipeline] End of Pipeline >> Finished: SUCCESS >> >> >> Any ideas why this is happening? Thank you. >> >> -- >> 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] <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/f35c67c1-0b6e-4f34-85d1-9c0d52d2b3c8%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/f35c67c1-0b6e-4f34-85d1-9c0d52d2b3c8%40googlegroups.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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/2b393ad0-cf29-432f-b721-eedd514f909d%40googlegroups.com.
