Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/danger
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-10-19 21:07:43 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-10-19 21:07:43 +0300
commit1e1012d3d28c426637eecc0909c415fe2c8b7c3a (patch)
treed230780752bb3b98cf4f3ede1c6f8e98c9a238c7 /danger
parent3c55affa6684311ca73bc4e3d3bfb17b7541f63b (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'danger')
-rw-r--r--danger/gitaly/Dangerfile29
-rw-r--r--danger/rubocop/Dangerfile5
2 files changed, 25 insertions, 9 deletions
diff --git a/danger/gitaly/Dangerfile b/danger/gitaly/Dangerfile
index d7ff8d6446a..228ed3fc192 100644
--- a/danger/gitaly/Dangerfile
+++ b/danger/gitaly/Dangerfile
@@ -1,17 +1,28 @@
# frozen_string_literal: true
GITALY_COORDINATION_MESSAGE = <<~MSG
-This merge request requires coordination with gitaly deployments.
-Before merging this merge request we should verify that gitaly
-running in production already implements the new gRPC interface
-included here.
+## Changing Gitaly version
-Failing to do so will introduce a [non backward compatible
-change](https://docs.gitlab.com/ee/development/multi_version_compatibility.html)
-during canary depoyment that can cause an incident.
+This merge request requires coordination with Gitaly deployments. You must assert why this change is safe.
-1. Identify the gitaly MR introducing the new interface
-1. Verify that the environment widget contains a `gprd` deployment
+If these two assertions can be made, then this change is safe:
+
+1. No Gitaly definitions that have been removed in the version bump are in use on the Rails side.
+1. No Gitaly definitions that are not yet part of a released version become used without a feature flag.
+
+In general, we can ignore the first assertion because the specs will fail as needed. If a GitLab Rails spec
+exercises a definition that is removed in the new Gitaly version, then that
+spec will fail.
+
+You must confirm the second assertion. Failing to do so will introduce a [non
+backward compatible change](https://docs.gitlab.com/ee/development/multi_version_compatibility.html),
+for example during canary deployment of GitLab.com, which can cause an incident.
+This type of problem can also impact customers performing zero-downtime upgrades.
+Some options:
+
+- This change does not cause Rails to use a new definition.
+- This change causes Rails to use a new definition, but only behind a feature flag which is disabled by default.
+ This feature flag must only be removed in a subsequent release.
MSG
changed_lines = helper.changed_lines('Gemfile.lock')
diff --git a/danger/rubocop/Dangerfile b/danger/rubocop/Dangerfile
index a53847199db..41131241691 100644
--- a/danger/rubocop/Dangerfile
+++ b/danger/rubocop/Dangerfile
@@ -1,5 +1,10 @@
# frozen_string_literal: true
+# Danger should not comment when inline disables are added in the following files.
+no_suggestions_for_extensions = %w[.md]
+
helper.all_changed_files.each do |filename|
+ next if filename.end_with?(*no_suggestions_for_extensions)
+
rubocop.add_suggestions_for(filename)
end