Skip to content

Adding tcsh shell support

Zoltan Vajda requested to merge vajdaz/gitlab-runner:tcsh_support into main

What does this MR do?

This MR adds support for tcsh shell.

Why was this MR needed?

Currently gitlab-runner only supports Bash and Bourne shells. When using an ssh runner with a user who has tcsh as deault shell, the runner does not work. With this MR it does work also in this case.

Are there points in the code the reviewer needs to double check?

  • I am not sure if registering the shell escapers independently from the shells themeslves is a good idea. Maybe the escapers should be implented as part of the writer interface or the shells themselves.
  • A big challenge was to me how to transport the escaper into to the ssh command. I am not sure that my solution is the right one. Maybe you have a better idea.
  • Not sure if the tcsh needs to be installed in eaach of the Docker images.

Does this MR meet the acceptance criteria?

  • [🗸] Documentation created/updated
  • Tests
    • [🗸] Added for this feature
    • [🗸] All builds are passing
  • [🗸] Branch has no merge conflicts with master (if you do - rebase it please)

What are the relevant issue numbers?

I found this relevant one: #1893 (closed)

Edited by 🤖 GitLab Bot 🤖

Merge request reports