Add rubocop rule to discourage the use of Gitlab instance checks
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