Skip to content

Draft: Remove "gitlab-ctl consul" command

What does this MR do?

Remove gitlab-ctl consul command.

In order to keep gitlab-ctl user-friendly, I recommend removing this command because this command is near unusable:

  1. No help information
    gitlab-ctl consul --help is an invalid command. Users can only understand this command by looking at the source code (and then find a few worse things below)

  2. The only sub-command that works is kv, which still has unreasonable user experience
    Users cannot directly enter gitlab-ctl consul kv get <key>, but can only enter gitlab-ctl consul kv get first, then press Enter, and then enter <key>.
    This counter-intuitive logic comes from this code:

    consul = ConsulHandler.new(ARGV, $stdin.gets)  # yes that's it: $stdin.gets

    There is no help message to illustrate it. Our customer complained: Why does the terminal get stuck after I type a command...

  3. Another command that seems to be supported is gitlab-ctl consul encrypt keygen, but in fact is not available at all
    This is a code bug: Encrypt#keygen cannot accept parameters, but the caller of the code always passes it parameters.

Alternative tool

Users can directly use the perfect /opt/gitlab/embedded/bin/consul command to achieve the required functions without gitlab-ctl consul. In fact, as far as we know, users do.

Related issues

Exception with "gitlab-ctl consul" (Discussed problems with this command)

Checklist

See Definition of done.

For anything in this list which will not be completed, please provide a reason in the MR discussion

Required

  • Merge Request Title, and Description are up to date, accurate, and descriptive
  • MR targeting the appropriate branch
  • MR has a green pipeline on GitLab.com
  • Pipeline is green on dev.gitlab.org if the change is touching anything besides documentation or internal cookbooks
  • trigger-package has a green pipeline running against latest commit

Expected (please provide an explanation if not completing)

  • Test plan indicating conditions for success has been posted and passes
  • Documentation created/updated
  • Tests added
  • Integration tests added to GitLab QA
  • Equivalent MR/issue for the GitLab Chart opened
Edited by Zhiyuan Lu

Merge request reports