diff options
Diffstat (limited to 'danger')
-rw-r--r-- | danger/metadata/Dangerfile | 7 | ||||
-rw-r--r-- | danger/product_analytics/Dangerfile | 48 | ||||
-rw-r--r-- | danger/telemetry/Dangerfile | 38 |
3 files changed, 48 insertions, 45 deletions
diff --git a/danger/metadata/Dangerfile b/danger/metadata/Dangerfile index 1d7f863c201..b98d10d0654 100644 --- a/danger/metadata/Dangerfile +++ b/danger/metadata/Dangerfile @@ -40,10 +40,3 @@ has_pick_into_stable_label = gitlab.mr_labels.find { |label| label.start_with?(' if gitlab.branch_for_base != "master" && !has_pick_into_stable_label && !helper.security_mr? warn "Most of the time, merge requests should target `master`. Otherwise, please set the relevant `Pick into X.Y` label." end - -if gitlab.mr_json['title'].length > 72 - warn 'The title of this merge request is longer than 72 characters and ' \ - 'would violate our commit message rules when using the Squash on Merge ' \ - 'feature. Please consider adjusting the title, or rebase the ' \ - "commits manually and don't use Squash on Merge." -end diff --git a/danger/product_analytics/Dangerfile b/danger/product_analytics/Dangerfile new file mode 100644 index 00000000000..01f2a4fee81 --- /dev/null +++ b/danger/product_analytics/Dangerfile @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +PRODUCT_ANALYTICS_CHANGED_FILES_MESSAGE = <<~MSG +For the following files, a review from the [Data team and Product Analytics team](https://gitlab.com/groups/gitlab-org/growth/product_analytics/engineers/-/group_members?with_inherited_permissions=exclude) is recommended +Please check the ~"product analytics(telemetry)" [guide](https://docs.gitlab.com/ee/development/telemetry/usage_ping.html) and reach out to %<product_analytics_engineers_group>s group for a review. + + +%<changed_files>s + +MSG + +UPDATE_METRICS_DEFINITIONS_MESSAGE = <<~MSG + When adding, changing, or updating metrics, please update the [Event dictionary Usage Ping table](https://docs.gitlab.com/ee/development/telemetry/event_dictionary.html#usage-ping). + +MSG + +PRODUCT_ANALYTICS_ENGINEERS_GROUP = '@gitlab-org/growth/product_analytics/engineers' + +tracking_files = [ + 'lib/gitlab/tracking.rb', + 'spec/lib/gitlab/tracking_spec.rb', + 'app/helpers/tracking_helper.rb', + 'spec/helpers/tracking_helper_spec.rb', + 'app/assets/javascripts/tracking.js', + 'spec/frontend/tracking_spec.js' +] + +usage_data_changed_files = helper.changed_files(/usage_data/) +snowplow_events_changed_files = git.modified_files & tracking_files + +changed_files = (usage_data_changed_files + snowplow_events_changed_files) + +if changed_files.any? + + mention = if helper.draft_mr? + "`#{PRODUCT_ANALYTICS_ENGINEERS_GROUP}`" + else + PRODUCT_ANALYTICS_ENGINEERS_GROUP + end + + warn format(PRODUCT_ANALYTICS_CHANGED_FILES_MESSAGE, changed_files: helper.markdown_list(changed_files), product_analytics_engineers_group: mention) + warn format(UPDATE_METRICS_DEFINITIONS_MESSAGE) unless helper.changed_files(/usage_ping\.md/).any? + + product_analytics_labels = ['product analytics(telemetry)'] + product_analytics_labels << 'product analytics(telemetry)::review pending' unless helper.mr_has_labels?('product analytics(telemetry)::reviewed') + + markdown(helper.prepare_labels_for_mr(product_analytics_labels)) +end diff --git a/danger/telemetry/Dangerfile b/danger/telemetry/Dangerfile deleted file mode 100644 index 6cfc1a005c3..00000000000 --- a/danger/telemetry/Dangerfile +++ /dev/null @@ -1,38 +0,0 @@ -# frozen_string_literal: true - -TELEMETRY_CHANGED_FILES_MESSAGE = <<~MSG -For the following files, a review from the [Data team and Telemetry team](https://gitlab.com/groups/gitlab-org/growth/telemetry/engineers/-/group_members?with_inherited_permissions=exclude) is recommended -Please check the ~telemetry [guide](https://docs.gitlab.com/ee/development/telemetry/usage_ping.html) and reach out to @gitlab-org/growth/telemetry/engineers group for a review. - -%<changed_files>s - -MSG - -UPDATE_METRICS_DEFINITIONS_MESSAGE = <<~MSG - When adding, changing, or updating metrics, please update the [Event dictionary Usage Ping table](https://docs.gitlab.com/ee/development/telemetry/event_dictionary.html#usage-ping). - -MSG - -tracking_files = [ - 'lib/gitlab/tracking.rb', - 'spec/lib/gitlab/tracking_spec.rb', - 'app/helpers/tracking_helper.rb', - 'spec/helpers/tracking_helper_spec.rb', - 'app/assets/javascripts/tracking.js', - 'spec/frontend/tracking_spec.js' -] - -usage_data_changed_files = helper.changed_files(/usage_data/) -snowplow_events_changed_files = git.modified_files & tracking_files - -changed_files = (usage_data_changed_files + snowplow_events_changed_files) - -if changed_files.any? - warn format(TELEMETRY_CHANGED_FILES_MESSAGE, changed_files: helper.markdown_list(changed_files)) - warn format(UPDATE_METRICS_DEFINITIONS_MESSAGE) unless helper.changed_files(/usage_ping\.md/).any? - - telemetry_labels = ['telemetry'] - telemetry_labels << 'telemetry::review pending' unless helper.mr_has_labels?('telemetry::reviewed') - - markdown(helper.prepare_labels_for_mr(telemetry_labels)) -end |