jenkinsci / jenkinsci/ssh2easy-plugin
Remote SFTP Download modifies remoteFile String when using a build parameter
- Dominant language
- Java
- Stars
- 10
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
### Jenkins and plugins versions report
Environment
Jenkins: 2.440.3
OS: Windows Server 2016 - 10.0
Java: 11.0.21 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
---
ant:497.v94e7d9fffa_b_9
antisamy-markup-formatter:162.v0e6ec0fcfcf6
apache-httpcomponents-client-4-api:4.5.14-208.v438351942757
bootstrap5-api:5.3.2-3
bouncycastle-api:2.30.1.77-225.v26ea_c9455fd9
branch-api:2.1144.v1425d1c3d5a_7
build-timeout:1.32
caffeine-api:3.1.8-133.v17b_1ff2e0599
checks-api:2.0.2
cloudbees-folder:6.858.v898218f3609d
command-launcher:107.v773860566e2e
commons-lang3-api:3.13.0-62.v7d18e55f51e2
commons-text-api:1.11.0-95.v22a_d30ee5d36
credentials:1311.vcf0a_900b_37c2
credentials-binding:642.v737c34dea_6c2
dashboard-view:2.495.v07e81500c3f2
database:230.v701f20b_8b_f95
database-sqlserver:1.0
display-url-api:2.200.vb_9327d658781
durable-task:543.v262f6a_803410
echarts-api:5.4.3-2
email-ext:2.104
email-ext-recipients-column:27.vb_9404db_b_018d
emailext-template:1.5
font-awesome-api:6.5.1-1
git:5.2.1
git-client:4.6.0
github:1.37.3.1
github-api:1.318-461.v7a_c09c9fa_d63
github-branch-source:1767.va_7d01ea_c7256
github-issues:1.2.4
github-oauth:597.ve0c3480fcb_d0
github-pr-comment-build:96.v9ff13b69dd66
github-pullrequest:0.6.1
gitlab-api:5.3.0-91.v1f9a_fda_d654f
gitlab-oauth:1.19
gradle:2.9
gson-api:2.10.1-15.v0d99f670e0a_7
instance-identity:185.v303dc7c645f9
ionicons-api:56.v1b_1c8c49374e
jackson2-api:2.16.1-373.ve709c6871598
jakarta-activation-api:2.1.3-1
jakarta-mail-api:2.1.3-1
javax-activation-api:1.2.0-6
javax-mail-api:1.6.2-9
jaxb:2.3.9-1
jdk-tool:73.vddf737284550
jersey2-api:2.41-133.va_03323b_a_1396
jjwt-api:0.11.5-77.v646c772fddb_0
jquery3-api:3.7.1-1
jsch:0.2.16-86.v42e010d9484b_
json-path-api:2.8.0-21.v8b_7dc8b_1037b_
junit:1265.v65b_14fa_f12f0
ldap:711.vb_d1a_491714dc
mailer:472.vf7c289a_4b_420
matrix-auth:3.2.2
matrix-project:822.824.v14451b_c0fd42
mina-sshd-api-common:2.11.0-86.v836f585d47fa_
mina-sshd-api-core:2.11.0-86.v836f585d47fa_
msbuild:1.30
okhttp-api:4.11.0-157.v6852a_a_fa_ec11
pam-auth:1.10
pipeline-build-step:540.vb_e8849e1a_b_d8
pipeline-github-lib:42.v0739460cda_c4
pipeline-graph-analysis:202.va_d268e64deb_3
pipeline-groovy-lib:689.veec561a_dee13
pipeline-input-step:477.v339683a_8d55e
pipeline-milestone-step:111.v449306f708b_7
pipeline-model-api:2.2168.vf921b_4e72c73
pipeline-model-definition:2.2168.vf921b_4e72c73
pipeline-model-extensions:2.2168.vf921b_4e72c73
pipeline-rest-api:2.34
pipeline-stage-step:305.ve96d0205c1c6
pipeline-stage-tags-metadata:2.2168.vf921b_4e72c73
pipeline-stage-view:2.34
plain-credentials:143.v1b_df8b_d3b_e48
plugin-util-api:3.8.0
powershell:2.1
publish-over:0.22
publish-over-ssh:1.25
resource-disposer:0.23
reverse-proxy-auth-plugin:1.7.7
saferestart:0.7
scm-api:683.vb_16722fb_b_80b_
script-security:1313.v7a_6067dc7087
slave-status:56.v1798df8ff586
snakeyaml-api:2.2-111.vc6598e30cc65
sqlplus-script-runner:3.0.0
ssh-credentials:308.ve4497b_ccd8f4
ssh-slaves:2.948.vb_8050d697fec
ssh2easy:1.6
sshd:3.322.v159e91f6a_550
structs:325.vcb_307d2a_2782
thinBackup:1.19
timestamper:1.26
token-macro:400.v35420b_922dcb_
trilead-api:2.142.v748523a_76693
variant:60.v7290fc0eb_b_cd
workflow-aggregator:596.v8c21c963d92d
workflow-api:1283.v99c10937efcb_
workflow-basic-steps:1042.ve7b_140c4a_e0c
workflow-cps:3837.v305192405b_c0
workflow-durable-task-step:1313.vcb_970b_d2a_fb_3
workflow-job:1385.vb_58b_86ea_fff1
workflow-multibranch:770.v1a_d0708dd1f6
workflow-scm-step:415.v434365564324
workflow-step-api:639.v6eca_cd8c04a_a_
workflow-support:865.v43e78cc44e0d
ws-cleanup:0.45
zephyr-for-jira-test-management:1.5
### What Operating System are you using (both controller, and any agents involved in the problem)?
Windows Server 2016
### Reproduction steps
1. Create a Jenkins Freestyle project
2. Add Remote SFTP Download
3. Select Target Server
4. Enter remoteFile: `/data/workorders/${WORK_ORDER}/file.txt`
5. Enter localFolder: `C:\Temp`
6. Enter fileName: `file.txt`
7. Save Configuration
8. Run job
### Expected Results
When I execute this job the first time, SSH2Easy resolves the Jenkins build parameter `${WORK_ORDER}` to the user supplied value and uses it in the string to locate the folder on the remote system. Each time I run the job the `${WORK_ORDER}` should be evaluated and I can look in different folders as needed like the following:
- `/data/workorders/WO1/file.txt`
- `/data/workorders/WO2/file.txt`
- `/data/workorders/WO3/file.txt`
### Actual Results
What actually happens, SSH2Easy resolves the Jenkins build parameter `${WORK_ORDER}` the first time and saves it in the remoteFile input field. Now the remoteFile has this value `/data/workorders/WO123456789/file.txt` and I am not able to use the build parameter as expected.
### Anything else?
Please update the logic to not save the build parameter and leave the string text alone so this plugin can use the build parameters as they are intended to be used.
### Are you interested in contributing a fix?
Maybe
Contributor guide
Assessment
This issue has not been assessed yet.