[
https://issues.jenkins-ci.org/browse/JENKINS-13412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Beck reopened JENKINS-13412:
-----------------------------------
It's not just _real_ XML that's a problem here. Values such as `foo>bar` will
also get interpreted as output redirection. Example:
{code}
cmd.exe /c script.bat -Dfoo>bar
{code}
This will redirect {{script.bat -Dfoo}} output to a file named {{bar}}.
The calls in the examples fail, because there's no file named {{fail}} or
{{StatusBuildSelector/}}, but the output issue is still unfixed. While this
requires someone to explicitly enter parameter values such as this (instead of
plugin use), and I don't have a good example, it should still be fixed.
> Gradle plugin fails to quote parameters without whitespace when containing
> input/output redirection symbols, e.g. in XML strings
> --------------------------------------------------------------------------------------------------------------------------------
>
> Key: JENKINS-13412
> URL: https://issues.jenkins-ci.org/browse/JENKINS-13412
> Project: Jenkins
> Issue Type: Bug
> Components: gradle
> Affects Versions: current
> Environment: Windows Server 2008 R2
> Jenkins 1.424.6
> Jenkins Gradle Plugin 1.12
> Reporter: Daniel Beck
> Assignee: gbois
>
> Gradle plugin explicitly passes job parameters to the "cmd.exe /c gradle.bat"
> call.
> If one of these arguments looks like XML, but does not contain whitespace, it
> is not quoted. This leads to problems with input/output redirection symbols
> (less-than, greater-than)
> Example String Parameter value:
> {code}
> <fail>
> {code}
> Results in the following build output:
> {code}
> [workspace] $ cmd.exe /C C:\path\to\gradle.bat -Dfoo=<fail> -i && exit
> %%ERRORLEVEL%%
> The system cannot find the file specified.
> Build step 'Invoke Gradle script' changed build result to FAILURE
> Build step 'Invoke Gradle script' marked build as failure
> Notifying upstream projects of job completion
> {code}
> Real world example:
> Copy artifacts plugin's "Latest successful build" has the value:
> {code}
> <StatusBuildSelector/>
> {code}
> This results in "File not found" errors on Windows Server. Not tested on
> Linux.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira