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
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-04-20 13:00:54 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-04-20 13:00:54 +0300
commit3cccd102ba543e02725d247893729e5c73b38295 (patch)
treef36a04ec38517f5deaaacb5acc7d949688d1e187 /lib/gitlab/tracking.rb
parent205943281328046ef7b4528031b90fbda70c75ac (diff)
Add latest changes from gitlab-org/gitlab@14-10-stable-eev14.10.0-rc42
Diffstat (limited to 'lib/gitlab/tracking.rb')
-rw-r--r--lib/gitlab/tracking.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/gitlab/tracking.rb b/lib/gitlab/tracking.rb
index a58b4beb0df..0e7812d08b8 100644
--- a/lib/gitlab/tracking.rb
+++ b/lib/gitlab/tracking.rb
@@ -15,6 +15,21 @@ module Gitlab
Gitlab::ErrorTracking.track_and_raise_for_dev_exception(error, snowplow_category: category, snowplow_action: action)
end
+ def definition(basename, category: nil, action: nil, label: nil, property: nil, value: nil, context: [], project: nil, user: nil, namespace: nil, **extra) # rubocop:disable Metrics/ParameterLists
+ definition = YAML.load_file(Rails.root.join("config/events/#{basename}.yml"))
+
+ dispatch_from_definition(definition, label: label, property: property, value: value, context: context, project: project, user: user, namespace: namespace, **extra)
+ end
+
+ def dispatch_from_definition(definition, **event_data)
+ definition = definition.with_indifferent_access
+
+ category ||= definition[:category]
+ action ||= definition[:action]
+
+ event(category, action, **event_data)
+ end
+
def options(group)
snowplow.options(group)
end
@@ -39,3 +54,5 @@ module Gitlab
end
end
end
+
+Gitlab::Tracking.prepend_mod_with('Gitlab::Tracking')