-
Bug
-
Resolution: Duplicate
-
Minor
-
Jenkins: 2.138.1
BlueOcean plugin: 1.8.2
A clean install on Windows 7 with just a standard set of plugins
Reproed with Chrome on Windows and Firefox on a Linux desktop
When a string is displayed in the BlueOcean UI from an "echo" step, the string "Print Message" is displayed IF the string being echoed contains a substring that matches the contents of any environment variable.
Repro steps:
Create a pipeline with this code:
pipeline { agent any stages { stage('test') { environment { THING = 'foobarbuzz' } steps { echo "blah" echo "foobarbuzz" echo "foobarZZZbuzz" echo "This is a $THING here" } } } }
Run the pipeline via Blue Ocean
Observe that there are four step labels displayed in the Blue Ocean UI. (see attached screenshot) The first and third steps display the strings from "echo" as expected. But, the second and fourth steps display only "Print Message" and don't show the expected string. The user needs to click the step to expand it to see the string. I would expect that all strings from all echo statements should show up in the main Blue Ocean UI and would not require some to be manually expended.
- duplicates
-
JENKINS-47101 Pipeline withCredentials step does not mask step descriptions for variables with the same name as existing system variables
-
- Resolved
-
- is duplicated by
-
JENKINS-60939 Multiple Echo in stage not rendering.
-
- Closed
-
- is related to
-
JENKINS-55612 Add optional label attribute for echo step to improve usability
-
- Open
-
[JENKINS-53649] Strings from the "echo" step are suppressed in BlueOcean UI if they contain values found in an environment variable
Attachment | New: EchoNotShowingSomeStrings.PNG [ 44522 ] | |
Description |
Original:
When a string is displayed in the BlueOcean UI from an "echo" step, the string "Print Message" is displayed IF the string being echoed contains a substring that matches the contents of any environment variable. Repro steps: Create a pipeline with this code: {noformat} pipeline { agent any stages { stage('test') { environment { THING = 'foobarbuzz' } steps { echo "blah" echo "foobarbuzz" echo "foobarZZZbuzz" echo "This is a $THING here" } } } }{noformat} Run the pipeline via BlueOcean Observe that there are four step labels displayed in the BlueOcean UI. The first and third steps display the strings as expected. But, the second and fourth steps display only "Print Message" and don't show the expected string. The user needs to click the step to expand it to see the string. |
New:
When a string is displayed in the BlueOcean UI from an "echo" step, the string "Print Message" is displayed IF the string being echoed contains a substring that matches the contents of any environment variable. Repro steps: Create a pipeline with this code: {noformat} pipeline { agent any stages { stage('test') { environment { THING = 'foobarbuzz' } steps { echo "blah" echo "foobarbuzz" echo "foobarZZZbuzz" echo "This is a $THING here" } } } }{noformat} Run the pipeline via Blue Ocean Observe that there are four step labels displayed in the Blue Ocean UI. (see attached screenshot) The first and third steps display the strings from "echo" as expected. But, the second and fourth steps display only "Print Message" and don't show the expected string. The user needs to click the step to expand it to see the string. I would expect that all strings from all echo statements should show up in the main Blue Ocean UI and would not require some to be manually expended. |
Summary | Original: Strings from the "echo" step are suppressed in BlueOcean UI if they contain values found in ENVIRONMENT | New: Strings from the "echo" step are suppressed in BlueOcean UI if they contain values found in an environment variable |
Attachment | New: print_message_param_string.png [ 47494 ] |
Attachment | New: print_message_param_string.png [ 47495 ] |
This does not happen for me for the step echo "Executing On: $env.NODE_NAME" but I do observe it using echo "branch sync @ $scmVars.P4_CHANGELIST" (scmVars returned from the p4sync step) and echo "$tp_mkspec sync @ $env.P4_CHANGELIST" (tp_mkspec is a groovy var)