Skip to content

Add rubocop rule to discourage the use of Gitlab instance checks

Doug Stull requested to merge 225101-write-rubocop-com-rule into master

Description of the proposal

Add rubocop rule to discourage the use of Gitlab instance checks

  • prefer data-driven approaches instead see &7374
      #   # bad
      #   if Gitlab.com?
      #     Ci::Runner::FORM_EDITABLE + Ci::Runner::MINUTES_COST_FACTOR_FIELDS
      #   else
      #     Ci::Runner::FORM_EDITABLE
      #   end
      #
      #   # good
      #   if Gitlab::Saas.feature_available?('purchases/additional_minutes')
      #     Ci::Runner::FORM_EDITABLE + Ci::Runner::MINUTES_COST_FACTOR_FIELDS
      #   else
      #     Ci::Runner::FORM_EDITABLE
      #   end

Check-list

  • Make sure this MR enables a static analysis check rule for new usage but ignores current offenses.
  • Mention this proposal in the relevant Slack channels (e.g. #development, #backend, #frontend).
  • The MR doesn't have significant objections, and is getting a majority of 👍 vs 👎 (remember that we don't need to reach a consensus).
  • Create a follow-up issue to fix the current offenses as a separate iteration: #427014
  • Follow the review process as usual.
  • Once approved and merged by a maintainer, mention it again:
    • In the relevant Slack channels (e.g. #development, #backend, #frontend).
    • (Optional depending on the impact of the change) In the Engineering Week in Review.

/cc @gitlab-org/maintainers/rails-backend

Related to #225101 (closed)

Edited by Doug Stull

Merge request reports

Loading