Pipeline call of dotnet tool destroys special characters on Runner Version >= 15.10
Summary
We are running self-hosted GitLab and have an issue with our pipeline definitions. Special characters (e.g. Umlaut in developer names) get destroyed when we pass them to other tools.
This then leads to errors in the tool because the user can not be found.
This was working fine with Runner Version 15.6, the error started happening after updating to Version 15.10.
Steps to reproduce
- Have a user with a name with special characters (e.g. "Björn")
- Create a dotnet-tool that takes a GitLab user name as input and writes this name to output.
- Call this tool in a pipeline definition and echo it before calling the tool.
What is the current bug behavior?
Special characters like Umlaut get destroyed when passing them from the GitLab pipeline to a dotnet tool.
What is the expected correct behavior?
Special Characters are preserved.
Relevant logs and/or screenshots
Our pipeline definition looks like this (reduced to relevant parts, basically transmits the branch info to our own management system):
init_branch:
stage: init
script:
- "echo Build_started_by:_$GITLAB_USER_NAME" #Here the Name ist still displayed correctly (see below)
- FX-PipelineHelper initBranch -b $CI_BUILD_REF_NAME --repo $CI_PROJECT_TITLE -u $GITLAB_USER_NAME --targetbranch `"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME`"
The output looks like this:
$ echo Build_started_by:_$GITLAB_USER_NAME
Build_started_by:_Björn
$ FX-PipelineHelper initBranch -b $CI_COMMIT_REF_NAME --repo $CI_PROJECT_TITLE -u $GITLAB_USER_NAME --targetbranch `"$CI_MERGE_REQUEST_TARGET_BRANCH_NAME`"
InitBranch for branch XYZ started by Bj├Ârn
Edited by William Francois