Ruby wrapper to allow us to avoid system ruby
Because gitlab-shell is used in a very unique way, we were not able to depend on a ruby installed from a third-party solution like RVM / rbenv or installed as a binary in /opt/bin. This is problematic specifically on source-based installs.
In omnibus, we patch the shebang line to point and use our bundled ruby version, which currently is 2.5.x, while we still need to keep compatibility with versions that are EOL because that's what distros have.
There are two alternatives here. We should either provide as part of the install process in source, a tool to override the shebang (as we do in omnibus) to point to the correct up-to-date ruby version, avoiding system ruby, or make all gitlab-shell related code depends on a wrapper script that would allow the target ruby to be easily changed.
You can check the previous discussion in slack: https://gitlab.slack.com/archives/C3ER3TQBT/p1544713387424900 (internal link)