From c0e765e8ae28da1f6d603adf2902909bb2ac647f Mon Sep 17 00:00:00 2001 From: Kapil Khandelwal Date: Mon, 27 Feb 2023 23:19:45 +0530 Subject: [PATCH] BAEL-3746:- Get the Output of a Shell Command Executed Using Into a Variable in Jenkins Pipeline (#13544) --- .../pipeline-command-substitution-job | 13 +++++++++++++ .../output-job/pipeline-returnstatus-job | 17 +++++++++++++++++ .../output-job/pipeline-returnstdout-job | 13 +++++++++++++ .../output-job/pipeline-returnstdouttrim-job | 13 +++++++++++++ 4 files changed, 56 insertions(+) create mode 100644 jenkins-modules/jenkins-jobs/output-job/pipeline-command-substitution-job create mode 100644 jenkins-modules/jenkins-jobs/output-job/pipeline-returnstatus-job create mode 100644 jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdout-job create mode 100644 jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdouttrim-job diff --git a/jenkins-modules/jenkins-jobs/output-job/pipeline-command-substitution-job b/jenkins-modules/jenkins-jobs/output-job/pipeline-command-substitution-job new file mode 100644 index 0000000000..acaacfa867 --- /dev/null +++ b/jenkins-modules/jenkins-jobs/output-job/pipeline-command-substitution-job @@ -0,0 +1,13 @@ +pipeline { + agent any + stages { + stage('Example') { + steps { + script { + def output = sh(script: "echo \$(ls)", returnStdout: true) + echo "Output: ${output}" + } + } + } + } +} diff --git a/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstatus-job b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstatus-job new file mode 100644 index 0000000000..1b1dc7d315 --- /dev/null +++ b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstatus-job @@ -0,0 +1,17 @@ +pipeline { + agent any + stages { + stage('Example') { + steps { + script { + def status = sh(returnStatus: true, script: 'ls /test') + if (status != 0) { + echo "Error: Command exited with status ${status}" + } else { + echo "Command executed successfully" + } + } + } + } + } +} diff --git a/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdout-job b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdout-job new file mode 100644 index 0000000000..ad00b30d92 --- /dev/null +++ b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdout-job @@ -0,0 +1,13 @@ +pipeline { + agent any + stages { + stage('Example') { + steps { + script { + def output = sh(returnStdout: true, script: 'pwd') + echo "Output: ${output}" + } + } + } + } +} diff --git a/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdouttrim-job b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdouttrim-job new file mode 100644 index 0000000000..d253173934 --- /dev/null +++ b/jenkins-modules/jenkins-jobs/output-job/pipeline-returnstdouttrim-job @@ -0,0 +1,13 @@ +pipeline { + agent any + stages { + stage('Example') { + steps { + script { + def output = sh(returnStdout: true, returnStdoutTrim: true, script: 'echo " hello "') + echo "Output: '${output}'" + } + } + } + } +}