Skip to content

Memoize GitLab::Shell's secret token

What does this MR do?

API::Helpers#secret_token was reading the secret file on every invocation. This MR reads the file in the gitlab_shell_secret_token.rb initializer and saves it as a class variable at Gitlab::Shell.secret_token

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

  • I'm not sure if the use of cattr_accessor is the best approach, or if should be moved into the class << self block?
  • Should API::Helpers#secret_token be removed in favor of using Gitlab::Shell.secret_token?

Why was this MR needed?

Performance optimization.

Screenshots (if relevant)

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

https://gitlab.com/gitlab-org/gitlab-ce/issues/22510

Merge request reports